1try: 2 import uarray as array 3except ImportError: 4 try: 5 import array 6 except ImportError: 7 print("SKIP") 8 raise SystemExit 9 10a = array.array('B', [1, 2, 3]) 11print(a, len(a)) 12i = array.array('I', [1, 2, 3]) 13print(i, len(i)) 14print(a[0]) 15print(i[-1]) 16a = array.array('l', [-1]) 17print(len(a), a[0]) 18a1 = array.array('l', [1, 2, 3]) 19a2 = array.array('L', [1, 2, 3]) 20print(a2[1]) 21print(a1 == a2) 22 23# Empty arrays 24print(len(array.array('h'))) 25print(array.array('i')) 26 27# bool operator acting on arrays 28print(bool(array.array('i'))) 29print(bool(array.array('i', [1]))) 30 31# containment, with incorrect type 32print('12' in array.array('B', b'12')) 33print([] in array.array('B', b'12')) 34 35# bad typecode 36try: 37 array.array('X') 38except ValueError: 39 print("ValueError") 40 41# equality (CPython requires both sides are array) 42print(bytes(array.array('b', [0x61, 0x62, 0x63])) == b'abc') 43print(array.array('b', [0x61, 0x62, 0x63]) == b'abc') 44print(array.array('b', [0x61, 0x62, 0x63]) != b'abc') 45print(array.array('b', [0x61, 0x62, 0x63]) == b'xyz') 46print(array.array('b', [0x61, 0x62, 0x63]) != b'xyz') 47print(b'abc' == array.array('b', [0x61, 0x62, 0x63])) 48print(b'abc' != array.array('b', [0x61, 0x62, 0x63])) 49print(b'xyz' == array.array('b', [0x61, 0x62, 0x63])) 50print(b'xyz' != array.array('b', [0x61, 0x62, 0x63])) 51 52class X(array.array): 53 pass 54 55print(bytes(X('b', [0x61, 0x62, 0x63])) == b'abc') 56print(X('b', [0x61, 0x62, 0x63]) == b'abc') 57print(X('b', [0x61, 0x62, 0x63]) != b'abc') 58print(X('b', [0x61, 0x62, 0x63]) == array.array('b', [0x61, 0x62, 0x63])) 59print(X('b', [0x61, 0x62, 0x63]) != array.array('b', [0x61, 0x62, 0x63])) 60