blob: 5481fe178ab8fb6339d21657d2e30e19acd52305 (
plain)
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
|
#!/bin/sh
[ "$1" = python3-pyfuse3 ] || exit 0
python3 - << 'EOF'
import pyfuse3
# Verify key attributes are accessible
assert hasattr(pyfuse3, "Operations")
assert hasattr(pyfuse3, "EntryAttributes")
assert hasattr(pyfuse3, "FUSEError")
assert hasattr(pyfuse3, "ROOT_INODE")
assert pyfuse3.ROOT_INODE == 1
# Verify EntryAttributes can be instantiated
attrs = pyfuse3.EntryAttributes()
assert attrs is not None
# Verify FUSEError can be raised
import errno
try:
raise pyfuse3.FUSEError(errno.ENOENT)
except pyfuse3.FUSEError as e:
assert e.errno == errno.ENOENT
from pyfuse3 import Operations, EntryAttributes, FUSEError, FileInfo, StatvfsData
# Verify key constants
assert isinstance(pyfuse3.ROOT_INODE, int), "ROOT_INODE should be an int"
# Verify exception hierarchy
assert issubclass(FUSEError, Exception)
e = FUSEError(2) # ENOENT
assert e.errno == 2
# Verify EntryAttributes can be instantiated and fields set
attr = EntryAttributes()
attr.st_ino = 1
attr.st_size = 0
attr.st_mode = 0o755 | 0o040000 # S_IFDIR
assert attr.st_ino == 1
# Verify a minimal Operations subclass can be defined
class MinimalFS(Operations):
pass
fs = MinimalFS()
assert isinstance(fs, Operations)
print("python3-pyfuse3 OK")
EOF
|