summaryrefslogtreecommitdiffstatshomepage
path: root/tests/basics/array_micropython.py
blob: 44dc1d83d8efd3d2abe08ded08f70a2af7cbbb01 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# test MicroPython-specific features of array.array
try:
    import uarray as array
except ImportError:
    try:
        import array
    except ImportError:
        print("SKIP")
        raise SystemExit

# arrays of objects
a = array.array('O')
a.append(1)
print(a[0])

# arrays of pointers
a = array.array('P')
a.append(1)
print(a[0])

# comparison between mismatching binary layouts is not implemented
typecodes = ["b", "h", "i", "l", "q", "P", "O", "S", "f", "d"]
for a in typecodes:
    for b in typecodes:
        if a == b and a not in ["f", "d"]:
            continue
        try:
            array.array(a) == array.array(b)
            print('FAIL')
        except NotImplementedError:
            pass