make[1]: Entering directory '/<<PKGBUILDDIR>>'and not test_gmtoffset_from_tm
make[1]: pyversions: No such file or directory
py3versions: no X-Python3-Version in control file, using supported versions pkgos-dh_auto_install --no-py2 --in-tmp
+ PKGOS_IN_TMP=no
+ echo WARNING: --no-py2 is deprecated and always on.
WARNING: --no-py2 is deprecated and always on.
+ shift
+ PKGOS_IN_TMP=yes
+ shift
+ dpkg-parsechangelog -SSource
+ SRC_PKG_NAME=python-pycdlib
+ + sed s/python-//
echo python-pycdlib
+ PY_MODULE_NAME=pycdlib
+ py3versions -vr
+ PYTHON3S=3.12 3.11
+ [ yes = yes ]
+ TARGET_DIR=tmp
+ pwd
+ python3.12 setup.py install --install-layout=deb --root /<<PKGBUILDDIR>>/debian/tmp
running install /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated.
!!
********************************************************************************
Please avoid running ``setup.py`` directly.
Instead, use pypa/build, pypa/installer or other
standards-based tools.
See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.
********************************************************************************
!!
self.initialize_options()
running build
running build_py
creating build
creating build/lib
creating build/lib/pycdlib
copying pycdlib/utils.py -> build/lib/pycdlib
copying pycdlib/__init__.py -> build/lib/pycdlib
copying pycdlib/rockridge.py -> build/lib/pycdlib
copying pycdlib/backport_functools.py -> build/lib/pycdlib
copying pycdlib/path_table_record.py -> build/lib/pycdlib
copying pycdlib/eltorito.py -> build/lib/pycdlib
copying pycdlib/pycdlibexception.py -> build/lib/pycdlib
copying pycdlib/inode.py -> build/lib/pycdlib
copying pycdlib/dates.py -> build/lib/pycdlib
copying pycdlib/pycdlib.py -> build/lib/pycdlib
copying pycdlib/isohybrid.py -> build/lib/pycdlib
copying pycdlib/udf.py -> build/lib/pycdlib
copying pycdlib/facade.py -> build/lib/pycdlib
copying pycdlib/pycdlibio.py -> build/lib/pycdlib
copying pycdlib/headervd.py -> build/lib/pycdlib
copying pycdlib/dr.py -> build/lib/pycdlib
running build_scripts
creating build/scripts-3.12
copying and adjusting tools/pycdlib-explorer -> build/scripts-3.12
copying and adjusting tools/pycdlib-extract-files -> build/scripts-3.12 copying and adjusting tools/pycdlib-genisoimage -> build/scripts-3.12 changing mode of build/scripts-3.12/pycdlib-explorer from 644 to 755
changing mode of build/scripts-3.12/pycdlib-extract-files from 644 to 755 changing mode of build/scripts-3.12/pycdlib-genisoimage from 644 to 755 running install_lib
creating /<<PKGBUILDDIR>>/debian/tmp
creating /<<PKGBUILDDIR>>/debian/tmp/usr
creating /<<PKGBUILDDIR>>/debian/tmp/usr/lib
creating /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3
creating /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages
creating /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib copying build/lib/pycdlib/utils.py -> /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib
copying build/lib/pycdlib/__init__.py -> /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib
copying build/lib/pycdlib/rockridge.py -> /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib
copying build/lib/pycdlib/backport_functools.py -> /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib
copying build/lib/pycdlib/path_table_record.py -> /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib
copying build/lib/pycdlib/eltorito.py -> /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib
copying build/lib/pycdlib/pycdlibexception.py -> /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib
copying build/lib/pycdlib/inode.py -> /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib
copying build/lib/pycdlib/dates.py -> /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib
copying build/lib/pycdlib/pycdlib.py -> /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib
copying build/lib/pycdlib/isohybrid.py -> /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib
copying build/lib/pycdlib/udf.py -> /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib
copying build/lib/pycdlib/facade.py -> /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib
copying build/lib/pycdlib/pycdlibio.py -> /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib
copying build/lib/pycdlib/headervd.py -> /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib
copying build/lib/pycdlib/dr.py -> /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/utils.py to utils.cpython-312.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/__init__.py to __init__.cpython-312.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/rockridge.py to rockridge.cpython-312.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/backport_functools.py to backport_functools.cpython-312.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/path_table_record.py to path_table_record.cpython-312.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/eltorito.py to eltorito.cpython-312.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/pycdlibexception.py to pycdlibexception.cpython-312.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/inode.py to inode.cpython-312.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/dates.py to dates.cpython-312.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/pycdlib.py to pycdlib.cpython-312.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/isohybrid.py to isohybrid.cpython-312.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/udf.py to udf.cpython-312.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/facade.py to facade.cpython-312.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/pycdlibio.py to pycdlibio.cpython-312.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/headervd.py to headervd.cpython-312.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/dr.py to dr.cpython-312.pyc
running install_data
creating /<<PKGBUILDDIR>>/debian/tmp/usr/share
creating /<<PKGBUILDDIR>>/debian/tmp/usr/share/man
creating /<<PKGBUILDDIR>>/debian/tmp/usr/share/man/man1
copying man/pycdlib-explorer.1 -> /<<PKGBUILDDIR>>/debian/tmp/usr/share/man/man1
copying man/pycdlib-extract-files.1 -> /<<PKGBUILDDIR>>/debian/tmp/usr/share/man/man1
copying man/pycdlib-genisoimage.1 -> /<<PKGBUILDDIR>>/debian/tmp/usr/share/man/man1
running install_egg_info
running egg_info
creating pycdlib.egg-info
writing pycdlib.egg-info/PKG-INFO
writing dependency_links to pycdlib.egg-info/dependency_links.txt
writing top-level names to pycdlib.egg-info/top_level.txt
writing manifest file 'pycdlib.egg-info/SOURCES.txt'
reading manifest file 'pycdlib.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
adding license file 'COPYING'
writing manifest file 'pycdlib.egg-info/SOURCES.txt'
Copying pycdlib.egg-info to /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib-1.12.0.egg-info
Skipping SOURCES.txt
running install_scripts
creating /<<PKGBUILDDIR>>/debian/tmp/usr/bin
copying build/scripts-3.12/pycdlib-genisoimage -> /<<PKGBUILDDIR>>/debian/tmp/usr/bin
copying build/scripts-3.12/pycdlib-extract-files -> /<<PKGBUILDDIR>>/debian/tmp/usr/bin
copying build/scripts-3.12/pycdlib-explorer -> /<<PKGBUILDDIR>>/debian/tmp/usr/bin
changing mode of /<<PKGBUILDDIR>>/debian/tmp/usr/bin/pycdlib-genisoimage to 755
changing mode of /<<PKGBUILDDIR>>/debian/tmp/usr/bin/pycdlib-extract-files to 755
changing mode of /<<PKGBUILDDIR>>/debian/tmp/usr/bin/pycdlib-explorer to 755 + pwd
+ python3.11 setup.py install --install-layout=deb --root /<<PKGBUILDDIR>>/debian/tmp
running install /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated.
!!
********************************************************************************
Please avoid running ``setup.py`` directly.
Instead, use pypa/build, pypa/installer or other
standards-based tools.
See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.
********************************************************************************
!!
self.initialize_options()
running build
running build_py
running build_scripts
creating build/scripts-3.11
copying and adjusting tools/pycdlib-explorer -> build/scripts-3.11
copying and adjusting tools/pycdlib-extract-files -> build/scripts-3.11 copying and adjusting tools/pycdlib-genisoimage -> build/scripts-3.11 changing mode of build/scripts-3.11/pycdlib-explorer from 644 to 755
changing mode of build/scripts-3.11/pycdlib-extract-files from 644 to 755 changing mode of build/scripts-3.11/pycdlib-genisoimage from 644 to 755 running install_lib
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/utils.py to utils.cpython-311.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/__init__.py to __init__.cpython-311.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/rockridge.py to rockridge.cpython-311.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/backport_functools.py to backport_functools.cpython-311.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/path_table_record.py to path_table_record.cpython-311.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/eltorito.py to eltorito.cpython-311.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/pycdlibexception.py to pycdlibexception.cpython-311.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/inode.py to inode.cpython-311.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/dates.py to dates.cpython-311.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/pycdlib.py to pycdlib.cpython-311.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/isohybrid.py to isohybrid.cpython-311.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/udf.py to udf.cpython-311.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/facade.py to facade.cpython-311.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/pycdlibio.py to pycdlibio.cpython-311.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/headervd.py to headervd.cpython-311.pyc
byte-compiling /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib/dr.py to dr.cpython-311.pyc
running install_data
running install_egg_info
running egg_info
writing pycdlib.egg-info/PKG-INFO
writing dependency_links to pycdlib.egg-info/dependency_links.txt
writing top-level names to pycdlib.egg-info/top_level.txt
reading manifest file 'pycdlib.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
adding license file 'COPYING'
writing manifest file 'pycdlib.egg-info/SOURCES.txt'
removing '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib-1.12.0.egg-info' (and everything under it)
Copying pycdlib.egg-info to /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages/pycdlib-1.12.0.egg-info
Skipping SOURCES.txt
running install_scripts
changing mode of /<<PKGBUILDDIR>>/debian/tmp/usr/bin/pycdlib-genisoimage to 755
changing mode of /<<PKGBUILDDIR>>/debian/tmp/usr/bin/pycdlib-extract-files to 755
changing mode of /<<PKGBUILDDIR>>/debian/tmp/usr/bin/pycdlib-explorer to 755 + pwd
+ rm -rf /<<PKGBUILDDIR>>/debian/python*/usr/lib/python*/dist-packages/*.pth + pwd
+ rm -rf /<<PKGBUILDDIR>>/debian/tmp/usr/lib/python*/dist-packages/*.pth
set -e ; set -x ; for pyvers in 3.12 3.11; do \
PATH=$PATH:/<<PKGBUILDDIR>>/debian/tmp/usr/bin PYTHONPATH=/<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages python$pyvers -m pytest tests -k 'not test_volumedescdate_new_nonzero and not test_gmtoffset_from_tm'; \
done
+ PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/<<PKGBUILDDIR>>/debian/tmp/usr/bin PYTHONPATH=/<<PKGBUILDDIR>>/debian/tmp/usr/lib/python3/dist-packages python3.12 -m pytest tests -k not test_volumedescdate_new_nonzero
============================= test session starts ==============================
platform linux -- Python 3.12.2, pytest-7.4.4, pluggy-1.4.0
rootdir: /<<PKGBUILDDIR>>
configfile: pytest.ini
collected 1721 items / 3 deselected / 1718 selected
tests/integration/test_facade.py ....................................... [ 2%]
.................. [ 3%]
tests/integration/test_hybrid.py ....................................... [ 5%]
....................s..............F.................................... [ 9%]
.........s..................... [ 11%]
tests/integration/test_new.py .......................................... [ 14%]
........................................................................ [ 18%]
........................................................................ [ 22%]
........................................................................ [ 26%]
......................................................ssss.............. [ 30%]
........................................................................ [ 34%]
..................................................................s [ 38%]
tests/integration/test_parse.py ........................................ [ 41%]
....sss...FFF................F.......................................... [ 45%]
.....................................s..............F................... [ 49%]
......s................. [ 50%]
tests/tools/test_pycdlib_genisoimage.py .ssss. [ 51%]
tests/unit/test_dates.py ........................ [ 52%]
tests/unit/test_dr.py ......................................... [ 55%]
tests/unit/test_eltorito.py ............................... [ 56%]
tests/unit/test_headervd.py ............................................ [ 59%]
....... [ 59%]
tests/unit/test_inode.py ....... [ 60%]
tests/unit/test_isohybrid.py ........................................... [ 62%]
[ 62%]
tests/unit/test_ptr.py ........ [ 63%]
tests/unit/test_rockridge.py ........................................... [ 65%]
........................................................................ [ 69%]
........................................................................ [ 74%]
..................................................... [ 77%]
tests/unit/test_udf.py ................................................. [ 80%]
........................................................................ [ 84%]
........................................................................ [ 88%]
........................................................................ [ 92%]
........................................................................ [ 96%]
................ [ 97%]
tests/unit/test_utils.py ...................................... [100%]
=================================== FAILURES ===================================
__________________________ test_hybrid_sevendeepdirs ___________________________
tmp_path = PosixPath('/tmp/pytest-of-user42/pytest-31/test_hybrid_sevendeepdirs0')
def test_hybrid_sevendeepdirs(tmp_path):
# First set things up, and generate the ISO with genisoimage.
indir = tmp_path / 'sevendeepdirs'
indir.mkdir()
outfile = str(indir)+'.iso'
numdirs = 8
x = indir
for i in range(1, 1+numdirs):
x = x / ('dir%d' % i)
x.mkdir(parents=True)
subprocess.call(['genisoimage', '-v', '-v', '-iso-level', '1', '-no-pad',
'-rational-rock', '-o', str(outfile), str(indir)])
# Now open up the ISO with pycdlib and check some things out.
iso = pycdlib.PyCdlib()
iso.open(str(outfile))
iso.rm_directory('/DIR1/DIR2/DIR3/DIR4/DIR5/DIR6/DIR7/DIR8', rr_name='dir8')
do_a_test(iso, check_sevendeepdirs)
tests/integration/test_hybrid.py:1722:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests/integration/test_hybrid.py:21: in do_a_test
check_func(iso, len(out.getvalue())) tests/integration/test_common.py:2340: in check_sevendeepdirs
internal_check_root_dir_record(iso.pvd.root_dir_record, num_children=3, data_length=2048, extent_location=23, rr=True, rr_nlinks=3, xa=False, rr_onetwelve=False)
tests/integration/test_common.py:289: in internal_check_root_dir_record
internal_check_dotdot_dir_record(root_dir_record.children[1], rr=rr, rr_nlinks=rr_nlinks, xa=xa, rr_onetwelve=rr_onetwelve)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
dotdot_record = <pycdlib.dr.DirectoryRecord object at 0x7f98a2a99e40>, rr = True
rr_nlinks = 3, xa = False, rr_onetwelve = False
def internal_check_dotdot_dir_record(dotdot_record, rr, rr_nlinks, xa, rr_onetwelve):
# The file identifier for the 'dotdot' directory entry should be the byte 1.
assert(dotdot_record.file_ident == b'\x01')
# The 'dotdot' directory entry should be a directory.
assert(dotdot_record.isdir == True)
# The 'dotdot' directory record length should be exactly 34 with no extensions.
if rr:
if rr_onetwelve:
expected_dr_len = 104
else:
expected_dr_len = 102
else:
expected_dr_len = 34
if xa:
expected_dr_len += 14
assert(dotdot_record.dr_len == expected_dr_len)
# The 'dotdot' directory record is not the root.
assert(dotdot_record.is_root == False)
# The 'dotdot' directory record should have no children.
assert(len(dotdot_record.children) == 0)
assert(dotdot_record.file_flags == 2)
if rr:
assert(dotdot_record.rock_ridge._initialized == True)
assert(dotdot_record.rock_ridge.dr_entries.sp_record == None)
if not rr_onetwelve:
assert(dotdot_record.rock_ridge.dr_entries.rr_record != None)
assert(dotdot_record.rock_ridge.dr_entries.rr_record.rr_flags == 0x81)
assert(dotdot_record.rock_ridge.dr_entries.ce_record == None)
assert(dotdot_record.rock_ridge.dr_entries.px_record != None)
assert(dotdot_record.rock_ridge.dr_entries.px_record.posix_file_mode == 0o040555)
assert(dotdot_record.rock_ridge.dr_entries.px_record.posix_file_links == rr_nlinks)E assert 2 == 3
E + where 2 = <pycdlib.rockridge.RRPXRecord object at 0x7f98a468a7a0>.posix_file_links
E + where <pycdlib.rockridge.RRPXRecord object at 0x7f98a468a7a0> = <pycdlib.rockridge.RockRidgeEntries object at 0x7f98a3c03740>.px_record
E + where <pycdlib.rockridge.RockRidgeEntries object at 0x7f98a3c03740> = <pycdlib.rockridge.RockRidge object at 0x7f98a4694740>.dr_entries
E + where <pycdlib.rockridge.RockRidge object at 0x7f98a4694740> = <pycdlib.dr.DirectoryRecord object at 0x7f98a2a99e40>.rock_ridge
tests/integration/test_common.py:416: AssertionError ----------------------------- Captured stderr call -----------------------------
I: -input-charset not specified, using utf-8 (detected in locale settings) genisoimage 1.1.11 (Linux)
Scanning /tmp/pytest-of-user42/pytest-31/test_hybrid_sevendeepdirs0/sevendeepdirs
Scanning /tmp/pytest-of-user42/pytest-31/test_hybrid_sevendeepdirs0/sevendeepdirs/dir1
Scanning /tmp/pytest-of-user42/pytest-31/test_hybrid_sevendeepdirs0/sevendeepdirs/dir1/dir2
Scanning /tmp/pytest-of-user42/pytest-31/test_hybrid_sevendeepdirs0/sevendeepdirs/dir1/dir2/dir3
Scanning /tmp/pytest-of-user42/pytest-31/test_hybrid_sevendeepdirs0/sevendeepdirs/dir1/dir2/dir3/dir4
Scanning /tmp/pytest-of-user42/pytest-31/test_hybrid_sevendeepdirs0/sevendeepdirs/dir1/dir2/dir3/dir4/dir5
Scanning /tmp/pytest-of-user42/pytest-31/test_hybrid_sevendeepdirs0/sevendeepdirs/dir1/dir2/dir3/dir4/dir5/dir6
Scanning /tmp/pytest-of-user42/pytest-31/test_hybrid_sevendeepdirs0/sevendeepdirs/dir1/dir2/dir3/dir4/dir5/dir6/dir7
Scanning /tmp/pytest-of-user42/pytest-31/test_hybrid_sevendeepdirs0/sevendeepdirs/dir1/dir2/dir3/dir4/dir5/dir6/dir7/dir8
23 474
24 322 rr_moved
25 216 dir8
26 318 dir1
27 318 dir2
28 318 dir3
29 318 dir4
30 318 dir5
31 318 dir6
32 330 dir7
Cache hit for 'dir8/.'
Cache hit for 'dir1/.'
Cache hit for 'dir1/..'
Cache hit for 'dir2/.'
Cache hit for 'dir2/..'
Cache hit for 'dir3/.'
Cache hit for 'dir3/..'
Cache hit for 'dir4/.'
Cache hit for 'dir4/..'
Cache hit for 'dir5/.'
Cache hit for 'dir5/..'
Cache hit for 'dir6/.'
Cache hit for 'dir6/..'
Cache hit for 'dir7/.'
Cache hit for 'dir7/..'
Writing: Initial Padblock Start Block 0
Done with: Initial Padblock Block(s) 16
Writing: Primary Volume Descriptor Start Block 16
Done with: Primary Volume Descriptor Block(s) 1
Writing: End Volume Descriptor Start Block 17
Done with: End Volume Descriptor Block(s) 1
Writing: Version block Start Block 18
Done with: Version block Block(s) 1
Writing: Path table Start Block 19
Done with: Path table Block(s) 4
Writing: Directory tree Start Block 23
Done with: Directory tree Block(s) 10
Writing: Directory tree cleanup Start Block 33
Done with: Directory tree cleanup Block(s) 0
Writing: Extension record Start Block 33
Done with: Extension record Block(s) 1
Writing: The File(s) Start Block 34
Total extents scheduled to be written = 34
Total translation table size: 0
Total rockridge attributes bytes: 2167
Total directory bytes: 18906
Path table size(bytes): 122
Done with: The File(s) Block(s) 0
Max brk space used 43000
34 extents written (0 MB)
____________________________ test_parse_rr_deep_dir ____________________________
tmp_path = PosixPath('/tmp/pytest-of-user42/pytest-31/test_parse_rr_deep_dir0')
def test_parse_rr_deep_dir(tmp_path):
# First set things up, and generate the ISO with genisoimage.
indir = tmp_path / 'rrdeep'
indir.mkdir()
outfile = str(indir)+'.iso'
newdir = indir / 'dir1' / 'dir2' / 'dir3' / 'dir4' / 'dir5' / 'dir6' / 'dir7' / 'dir8'
newdir.mkdir(parents=True)
subprocess.call(['genisoimage', '-v', '-v', '-iso-level', '1', '-no-pad',
'-rational-rock', '-o', str(outfile), str(indir)])
do_a_test(tmp_path, outfile, check_rr_deep_dir)
tests/integration/test_parse.py:780:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests/integration/test_parse.py:21: in do_a_test
check_func(iso, os.stat(str(outfile)).st_size) tests/integration/test_common.py:2257: in check_rr_deep_dir
internal_check_root_dir_record(iso.pvd.root_dir_record, num_children=4, data_length=2048, extent_location=23, rr=True, rr_nlinks=4, xa=False, rr_onetwelve=False)
tests/integration/test_common.py:289: in internal_check_root_dir_record
internal_check_dotdot_dir_record(root_dir_record.children[1], rr=rr, rr_nlinks=rr_nlinks, xa=xa, rr_onetwelve=rr_onetwelve)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
dotdot_record = <pycdlib.dr.DirectoryRecord object at 0x7f98a45f4440>, rr = True
rr_nlinks = 4, xa = False, rr_onetwelve = False
def internal_check_dotdot_dir_record(dotdot_record, rr, rr_nlinks, xa, rr_onetwelve):
# The file identifier for the 'dotdot' directory entry should be the byte 1.
assert(dotdot_record.file_ident == b'\x01')
# The 'dotdot' directory entry should be a directory.
assert(dotdot_record.isdir == True)
# The 'dotdot' directory record length should be exactly 34 with no extensions.
if rr:
if rr_onetwelve:
expected_dr_len = 104
else:
expected_dr_len = 102
else:
expected_dr_len = 34
if xa:
expected_dr_len += 14
assert(dotdot_record.dr_len == expected_dr_len)
# The 'dotdot' directory record is not the root.
assert(dotdot_record.is_root == False)
# The 'dotdot' directory record should have no children.
assert(len(dotdot_record.children) == 0)
assert(dotdot_record.file_flags == 2)
if rr:
assert(dotdot_record.rock_ridge._initialized == True)
assert(dotdot_record.rock_ridge.dr_entries.sp_record == None)
if not rr_onetwelve:
assert(dotdot_record.rock_ridge.dr_entries.rr_record != None)
assert(dotdot_record.rock_ridge.dr_entries.rr_record.rr_flags == 0x81)
assert(dotdot_record.rock_ridge.dr_entries.ce_record == None)
assert(dotdot_record.rock_ridge.dr_entries.px_record != None)
assert(dotdot_record.rock_ridge.dr_entries.px_record.posix_file_mode == 0o040555)
assert(dotdot_record.rock_ridge.dr_entries.px_record.posix_file_links == rr_nlinks)E assert 3 == 4
E + where 3 = <pycdlib.rockridge.RRPXRecord object at 0x7f98a468b3d0>.posix_file_links
E + where <pycdlib.rockridge.RRPXRecord object at 0x7f98a468b3d0> = <pycdlib.rockridge.RockRidgeEntries object at 0x7f98a3c03060>.px_record
E + where <pycdlib.rockridge.RockRidgeEntries object at 0x7f98a3c03060> = <pycdlib.rockridge.RockRidge object at 0x7f98a4603840>.dr_entries
E + where <pycdlib.rockridge.RockRidge object at 0x7f98a4603840> = <pycdlib.dr.DirectoryRecord object at 0x7f98a45f4440>.rock_ridge
tests/integration/test_common.py:416: AssertionError ----------------------------- Captured stderr call -----------------------------
I: -input-charset not specified, using utf-8 (detected in locale settings) genisoimage 1.1.11 (Linux)
Scanning /tmp/pytest-of-user42/pytest-31/test_parse_rr_deep_dir0/rrdeep Scanning /tmp/pytest-of-user42/pytest-31/test_parse_rr_deep_dir0/rrdeep/dir1 Scanning /tmp/pytest-of-user42/pytest-31/test_parse_rr_deep_dir0/rrdeep/dir1/dir2
Scanning /tmp/pytest-of-user42/pytest-31/test_parse_rr_deep_dir0/rrdeep/dir1/dir2/dir3
Scanning /tmp/pytest-of-user42/pytest-31/test_parse_rr_deep_dir0/rrdeep/dir1/dir2/dir3/dir4
Scanning /tmp/pytest-of-user42/pytest-31/test_parse_rr_deep_dir0/rrdeep/dir1/dir2/dir3/dir4/dir5
Scanning /tmp/pytest-of-user42/pytest-31/test_parse_rr_deep_dir0/rrdeep/dir1/dir2/dir3/dir4/dir5/dir6
Scanning /tmp/pytest-of-user42/pytest-31/test_parse_rr_deep_dir0/rrdeep/dir1/dir2/dir3/dir4/dir5/dir6/dir7
Scanning /tmp/pytest-of-user42/pytest-31/test_parse_rr_deep_dir0/rrdeep/dir1/dir2/dir3/dir4/dir5/dir6/dir7/dir8
23 474
24 322 rr_moved
25 216 dir8
26 318 dir1
27 318 dir2
28 318 dir3
29 318 dir4
30 318 dir5
31 318 dir6
32 330 dir7
Cache hit for 'dir8/.'
Cache hit for 'dir1/.'
Cache hit for 'dir1/..'
Cache hit for 'dir2/.'
Cache hit for 'dir2/..'
Cache hit for 'dir3/.'
Cache hit for 'dir3/..'
Cache hit for 'dir4/.'
Cache hit for 'dir4/..'
Cache hit for 'dir5/.'
Cache hit for 'dir5/..'
Cache hit for 'dir6/.'
Cache hit for 'dir6/..'
Cache hit for 'dir7/.'
Cache hit for 'dir7/..'
Writing: Initial Padblock Start Block 0
Done with: Initial Padblock Block(s) 16
Writing: Primary Volume Descriptor Start Block 16
Done with: Primary Volume Descriptor Block(s) 1
Writing: End Volume Descriptor Start Block 17
Done with: End Volume Descriptor Block(s) 1
Writing: Version block Start Block 18
Done with: Version block Block(s) 1
Writing: Path table Start Block 19
Done with: Path table Block(s) 4
Writing: Directory tree Start Block 23
Done with: Directory tree Block(s) 10
Writing: Directory tree cleanup Start Block 33
Done with: Directory tree cleanup Block(s) 0
Writing: Extension record Start Block 33
Done with: Extension record Block(s) 1
Writing: The File(s) Start Block 34
Total extents scheduled to be written = 34
Total translation table size: 0
Total rockridge attributes bytes: 2167
Total directory bytes: 18906
Path table size(bytes): 122
Done with: The File(s) Block(s) 0
Max brk space used 43000
34 extents written (0 MB)
______________________________ test_parse_rr_deep ______________________________
tmp_path = PosixPath('/tmp/pytest-of-user42/pytest-31/test_parse_rr_deep0')
def test_parse_rr_deep(tmp_path):
# First set things up, and generate the ISO with genisoimage.
indir = tmp_path / 'rrdeep'
indir.mkdir()
outfile = str(indir)+'.iso'
newdir = indir / 'dir1' / 'dir2' / 'dir3' / 'dir4' / 'dir5' / 'dir6' / 'dir7' / 'dir8'
newdir.mkdir(parents=True)
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 300 |
Nodes: | 16 (2 / 14) |
Uptime: | 09:57:20 |
Calls: | 6,706 |
Files: | 12,236 |
Messages: | 5,350,838 |