[Debian-med-packaging] Bug#938008: [Help] Please switch to Python 3

Andreas Tille andreas at an3as.eu
Sat Dec 7 21:37:46 GMT 2019


Control: tags -1 help

Hi,

I upgraded python-pbcommand Git[1] to latest upstream commit which is
work in progress to Python3.  Unfortunately I'm facing some remaining
test suite errors:

...
[gw3] [ 98%] PASSED tests/test_validators.py::TestValidators::test_validate_report 
tests/test_validators.py::TestValidators::test_validate_report_fails 
[gw3] [ 99%] PASSED tests/test_validators.py::TestValidators::test_validate_report_fails 
[gw0] [100%] FAILED tests/test_testkit_xunit.py::TestXunitOutput::test_merge_junit_files_cmdline 

=================================== FAILURES ===================================
_______________________ TestMalformedReport.test_bad_01 ________________________
[gw0] linux -- Python 3.8.0 /usr/bin/python3.8

self = <test_models_report.TestMalformedReport object at 0x7ffbcbfa3790>

    def test_bad_01(self):
        r = Report("stuff", uuid=1234)
>       d = r.to_dict()

tests/test_models_report.py:355: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
pbcommand/models/report.py:778: in to_dict
    _d = dict(v=pbcommand.get_version(),
pbcommand/__init__.py:19: in get_version
    return ".".join([str(i) for i in VERSION])
pbcommand/__init__.py:19: in <listcomp>
    return ".".join([str(i) for i in VERSION])
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

.0 = <list_iterator object at 0x7ffbd17d0b80>

>   VERSION = (int(x) for x in __VERSION__.split('.'))
E   ValueError: invalid literal for int() with base 10: 'unknown'

pbcommand/__init__.py:9: ValueError
____________________ TestReportModel.test_from_simple_dict _____________________
[gw2] linux -- Python 3.8.0 /usr/bin/python3.8

self = <test_models_report.TestReportModel object at 0x7fca53480e50>

    def test_from_simple_dict(self):
        r = Report.from_simple_dict("pbcommand_test", {"n_reads": 50},
                                    "pbcommand")
>       json_dict = json.loads(r.to_json())

tests/test_models_report.py:34: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
pbcommand/models/report.py:801: in to_json
    s = _to_json_with_decoder(self.to_dict())
pbcommand/models/report.py:778: in to_dict
    _d = dict(v=pbcommand.get_version(),
pbcommand/__init__.py:19: in get_version
    return ".".join([str(i) for i in VERSION])
pbcommand/__init__.py:19: in <listcomp>
    return ".".join([str(i) for i in VERSION])
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

.0 = <list_iterator object at 0x7fca58becdf0>

>   VERSION = (int(x) for x in __VERSION__.split('.'))
E   ValueError: invalid literal for int() with base 10: 'unknown'

pbcommand/__init__.py:9: ValueError
________________ TestXunitOutput.test_merge_junit_files_cmdline ________________
[gw0] linux -- Python 3.8.0 /usr/bin/python3.8

self = <test_testkit_xunit.TestXunitOutput object at 0x7ffbcbe25d90>

    def test_merge_junit_files_cmdline(self):
        x1, x2 = self._get_junit_files()
        x_merged = tempfile.NamedTemporaryFile(suffix=".xml").name
        args = ["python3", "-m" "pbcommand.testkit.merge_junit_files",
                "-o", x_merged, x1, x2, "--quiet"]
>       assert subprocess.call(args) == 0
E       assert 1 == 0
E         -1

E         +0

tests/test_testkit_xunit.py:106: AssertionError
----------------------------- Captured stderr call -----------------------------
Traceback (most recent call last):
  File "/usr/lib/python3.7/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/usr/lib/python3.7/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/build/python-pbcommand-1.1.1+git20191122.ec024c3/.pybuild/cpython3_3.8_pbcommand/build/pbcommand/testkit/merge_junit_files.py", line 43, in <module>
    sys.exit(main())
  File "/build/python-pbcommand-1.1.1+git20191122.ec024c3/.pybuild/cpython3_3.8_pbcommand/build/pbcommand/testkit/merge_junit_files.py", line 39, in main
    setup_log_func=setup_log)
  File "/build/python-pbcommand-1.1.1+git20191122.ec024c3/.pybuild/cpython3_3.8_pbcommand/build/pbcommand/cli/core.py", line 212, in pacbio_args_runner
    dump_alarm_on_error=dump_alarm_on_error)
  File "/build/python-pbcommand-1.1.1+git20191122.ec024c3/.pybuild/cpython3_3.8_pbcommand/build/pbcommand/cli/core.py", line 160, in _pacbio_main_runner
    alog.info("Using pbcommand v{v}".format(v=pbcommand.get_version()))
  File "/build/python-pbcommand-1.1.1+git20191122.ec024c3/.pybuild/cpython3_3.8_pbcommand/build/pbcommand/__init__.py", line 19, in get_version
    return ".".join([str(i) for i in VERSION])
  File "/build/python-pbcommand-1.1.1+git20191122.ec024c3/.pybuild/cpython3_3.8_pbcommand/build/pbcommand/__init__.py", line 19, in <listcomp>
    return ".".join([str(i) for i in VERSION])
  File "/build/python-pbcommand-1.1.1+git20191122.ec024c3/.pybuild/cpython3_3.8_pbcommand/build/pbcommand/__init__.py", line 9, in <genexpr>
    VERSION = (int(x) for x in __VERSION__.split('.'))
ValueError: invalid literal for int() with base 10: 'unknown'
- generated xml file: /build/python-pbcommand-1.1.1+git20191122.ec024c3/.pybuild/cpython3_3.8_pbcommand/build/nosetests.xml -
----------- coverage: platform linux, python 3.8.0-final-0 -----------
Coverage XML written to file coverage.xml

========================== slowest 20 test durations ===========================
0.51s call     .pybuild/cpython3_3.8_pbcommand/build/tests/test_testkit_xunit.py::TestXunitOutput::test_merge_junit_files_cmdline
0.04s call     .pybuild/cpython3_3.8_pbcommand/build/tests/test_validators.py::TestValidators::test_validate_file_fails
0.01s call     .pybuild/cpython3_3.8_pbcommand/build/tests/test_utils.py::TestLogging::test_get_parsed_args_log_level
0.01s teardown .pybuild/cpython3_3.8_pbcommand/build/tests/test_models_report_plot.py::TestPlot::test_plot_null_image
0.01s call     .pybuild/cpython3_3.8_pbcommand/build/tests/test_testkit_xunit.py::TestXunitOutput::test_merge_junit_files
0.01s call     .pybuild/cpython3_3.8_pbcommand/build/tests/test_models_common.py::TestAlarm::test_pacbio_alarm
0.01s call     .pybuild/cpython3_3.8_pbcommand/build/tests/test_models_report_plotgroup.py::TestPlotGroup::test_to_dict
0.01s setup    .pybuild/cpython3_3.8_pbcommand/build/tests/test_utils.py::TestUtils::test_get_dataset_metadata
0.01s call     .pybuild/cpython3_3.8_pbcommand/build/tests/test_models_report_table.py::TestBasicTable::test_str
0.01s teardown .pybuild/cpython3_3.8_pbcommand/build/tests/test_models_report_table.py::TestEmptyTable::test_columns
0.01s call     .pybuild/cpython3_3.8_pbcommand/build/tests/test_validators.py::TestValidators::test_validate_nonempty_file_fails
0.01s setup    .pybuild/cpython3_3.8_pbcommand/build/tests/test_models_report.py::TestReportSpec::test_report_validation
0.01s call     .pybuild/cpython3_3.8_pbcommand/build/tests/test_validators.py::TestValidators::test_validate_output_dir
0.01s call     .pybuild/cpython3_3.8_pbcommand/build/tests/test_models_common.py::TestDataStore::test_datastore_paths

(0.00 durations hidden.  Use -vv to show these durations.)
=============== 3 failed, 121 passed, 1 skipped in 6.52 seconds ================
Coverage.py warning: No data was collected. (no-data-collected)
E: pybuild pybuild:341: test: plugin distutils failed with: exit code=1: cd /build/python-pbcommand-1.1.1+git20191122.ec024c3/.pybuild/cpython3_3.8_pbcommand/build; python3.8 -m pytest tests


Any hint how this can be fixed?

Kind regards

     Andreas.


[1] https://salsa.debian.org/med-team/python-pbcommand

-- 
http://fam-tille.de



More information about the Debian-med-packaging mailing list