Bug#1042327: taurus-pyqtgraph: FTBFS: dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.11 returned exit code 13

Lucas Nussbaum lucas at debian.org
Wed Jul 26 21:07:30 BST 2023


Source: taurus-pyqtgraph
Version: 0.5.9-2
Severity: serious
Justification: FTBFS
Tags: trixie sid ftbfs
User: lucas at debian.org
Usertags: ftbfs-20230726 ftbfs-trixie

Hi,

During a rebuild of all packages in sid, your package failed to build
on amd64.


Relevant part (hopefully):
>  debian/rules binary
> dh binary --with python3 --buildsystem=pybuild
>    dh_update_autotools_config -O--buildsystem=pybuild
>    dh_autoreconf -O--buildsystem=pybuild
>    dh_auto_configure -O--buildsystem=pybuild
> I: pybuild base:240: python3.11 setup.py config 
> running config
>    dh_auto_build -O--buildsystem=pybuild
> I: pybuild base:240: /usr/bin/python3 setup.py build 
> running build
> running build_py
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph
> copying taurus_pyqtgraph/util.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph
> copying taurus_pyqtgraph/taurusmodelchoosertool.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph
> copying taurus_pyqtgraph/taurusimageitem.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph
> copying taurus_pyqtgraph/buffersizetool.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph
> copying taurus_pyqtgraph/autopantool.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph
> copying taurus_pyqtgraph/taurustrendset.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph
> copying taurus_pyqtgraph/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph
> copying taurus_pyqtgraph/cli.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph
> copying taurus_pyqtgraph/curvespropertiestool.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph
> copying taurus_pyqtgraph/dateaxisitem.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph
> copying taurus_pyqtgraph/curvesmodel.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph
> copying taurus_pyqtgraph/forcedreadtool.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph
> copying taurus_pyqtgraph/trend.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph
> copying taurus_pyqtgraph/plot.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph
> copying taurus_pyqtgraph/curveproperties.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph
> copying taurus_pyqtgraph/y2axis.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph
> copying taurus_pyqtgraph/legendtool.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph
> copying taurus_pyqtgraph/taurusplotdataitem.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph
> copying taurus_pyqtgraph/datainspectortool.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph/examples
> copying taurus_pyqtgraph/examples/axislabels.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph/examples
> copying taurus_pyqtgraph/examples/taurustrendset.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph/examples
> copying taurus_pyqtgraph/examples/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph/examples
> copying taurus_pyqtgraph/examples/legendExample.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph/examples
> copying taurus_pyqtgraph/examples/y2axis.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph/examples
> copying taurus_pyqtgraph/examples/taurusplotdataitem.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph/examples
> running egg_info
> creating taurus_pyqtgraph.egg-info
> writing taurus_pyqtgraph.egg-info/PKG-INFO
> writing dependency_links to taurus_pyqtgraph.egg-info/dependency_links.txt
> writing entry points to taurus_pyqtgraph.egg-info/entry_points.txt
> writing requirements to taurus_pyqtgraph.egg-info/requires.txt
> writing top-level names to taurus_pyqtgraph.egg-info/top_level.txt
> writing manifest file 'taurus_pyqtgraph.egg-info/SOURCES.txt'
> reading manifest file 'taurus_pyqtgraph.egg-info/SOURCES.txt'
> reading manifest template 'MANIFEST.in'
> warning: no previously-included files matching '__pycache__' found under directory '*'
> warning: no previously-included files matching '*.py[co]' found under directory '*'
> warning: no files found matching '*.jpg' under directory 'docs'
> warning: no files found matching '*.png' under directory 'docs'
> warning: no files found matching '*.gif' under directory 'docs'
> adding license file 'LICENSE.txt'
> writing manifest file 'taurus_pyqtgraph.egg-info/SOURCES.txt'
> /usr/lib/python3/dist-packages/setuptools/command/build_py.py:201: _Warning: Package 'taurus_pyqtgraph.ui' is absent from the `packages` configuration.
> !!
> 
>         ********************************************************************************
>         ############################
>         # Package would be ignored #
>         ############################
>         Python recognizes 'taurus_pyqtgraph.ui' as an importable package[^1],
>         but it is absent from setuptools' `packages` configuration.
> 
>         This leads to an ambiguous overall configuration. If you want to distribute this
>         package, please make sure that 'taurus_pyqtgraph.ui' is explicitly added
>         to the `packages` configuration field.
> 
>         Alternatively, you can also rely on setuptools' discovery methods
>         (for example by using `find_namespace_packages(...)`/`find_namespace:`
>         instead of `find_packages(...)`/`find:`).
> 
>         You can read more about "package discovery" on setuptools documentation page:
> 
>         - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html
> 
>         If you don't want 'taurus_pyqtgraph.ui' to be distributed and are
>         already explicitly excluding 'taurus_pyqtgraph.ui' via
>         `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`,
>         you can try to use `exclude_package_data`, or `include-package-data=False` in
>         combination with a more fine grained `package-data` configuration.
> 
>         You can read more about "package data files" on setuptools documentation page:
> 
>         - https://setuptools.pypa.io/en/latest/userguide/datafiles.html
> 
> 
>         [^1]: For Python, any directory (with suitable naming) can be imported,
>               even if it does not contain any `.py` files.
>               On the other hand, currently there is no concept of package data
>               directory, all directories are treated like packages.
>         ********************************************************************************
> 
> !!
>   check.warn(importable)
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph/ui
> copying taurus_pyqtgraph/ui/CurvesAppearanceChooser.ui -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph/ui
> copying taurus_pyqtgraph/ui/TaurusItemConfDlg.ui -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build/taurus_pyqtgraph/ui
>    dh_auto_test -O--buildsystem=pybuild
> I: pybuild base:240: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build; python3.11 -m pytest tests
> ============================= test session starts ==============================
> platform linux -- Python 3.11.4, pytest-7.4.0, pluggy-1.2.0
> PyQt5 5.15.9 -- Qt runtime 5.15.10 -- Qt compiled 5.15.10
> rootdir: /<<PKGBUILDDIR>>
> configfile: pytest.ini
> plugins: xvfb-2.0.0, qt-4.2.0+repack
> collected 42 items
> 
> tests/test_curveproperties.py ..                                         [  4%]
> tests/test_dateaxisitem.py FFFFFFFFFFFFFFFFF                             [ 45%]
> tests/test_plot.py FFFFFFFFF                                             [ 66%]
> tests/test_taurus_pyqtgraph.py ..                                        [ 71%]
> tests/test_trend.py FFFFF                                                [ 83%]
> tests/test_util.py ......                                                [ 97%]
> tests/test_y2axis.py F                                                   [100%]
> 
> =================================== FAILURES ===================================
> ____________________ test_tickValues[val_range0-expected0] _____________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902aa16ed0>
> val_range = ['2020-01-01T00:01:00.100', '2020-01-01T00:01:00.500']
> expected = ['2020-01-01T00:01:00.200', '2020-01-01T00:01:00.400']
> 
>     @pytest.mark.parametrize(
>         "val_range,expected",
>         [
>             (
>                 ["2020-01-01T00:01:00.100", "2020-01-01T00:01:00.500"],
>                 ["2020-01-01T00:01:00.200", "2020-01-01T00:01:00.400"],
>             ),
>             (
>                 ["2020-01-01T00:00:04.900", "2020-01-01T00:00:07.900"],  # d=1s
>                 [
>                     "2020-01-01T00:00:05",
>                     "2020-01-01T00:00:06",
>                     "2020-01-01T00:00:07",
>                 ],
>             ),
>             (
>                 ["2020-01-01T00:00:04", "2020-01-01T00:00:37"],  # d=10s
>                 [
>                     "2020-01-01T00:00:10",
>                     "2020-01-01T00:00:20",
>                     "2020-01-01T00:00:30",
>                 ],
>             ),
>             (
>                 ["2020-01-01T00:05:10", "2020-01-01T00:08:50"],  # d=1m
>                 ["2020-01-01T00:06", "2020-01-01T00:07", "2020-01-01T00:08"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2020-01-01T01:15:50"],  # d=10m
>                 ["2020-01-01T00:50", "2020-01-01T01:00", "2020-01-01T01:10"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2020-01-01T03:15:50"],  # d=1h
>                 ["2020-01-01T01:00", "2020-01-01T02:00", "2020-01-01T03:00"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2020-04-01T03:15:50"],  # d=1month
>                 ["2020-02-01", "2020-03-01", "2020-04-01"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2023-04-01T03:15:50"],  # d=1y
>                 ["2021-01-01", "2022-01-01", "2023-01-01"],
>             ),
>         ],
>     )
>     def test_tickValues(qtbot, val_range, expected):
>         """
>         Check that the tickValues reimplementation returns the expected values
>         """
> >       w = tpg.TaurusTrend()
> 
> tests/test_dateaxisitem.py:73: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> taurus_pyqtgraph/trend.py:125: in __init__
>     self._y2.attachToPlotItem(plot_item)
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902aa38e50>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> ____________________ test_tickValues[val_range1-expected1] _____________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a898310>
> val_range = ['2020-01-01T00:00:04.900', '2020-01-01T00:00:07.900']
> expected = ['2020-01-01T00:00:05', '2020-01-01T00:00:06', '2020-01-01T00:00:07']
> 
>     @pytest.mark.parametrize(
>         "val_range,expected",
>         [
>             (
>                 ["2020-01-01T00:01:00.100", "2020-01-01T00:01:00.500"],
>                 ["2020-01-01T00:01:00.200", "2020-01-01T00:01:00.400"],
>             ),
>             (
>                 ["2020-01-01T00:00:04.900", "2020-01-01T00:00:07.900"],  # d=1s
>                 [
>                     "2020-01-01T00:00:05",
>                     "2020-01-01T00:00:06",
>                     "2020-01-01T00:00:07",
>                 ],
>             ),
>             (
>                 ["2020-01-01T00:00:04", "2020-01-01T00:00:37"],  # d=10s
>                 [
>                     "2020-01-01T00:00:10",
>                     "2020-01-01T00:00:20",
>                     "2020-01-01T00:00:30",
>                 ],
>             ),
>             (
>                 ["2020-01-01T00:05:10", "2020-01-01T00:08:50"],  # d=1m
>                 ["2020-01-01T00:06", "2020-01-01T00:07", "2020-01-01T00:08"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2020-01-01T01:15:50"],  # d=10m
>                 ["2020-01-01T00:50", "2020-01-01T01:00", "2020-01-01T01:10"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2020-01-01T03:15:50"],  # d=1h
>                 ["2020-01-01T01:00", "2020-01-01T02:00", "2020-01-01T03:00"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2020-04-01T03:15:50"],  # d=1month
>                 ["2020-02-01", "2020-03-01", "2020-04-01"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2023-04-01T03:15:50"],  # d=1y
>                 ["2021-01-01", "2022-01-01", "2023-01-01"],
>             ),
>         ],
>     )
>     def test_tickValues(qtbot, val_range, expected):
>         """
>         Check that the tickValues reimplementation returns the expected values
>         """
> >       w = tpg.TaurusTrend()
> 
> tests/test_dateaxisitem.py:73: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> taurus_pyqtgraph/trend.py:125: in __init__
>     self._y2.attachToPlotItem(plot_item)
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902aa38af0>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> ____________________ test_tickValues[val_range2-expected2] _____________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a6fce50>
> val_range = ['2020-01-01T00:00:04', '2020-01-01T00:00:37']
> expected = ['2020-01-01T00:00:10', '2020-01-01T00:00:20', '2020-01-01T00:00:30']
> 
>     @pytest.mark.parametrize(
>         "val_range,expected",
>         [
>             (
>                 ["2020-01-01T00:01:00.100", "2020-01-01T00:01:00.500"],
>                 ["2020-01-01T00:01:00.200", "2020-01-01T00:01:00.400"],
>             ),
>             (
>                 ["2020-01-01T00:00:04.900", "2020-01-01T00:00:07.900"],  # d=1s
>                 [
>                     "2020-01-01T00:00:05",
>                     "2020-01-01T00:00:06",
>                     "2020-01-01T00:00:07",
>                 ],
>             ),
>             (
>                 ["2020-01-01T00:00:04", "2020-01-01T00:00:37"],  # d=10s
>                 [
>                     "2020-01-01T00:00:10",
>                     "2020-01-01T00:00:20",
>                     "2020-01-01T00:00:30",
>                 ],
>             ),
>             (
>                 ["2020-01-01T00:05:10", "2020-01-01T00:08:50"],  # d=1m
>                 ["2020-01-01T00:06", "2020-01-01T00:07", "2020-01-01T00:08"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2020-01-01T01:15:50"],  # d=10m
>                 ["2020-01-01T00:50", "2020-01-01T01:00", "2020-01-01T01:10"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2020-01-01T03:15:50"],  # d=1h
>                 ["2020-01-01T01:00", "2020-01-01T02:00", "2020-01-01T03:00"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2020-04-01T03:15:50"],  # d=1month
>                 ["2020-02-01", "2020-03-01", "2020-04-01"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2023-04-01T03:15:50"],  # d=1y
>                 ["2021-01-01", "2022-01-01", "2023-01-01"],
>             ),
>         ],
>     )
>     def test_tickValues(qtbot, val_range, expected):
>         """
>         Check that the tickValues reimplementation returns the expected values
>         """
> >       w = tpg.TaurusTrend()
> 
> tests/test_dateaxisitem.py:73: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> taurus_pyqtgraph/trend.py:125: in __init__
>     self._y2.attachToPlotItem(plot_item)
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902a8be7a0>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> ____________________ test_tickValues[val_range3-expected3] _____________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a479110>
> val_range = ['2020-01-01T00:05:10', '2020-01-01T00:08:50']
> expected = ['2020-01-01T00:06', '2020-01-01T00:07', '2020-01-01T00:08']
> 
>     @pytest.mark.parametrize(
>         "val_range,expected",
>         [
>             (
>                 ["2020-01-01T00:01:00.100", "2020-01-01T00:01:00.500"],
>                 ["2020-01-01T00:01:00.200", "2020-01-01T00:01:00.400"],
>             ),
>             (
>                 ["2020-01-01T00:00:04.900", "2020-01-01T00:00:07.900"],  # d=1s
>                 [
>                     "2020-01-01T00:00:05",
>                     "2020-01-01T00:00:06",
>                     "2020-01-01T00:00:07",
>                 ],
>             ),
>             (
>                 ["2020-01-01T00:00:04", "2020-01-01T00:00:37"],  # d=10s
>                 [
>                     "2020-01-01T00:00:10",
>                     "2020-01-01T00:00:20",
>                     "2020-01-01T00:00:30",
>                 ],
>             ),
>             (
>                 ["2020-01-01T00:05:10", "2020-01-01T00:08:50"],  # d=1m
>                 ["2020-01-01T00:06", "2020-01-01T00:07", "2020-01-01T00:08"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2020-01-01T01:15:50"],  # d=10m
>                 ["2020-01-01T00:50", "2020-01-01T01:00", "2020-01-01T01:10"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2020-01-01T03:15:50"],  # d=1h
>                 ["2020-01-01T01:00", "2020-01-01T02:00", "2020-01-01T03:00"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2020-04-01T03:15:50"],  # d=1month
>                 ["2020-02-01", "2020-03-01", "2020-04-01"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2023-04-01T03:15:50"],  # d=1y
>                 ["2021-01-01", "2022-01-01", "2023-01-01"],
>             ),
>         ],
>     )
>     def test_tickValues(qtbot, val_range, expected):
>         """
>         Check that the tickValues reimplementation returns the expected values
>         """
> >       w = tpg.TaurusTrend()
> 
> tests/test_dateaxisitem.py:73: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> taurus_pyqtgraph/trend.py:125: in __init__
>     self._y2.attachToPlotItem(plot_item)
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902a940670>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> ____________________ test_tickValues[val_range4-expected4] _____________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a93ec50>
> val_range = ['2020-01-01T00:45:10', '2020-01-01T01:15:50']
> expected = ['2020-01-01T00:50', '2020-01-01T01:00', '2020-01-01T01:10']
> 
>     @pytest.mark.parametrize(
>         "val_range,expected",
>         [
>             (
>                 ["2020-01-01T00:01:00.100", "2020-01-01T00:01:00.500"],
>                 ["2020-01-01T00:01:00.200", "2020-01-01T00:01:00.400"],
>             ),
>             (
>                 ["2020-01-01T00:00:04.900", "2020-01-01T00:00:07.900"],  # d=1s
>                 [
>                     "2020-01-01T00:00:05",
>                     "2020-01-01T00:00:06",
>                     "2020-01-01T00:00:07",
>                 ],
>             ),
>             (
>                 ["2020-01-01T00:00:04", "2020-01-01T00:00:37"],  # d=10s
>                 [
>                     "2020-01-01T00:00:10",
>                     "2020-01-01T00:00:20",
>                     "2020-01-01T00:00:30",
>                 ],
>             ),
>             (
>                 ["2020-01-01T00:05:10", "2020-01-01T00:08:50"],  # d=1m
>                 ["2020-01-01T00:06", "2020-01-01T00:07", "2020-01-01T00:08"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2020-01-01T01:15:50"],  # d=10m
>                 ["2020-01-01T00:50", "2020-01-01T01:00", "2020-01-01T01:10"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2020-01-01T03:15:50"],  # d=1h
>                 ["2020-01-01T01:00", "2020-01-01T02:00", "2020-01-01T03:00"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2020-04-01T03:15:50"],  # d=1month
>                 ["2020-02-01", "2020-03-01", "2020-04-01"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2023-04-01T03:15:50"],  # d=1y
>                 ["2021-01-01", "2022-01-01", "2023-01-01"],
>             ),
>         ],
>     )
>     def test_tickValues(qtbot, val_range, expected):
>         """
>         Check that the tickValues reimplementation returns the expected values
>         """
> >       w = tpg.TaurusTrend()
> 
> tests/test_dateaxisitem.py:73: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> taurus_pyqtgraph/trend.py:125: in __init__
>     self._y2.attachToPlotItem(plot_item)
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902a947640>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> ____________________ test_tickValues[val_range5-expected5] _____________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a486c10>
> val_range = ['2020-01-01T00:45:10', '2020-01-01T03:15:50']
> expected = ['2020-01-01T01:00', '2020-01-01T02:00', '2020-01-01T03:00']
> 
>     @pytest.mark.parametrize(
>         "val_range,expected",
>         [
>             (
>                 ["2020-01-01T00:01:00.100", "2020-01-01T00:01:00.500"],
>                 ["2020-01-01T00:01:00.200", "2020-01-01T00:01:00.400"],
>             ),
>             (
>                 ["2020-01-01T00:00:04.900", "2020-01-01T00:00:07.900"],  # d=1s
>                 [
>                     "2020-01-01T00:00:05",
>                     "2020-01-01T00:00:06",
>                     "2020-01-01T00:00:07",
>                 ],
>             ),
>             (
>                 ["2020-01-01T00:00:04", "2020-01-01T00:00:37"],  # d=10s
>                 [
>                     "2020-01-01T00:00:10",
>                     "2020-01-01T00:00:20",
>                     "2020-01-01T00:00:30",
>                 ],
>             ),
>             (
>                 ["2020-01-01T00:05:10", "2020-01-01T00:08:50"],  # d=1m
>                 ["2020-01-01T00:06", "2020-01-01T00:07", "2020-01-01T00:08"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2020-01-01T01:15:50"],  # d=10m
>                 ["2020-01-01T00:50", "2020-01-01T01:00", "2020-01-01T01:10"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2020-01-01T03:15:50"],  # d=1h
>                 ["2020-01-01T01:00", "2020-01-01T02:00", "2020-01-01T03:00"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2020-04-01T03:15:50"],  # d=1month
>                 ["2020-02-01", "2020-03-01", "2020-04-01"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2023-04-01T03:15:50"],  # d=1y
>                 ["2021-01-01", "2022-01-01", "2023-01-01"],
>             ),
>         ],
>     )
>     def test_tickValues(qtbot, val_range, expected):
>         """
>         Check that the tickValues reimplementation returns the expected values
>         """
> >       w = tpg.TaurusTrend()
> 
> tests/test_dateaxisitem.py:73: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> taurus_pyqtgraph/trend.py:125: in __init__
>     self._y2.attachToPlotItem(plot_item)
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902aa3a4d0>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> ____________________ test_tickValues[val_range6-expected6] _____________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a6fced0>
> val_range = ['2020-01-01T00:45:10', '2020-04-01T03:15:50']
> expected = ['2020-02-01', '2020-03-01', '2020-04-01']
> 
>     @pytest.mark.parametrize(
>         "val_range,expected",
>         [
>             (
>                 ["2020-01-01T00:01:00.100", "2020-01-01T00:01:00.500"],
>                 ["2020-01-01T00:01:00.200", "2020-01-01T00:01:00.400"],
>             ),
>             (
>                 ["2020-01-01T00:00:04.900", "2020-01-01T00:00:07.900"],  # d=1s
>                 [
>                     "2020-01-01T00:00:05",
>                     "2020-01-01T00:00:06",
>                     "2020-01-01T00:00:07",
>                 ],
>             ),
>             (
>                 ["2020-01-01T00:00:04", "2020-01-01T00:00:37"],  # d=10s
>                 [
>                     "2020-01-01T00:00:10",
>                     "2020-01-01T00:00:20",
>                     "2020-01-01T00:00:30",
>                 ],
>             ),
>             (
>                 ["2020-01-01T00:05:10", "2020-01-01T00:08:50"],  # d=1m
>                 ["2020-01-01T00:06", "2020-01-01T00:07", "2020-01-01T00:08"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2020-01-01T01:15:50"],  # d=10m
>                 ["2020-01-01T00:50", "2020-01-01T01:00", "2020-01-01T01:10"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2020-01-01T03:15:50"],  # d=1h
>                 ["2020-01-01T01:00", "2020-01-01T02:00", "2020-01-01T03:00"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2020-04-01T03:15:50"],  # d=1month
>                 ["2020-02-01", "2020-03-01", "2020-04-01"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2023-04-01T03:15:50"],  # d=1y
>                 ["2021-01-01", "2022-01-01", "2023-01-01"],
>             ),
>         ],
>     )
>     def test_tickValues(qtbot, val_range, expected):
>         """
>         Check that the tickValues reimplementation returns the expected values
>         """
> >       w = tpg.TaurusTrend()
> 
> tests/test_dateaxisitem.py:73: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> taurus_pyqtgraph/trend.py:125: in __init__
>     self._y2.attachToPlotItem(plot_item)
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902a941900>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> ____________________ test_tickValues[val_range7-expected7] _____________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a8981d0>
> val_range = ['2020-01-01T00:45:10', '2023-04-01T03:15:50']
> expected = ['2021-01-01', '2022-01-01', '2023-01-01']
> 
>     @pytest.mark.parametrize(
>         "val_range,expected",
>         [
>             (
>                 ["2020-01-01T00:01:00.100", "2020-01-01T00:01:00.500"],
>                 ["2020-01-01T00:01:00.200", "2020-01-01T00:01:00.400"],
>             ),
>             (
>                 ["2020-01-01T00:00:04.900", "2020-01-01T00:00:07.900"],  # d=1s
>                 [
>                     "2020-01-01T00:00:05",
>                     "2020-01-01T00:00:06",
>                     "2020-01-01T00:00:07",
>                 ],
>             ),
>             (
>                 ["2020-01-01T00:00:04", "2020-01-01T00:00:37"],  # d=10s
>                 [
>                     "2020-01-01T00:00:10",
>                     "2020-01-01T00:00:20",
>                     "2020-01-01T00:00:30",
>                 ],
>             ),
>             (
>                 ["2020-01-01T00:05:10", "2020-01-01T00:08:50"],  # d=1m
>                 ["2020-01-01T00:06", "2020-01-01T00:07", "2020-01-01T00:08"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2020-01-01T01:15:50"],  # d=10m
>                 ["2020-01-01T00:50", "2020-01-01T01:00", "2020-01-01T01:10"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2020-01-01T03:15:50"],  # d=1h
>                 ["2020-01-01T01:00", "2020-01-01T02:00", "2020-01-01T03:00"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2020-04-01T03:15:50"],  # d=1month
>                 ["2020-02-01", "2020-03-01", "2020-04-01"],
>             ),
>             (
>                 ["2020-01-01T00:45:10", "2023-04-01T03:15:50"],  # d=1y
>                 ["2021-01-01", "2022-01-01", "2023-01-01"],
>             ),
>         ],
>     )
>     def test_tickValues(qtbot, val_range, expected):
>         """
>         Check that the tickValues reimplementation returns the expected values
>         """
> >       w = tpg.TaurusTrend()
> 
> tests/test_dateaxisitem.py:73: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> taurus_pyqtgraph/trend.py:125: in __init__
>     self._y2.attachToPlotItem(plot_item)
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902a92e290>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> ___________________________ test_tickValues_overflow ___________________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a795bd0>
> 
>     def test_tickValues_overflow(qtbot):
>         """
>         Check that the tickValues reimplementation returns the expected values
>         """
> >       w = tpg.TaurusTrend()
> 
> tests/test_dateaxisitem.py:85: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> taurus_pyqtgraph/trend.py:125: in __init__
>     self._y2.attachToPlotItem(plot_item)
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902a88e950>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> _____________________ test_tickStrings[values0-expected0] ______________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a90c8d0>
> values = ['2020-01-01T00:01', '2020-01-01T00:01:00.100']
> expected = ['[+000000ms]', '[+100000ms]']
> 
>     @pytest.mark.parametrize(
>         "values,expected",
>         [
>             (
>                 ["2020-01-01T00:01", "2020-01-01T00:01:00.100"],
>                 ["[+000000ms]", "[+100000ms]"],
>             ),
>             (["2020-01-01", "2020-01-01T00:00:05"], ["00:00:00", "00:00:05"],),
>             (["2020-01-01", "2020-01-01T00:00:30"], ["00:00:00", "00:00:30"],),
>             (["2020-01-01", "2020-01-01T00:05"], ["00:00", "00:05"]),
>             (["2020-01-01", "2023-01-01", "2037-01-01"], ["2020", "2023", "2037"]),
>         ],
>     )
>     def test_tickStrings(qtbot, values, expected):
>         """
>         Check that the tickStrings reimplementation returns the expected values
>         """
> >       _test_tickStrings(qtbot, values, expected)
> 
> tests/test_dateaxisitem.py:124: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> tests/test_dateaxisitem.py:97: in _test_tickStrings
>     w = tpg.TaurusTrend()
> taurus_pyqtgraph/trend.py:125: in __init__
>     self._y2.attachToPlotItem(plot_item)
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902a8a4040>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> _____________________ test_tickStrings[values1-expected1] ______________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a736e10>
> values = ['2020-01-01', '2020-01-01T00:00:05']
> expected = ['00:00:00', '00:00:05']
> 
>     @pytest.mark.parametrize(
>         "values,expected",
>         [
>             (
>                 ["2020-01-01T00:01", "2020-01-01T00:01:00.100"],
>                 ["[+000000ms]", "[+100000ms]"],
>             ),
>             (["2020-01-01", "2020-01-01T00:00:05"], ["00:00:00", "00:00:05"],),
>             (["2020-01-01", "2020-01-01T00:00:30"], ["00:00:00", "00:00:30"],),
>             (["2020-01-01", "2020-01-01T00:05"], ["00:00", "00:05"]),
>             (["2020-01-01", "2023-01-01", "2037-01-01"], ["2020", "2023", "2037"]),
>         ],
>     )
>     def test_tickStrings(qtbot, values, expected):
>         """
>         Check that the tickStrings reimplementation returns the expected values
>         """
> >       _test_tickStrings(qtbot, values, expected)
> 
> tests/test_dateaxisitem.py:124: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> tests/test_dateaxisitem.py:97: in _test_tickStrings
>     w = tpg.TaurusTrend()
> taurus_pyqtgraph/trend.py:125: in __init__
>     self._y2.attachToPlotItem(plot_item)
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902a951e10>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> _____________________ test_tickStrings[values2-expected2] ______________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902aa2a710>
> values = ['2020-01-01', '2020-01-01T00:00:30']
> expected = ['00:00:00', '00:00:30']
> 
>     @pytest.mark.parametrize(
>         "values,expected",
>         [
>             (
>                 ["2020-01-01T00:01", "2020-01-01T00:01:00.100"],
>                 ["[+000000ms]", "[+100000ms]"],
>             ),
>             (["2020-01-01", "2020-01-01T00:00:05"], ["00:00:00", "00:00:05"],),
>             (["2020-01-01", "2020-01-01T00:00:30"], ["00:00:00", "00:00:30"],),
>             (["2020-01-01", "2020-01-01T00:05"], ["00:00", "00:05"]),
>             (["2020-01-01", "2023-01-01", "2037-01-01"], ["2020", "2023", "2037"]),
>         ],
>     )
>     def test_tickStrings(qtbot, values, expected):
>         """
>         Check that the tickStrings reimplementation returns the expected values
>         """
> >       _test_tickStrings(qtbot, values, expected)
> 
> tests/test_dateaxisitem.py:124: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> tests/test_dateaxisitem.py:97: in _test_tickStrings
>     w = tpg.TaurusTrend()
> taurus_pyqtgraph/trend.py:125: in __init__
>     self._y2.attachToPlotItem(plot_item)
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902a8d1f30>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> _____________________ test_tickStrings[values3-expected3] ______________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a90d950>
> values = ['2020-01-01', '2020-01-01T00:05'], expected = ['00:00', '00:05']
> 
>     @pytest.mark.parametrize(
>         "values,expected",
>         [
>             (
>                 ["2020-01-01T00:01", "2020-01-01T00:01:00.100"],
>                 ["[+000000ms]", "[+100000ms]"],
>             ),
>             (["2020-01-01", "2020-01-01T00:00:05"], ["00:00:00", "00:00:05"],),
>             (["2020-01-01", "2020-01-01T00:00:30"], ["00:00:00", "00:00:30"],),
>             (["2020-01-01", "2020-01-01T00:05"], ["00:00", "00:05"]),
>             (["2020-01-01", "2023-01-01", "2037-01-01"], ["2020", "2023", "2037"]),
>         ],
>     )
>     def test_tickStrings(qtbot, values, expected):
>         """
>         Check that the tickStrings reimplementation returns the expected values
>         """
> >       _test_tickStrings(qtbot, values, expected)
> 
> tests/test_dateaxisitem.py:124: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> tests/test_dateaxisitem.py:97: in _test_tickStrings
>     w = tpg.TaurusTrend()
> taurus_pyqtgraph/trend.py:125: in __init__
>     self._y2.attachToPlotItem(plot_item)
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902a7b3e20>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> _____________________ test_tickStrings[values4-expected4] ______________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a491690>
> values = ['2020-01-01', '2023-01-01', '2037-01-01']
> expected = ['2020', '2023', '2037']
> 
>     @pytest.mark.parametrize(
>         "values,expected",
>         [
>             (
>                 ["2020-01-01T00:01", "2020-01-01T00:01:00.100"],
>                 ["[+000000ms]", "[+100000ms]"],
>             ),
>             (["2020-01-01", "2020-01-01T00:00:05"], ["00:00:00", "00:00:05"],),
>             (["2020-01-01", "2020-01-01T00:00:30"], ["00:00:00", "00:00:30"],),
>             (["2020-01-01", "2020-01-01T00:05"], ["00:00", "00:05"]),
>             (["2020-01-01", "2023-01-01", "2037-01-01"], ["2020", "2023", "2037"]),
>         ],
>     )
>     def test_tickStrings(qtbot, values, expected):
>         """
>         Check that the tickStrings reimplementation returns the expected values
>         """
> >       _test_tickStrings(qtbot, values, expected)
> 
> tests/test_dateaxisitem.py:124: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> tests/test_dateaxisitem.py:97: in _test_tickStrings
>     w = tpg.TaurusTrend()
> taurus_pyqtgraph/trend.py:125: in __init__
>     self._y2.attachToPlotItem(plot_item)
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902a769c60>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> _________________ test_tickStrings_english[values0-expected0] __________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a7c6750>
> values = ['2020-01-01', '2020-01-01T05:00']
> expected = ['Jan/01-00h', 'Jan/01-05h']
> 
>     @pytest.mark.skipif(getlocale()[0][:2] != "en", reason="requires en* locale")
>     @pytest.mark.parametrize(
>         "values,expected",
>         [
>             (["2020-01-01", "2020-01-01T05:00"], ["Jan/01-00h", "Jan/01-05h"],),
>             (["2020-01-01", "2020-01-05"], ["Jan/01", "Jan/05"]),
>             (["2020-01-01", "2020-05-01"], ["2020 Jan", "2020 May"]),
>         ],
>     )
>     def test_tickStrings_english(qtbot, values, expected):
>         """
>         Check that the tickStrings reimplementation returns the expected values.
>         Note: it assumes an English locale. Skipped otherwise.
>         """
> >       _test_tickStrings(qtbot, values, expected)
> 
> tests/test_dateaxisitem.py:141: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> tests/test_dateaxisitem.py:97: in _test_tickStrings
>     w = tpg.TaurusTrend()
> taurus_pyqtgraph/trend.py:125: in __init__
>     self._y2.attachToPlotItem(plot_item)
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902a7a5d80>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> _________________ test_tickStrings_english[values1-expected1] __________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a8f8e90>
> values = ['2020-01-01', '2020-01-05'], expected = ['Jan/01', 'Jan/05']
> 
>     @pytest.mark.skipif(getlocale()[0][:2] != "en", reason="requires en* locale")
>     @pytest.mark.parametrize(
>         "values,expected",
>         [
>             (["2020-01-01", "2020-01-01T05:00"], ["Jan/01-00h", "Jan/01-05h"],),
>             (["2020-01-01", "2020-01-05"], ["Jan/01", "Jan/05"]),
>             (["2020-01-01", "2020-05-01"], ["2020 Jan", "2020 May"]),
>         ],
>     )
>     def test_tickStrings_english(qtbot, values, expected):
>         """
>         Check that the tickStrings reimplementation returns the expected values.
>         Note: it assumes an English locale. Skipped otherwise.
>         """
> >       _test_tickStrings(qtbot, values, expected)
> 
> tests/test_dateaxisitem.py:141: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> tests/test_dateaxisitem.py:97: in _test_tickStrings
>     w = tpg.TaurusTrend()
> taurus_pyqtgraph/trend.py:125: in __init__
>     self._y2.attachToPlotItem(plot_item)
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902a787d90>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> _________________ test_tickStrings_english[values2-expected2] __________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a8f5590>
> values = ['2020-01-01', '2020-05-01'], expected = ['2020 Jan', '2020 May']
> 
>     @pytest.mark.skipif(getlocale()[0][:2] != "en", reason="requires en* locale")
>     @pytest.mark.parametrize(
>         "values,expected",
>         [
>             (["2020-01-01", "2020-01-01T05:00"], ["Jan/01-00h", "Jan/01-05h"],),
>             (["2020-01-01", "2020-01-05"], ["Jan/01", "Jan/05"]),
>             (["2020-01-01", "2020-05-01"], ["2020 Jan", "2020 May"]),
>         ],
>     )
>     def test_tickStrings_english(qtbot, values, expected):
>         """
>         Check that the tickStrings reimplementation returns the expected values.
>         Note: it assumes an English locale. Skipped otherwise.
>         """
> >       _test_tickStrings(qtbot, values, expected)
> 
> tests/test_dateaxisitem.py:141: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> tests/test_dateaxisitem.py:97: in _test_tickStrings
>     w = tpg.TaurusTrend()
> taurus_pyqtgraph/trend.py:125: in __init__
>     self._y2.attachToPlotItem(plot_item)
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902a7d5c60>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> ___________________________ test_plot_model_setting ____________________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a734a90>
> 
>     def test_plot_model_setting(qtbot):
>     
> >       w = tpg.TaurusPlot()
> 
> tests/test_plot.py:13: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> taurus_pyqtgraph/plot.py:106: in __init__
>     self._y2.attachToPlotItem(self.getPlotItem())
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902a811e10>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> _______________________ test_plot_model_setting_with_y2 ________________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a69c050>
> 
>     def test_plot_model_setting_with_y2(qtbot):
>     
> >       w = tpg.TaurusPlot()
> 
> tests/test_plot.py:84: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> taurus_pyqtgraph/plot.py:106: in __init__
>     self._y2.attachToPlotItem(self.getPlotItem())
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902a77bf40>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> ____________________________ test_multiple_setModel ____________________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a56e590>
> 
>     def test_multiple_setModel(qtbot):
>         """
>         Check that repeated calls to setModel do not duplicate the items
>         in the plot
>         """
> >       w = tpg.TaurusPlot()
> 
> tests/test_plot.py:186: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> taurus_pyqtgraph/plot.py:106: in __init__
>     self._y2.attachToPlotItem(self.getPlotItem())
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902a812b00>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> __________________________ test_xymodelchooser_config __________________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a714c90>
> 
>     def test_xymodelchooser_config(qtbot):
>     
> >       w1 = tpg.TaurusPlot()
> 
> tests/test_plot.py:197: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> taurus_pyqtgraph/plot.py:106: in __init__
>     self._y2.attachToPlotItem(self.getPlotItem())
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902a79fe20>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> ________________________________ test_y2_config ________________________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a91a790>
> 
>     def test_y2_config(qtbot):
>     
>         # create a plot with 3 curves
> >       w1 = tpg.TaurusPlot()
> 
> tests/test_plot.py:246: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> taurus_pyqtgraph/plot.py:106: in __init__
>     self._y2.attachToPlotItem(self.getPlotItem())
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902a770790>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> _____________________________ test_curveproperties _____________________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a83be90>
> 
>     def test_curveproperties(qtbot):
>     
> >       w = tpg.TaurusPlot()
> 
> tests/test_plot.py:314: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> taurus_pyqtgraph/plot.py:106: in __init__
>     self._y2.attachToPlotItem(self.getPlotItem())
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902a8d2560>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> _________________________ test_curveproperties_config __________________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a8a9490>
> 
>     @pytest.mark.xfail(
>         sys.version_info[:2] == (3, 6),
>         reason="flaky behaviour observed in CI for py 3.6 in this test",
>     )
>     def test_curveproperties_config(qtbot):
> >       w1 = tpg.TaurusPlot()
> 
> tests/test_plot.py:394: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> taurus_pyqtgraph/plot.py:106: in __init__
>     self._y2.attachToPlotItem(self.getPlotItem())
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902a88f640>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> _______________________ test_curveproperties_configfile ________________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a93f3d0>
> tmp_path = PosixPath('/tmp/pytest-of-user42/pytest-0/test_curveproperties_configfil0')
> 
>     def test_curveproperties_configfile(qtbot, tmp_path):
> >       w1 = tpg.TaurusPlot()
> 
> tests/test_plot.py:513: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> taurus_pyqtgraph/plot.py:106: in __init__
>     self._y2.attachToPlotItem(self.getPlotItem())
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902aa391b0>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> _________________________ test_duplicate_curve_titles __________________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a6dd550>
> 
>     def test_duplicate_curve_titles(qtbot):
>         """
>         Check that curves with same title are changed to have unique titles
>         """
> >       w = tpg.TaurusPlot()
> 
> tests/test_plot.py:628: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> taurus_pyqtgraph/plot.py:106: in __init__
>     self._y2.attachToPlotItem(self.getPlotItem())
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902a947010>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> ___________________________ test_trend_model_setting ___________________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a7c5390>
> 
>     def test_trend_model_setting(qtbot):
>     
> >       w = tpg.TaurusTrend()
> 
> tests/test_trend.py:26: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> taurus_pyqtgraph/trend.py:125: in __init__
>     self._y2.attachToPlotItem(plot_item)
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902a7024d0>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> ___________________________ test_modelchooser_config ___________________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a8c3950>
> 
>     def test_modelchooser_config(qtbot):
>     
> >       w1 = tpg.TaurusTrend()
> 
> tests/test_trend.py:247: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> taurus_pyqtgraph/trend.py:125: in __init__
>     self._y2.attachToPlotItem(plot_item)
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902a7c83a0>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> _______________________ test_curveproperties_configfile ________________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a6331d0>
> tmp_path = PosixPath('/tmp/pytest-of-user42/pytest-0/test_curveproperties_configfil1')
> 
>     def test_curveproperties_configfile(qtbot, tmp_path):
> >       w1 = tpg.TaurusTrend()
> 
> tests/test_trend.py:302: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> taurus_pyqtgraph/trend.py:125: in __init__
>     self._y2.attachToPlotItem(plot_item)
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902a7c8dc0>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> ____________________________ test_multiple_setModel ____________________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a89a0d0>
> 
>     def test_multiple_setModel(qtbot):
>         """
>         Check that repeated calls to setModel do not duplicate the items
>         in the plot
>         """
> >       w = tpg.TaurusTrend()
> 
> tests/test_trend.py:465: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> taurus_pyqtgraph/trend.py:125: in __init__
>     self._y2.attachToPlotItem(plot_item)
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902a942830>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> _________________________ test_duplicate_curve_titles __________________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a8c3d90>
> 
>     def test_duplicate_curve_titles(qtbot):
>         """
>         Check that curves with same title are changed to have unique titles
>         """
> >       w = tpg.TaurusTrend()
> 
> tests/test_trend.py:497: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> taurus_pyqtgraph/trend.py:125: in __init__
>     self._y2.attachToPlotItem(plot_item)
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902aa39f30>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> ________________________________ test_y2legend _________________________________
> 
> qtbot = <pytestqt.qtbot.QtBot object at 0x7f902a60c410>
> 
>     def test_y2legend(qtbot):
>         """
>         Check that legend items are not duplicated or lost on changes of Y axis
>         """
> >       w = tpg.TaurusPlot()
> 
> tests/test_y2axis.py:9: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> taurus_pyqtgraph/plot.py:106: in __init__
>     self._y2.attachToPlotItem(self.getPlotItem())
> taurus_pyqtgraph/y2axis.py:116: in attachToPlotItem
>     self._addLogAxisActions()
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = <taurus_pyqtgraph.y2axis.Y2ViewBox object at 0x7f902a8a5d80>
> 
>     def _addLogAxisActions(self):
>         # insert & connect actions Log Scale Actions
>         # X (bottom)
> >       menu = self.plotItem.getViewBox().menu.axes[0]
> E       AttributeError: 'ViewBoxMenu' object has no attribute 'axes'
> 
> taurus_pyqtgraph/y2axis.py:208: AttributeError
> =========================== short test summary info ============================
> FAILED tests/test_dateaxisitem.py::test_tickValues[val_range0-expected0] - At...
> FAILED tests/test_dateaxisitem.py::test_tickValues[val_range1-expected1] - At...
> FAILED tests/test_dateaxisitem.py::test_tickValues[val_range2-expected2] - At...
> FAILED tests/test_dateaxisitem.py::test_tickValues[val_range3-expected3] - At...
> FAILED tests/test_dateaxisitem.py::test_tickValues[val_range4-expected4] - At...
> FAILED tests/test_dateaxisitem.py::test_tickValues[val_range5-expected5] - At...
> FAILED tests/test_dateaxisitem.py::test_tickValues[val_range6-expected6] - At...
> FAILED tests/test_dateaxisitem.py::test_tickValues[val_range7-expected7] - At...
> FAILED tests/test_dateaxisitem.py::test_tickValues_overflow - AttributeError:...
> FAILED tests/test_dateaxisitem.py::test_tickStrings[values0-expected0] - Attr...
> FAILED tests/test_dateaxisitem.py::test_tickStrings[values1-expected1] - Attr...
> FAILED tests/test_dateaxisitem.py::test_tickStrings[values2-expected2] - Attr...
> FAILED tests/test_dateaxisitem.py::test_tickStrings[values3-expected3] - Attr...
> FAILED tests/test_dateaxisitem.py::test_tickStrings[values4-expected4] - Attr...
> FAILED tests/test_dateaxisitem.py::test_tickStrings_english[values0-expected0]
> FAILED tests/test_dateaxisitem.py::test_tickStrings_english[values1-expected1]
> FAILED tests/test_dateaxisitem.py::test_tickStrings_english[values2-expected2]
> FAILED tests/test_plot.py::test_plot_model_setting - AttributeError: 'ViewBox...
> FAILED tests/test_plot.py::test_plot_model_setting_with_y2 - AttributeError: ...
> FAILED tests/test_plot.py::test_multiple_setModel - AttributeError: 'ViewBoxM...
> FAILED tests/test_plot.py::test_xymodelchooser_config - AttributeError: 'View...
> FAILED tests/test_plot.py::test_y2_config - AttributeError: 'ViewBoxMenu' obj...
> FAILED tests/test_plot.py::test_curveproperties - AttributeError: 'ViewBoxMen...
> FAILED tests/test_plot.py::test_curveproperties_config - AttributeError: 'Vie...
> FAILED tests/test_plot.py::test_curveproperties_configfile - AttributeError: ...
> FAILED tests/test_plot.py::test_duplicate_curve_titles - AttributeError: 'Vie...
> FAILED tests/test_trend.py::test_trend_model_setting - AttributeError: 'ViewB...
> FAILED tests/test_trend.py::test_modelchooser_config - AttributeError: 'ViewB...
> FAILED tests/test_trend.py::test_curveproperties_configfile - AttributeError:...
> FAILED tests/test_trend.py::test_multiple_setModel - AttributeError: 'ViewBox...
> FAILED tests/test_trend.py::test_duplicate_curve_titles - AttributeError: 'Vi...
> FAILED tests/test_y2axis.py::test_y2legend - AttributeError: 'ViewBoxMenu' ob...
> ======================== 32 failed, 10 passed in 3.12s =========================
> E: pybuild pybuild:388: test: plugin distutils failed with: exit code=1: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_taurus-pyqtgraph/build; python3.11 -m pytest tests
> dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.11 returned exit code 13


The full build log is available from:
http://qa-logs.debian.net/2023/07/26/taurus-pyqtgraph_0.5.9-2_unstable.log

All bugs filed during this archive rebuild are listed at:
https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20230726;users=lucas@debian.org
or:
https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20230726&fusertaguser=lucas@debian.org&allbugs=1&cseverity=1&ctags=1&caffected=1#results

A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!

If you reassign this bug to another package, please mark it as 'affects'-ing
this package. See https://www.debian.org/Bugs/server-control#affects

If you fail to reproduce this, please provide a build log and diff it with mine
so that we can identify if something relevant changed in the meantime.



More information about the debian-science-maintainers mailing list