Bug#1030906: taurus-pyqtgraph: FTBFS (failing tests)

Santiago Vila sanvila at debian.org
Wed Feb 8 23:50:17 GMT 2023


Package: src:taurus-pyqtgraph
Version: 0.5.9-1
Severity: serious
Tags: ftbfs

Dear maintainer:

During a rebuild of all packages in bookworm, your package failed to build:

--------------------------------------------------------------------------------
[...]
  debian/rules binary-indep
dh binary-indep --with python3 --buildsystem=pybuild
    dh_update_autotools_config -i -O--buildsystem=pybuild
    dh_autoreconf -i -O--buildsystem=pybuild
    dh_auto_configure -i -O--buildsystem=pybuild
I: pybuild base:240: python3.11 setup.py config
running config
    dh_auto_build -i -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/datainspectortool.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/buffersizetool.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/taurustrendset.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/forcedreadtool.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/curvesmodel.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/taurusimageitem.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/trend.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/taurusmodelchoosertool.py -> /<<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/taurusplotdataitem.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/legendtool.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/legendExample.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/axislabels.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/__init__.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:202: SetuptoolsDeprecationWarning:     Installing 'taurus_pyqtgraph.ui' as data is deprecated, please list it in `packages`.
     !!


     ############################
     # Package would be ignored #
     ############################
     Python recognizes 'taurus_pyqtgraph.ui' as an importable package,
     but it is not listed in the `packages` configuration of setuptools.

     'taurus_pyqtgraph.ui' has been automatically added to the distribution only
     because it may contain data files, but this behavior is likely to change
     in future versions of setuptools (and therefore is considered deprecated).

     Please make sure that 'taurus_pyqtgraph.ui' is included as a package by using
     the `packages` configuration field or the proper discovery methods
     (for example by using `find_namespace_packages(...)`/`find_namespace:`
     instead of `find_packages(...)`/`find:`).

     You can read more about "package discovery" and "data files" on setuptools
     documentation page.


!!

   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 -i -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.1, pytest-7.2.1, pluggy-1.0.0+repack
PyQt6 6.4.1 -- Qt runtime 6.4.2 -- Qt compiled 6.4.2
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 0x7f1d0138d050>
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:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.trend.TaurusTrend object at 0x7f1d20664310>
parent = None, kwargs = {}, buffer_size = 65536
plot_item = <pyqtgraph.graphicsItems.PlotItem.PlotItem.PlotItem object at 0x7f1d015ce9e0>
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d015ceef0>

     def __init__(self, parent=None, **kwargs):
     
         buffer_size = kwargs.pop("buffer_size", 65536)
     
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusTrend, self).__init__(parent=parent, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         plot_item = self.getPlotItem()
         menu = plot_item.getViewBox().menu
     
         # add trends clear action
>       clearTrendsAction = QtGui.QAction("Clear trends", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/trend.py:96: TypeError
____________________ test_tickValues[val_range1-expected1] _____________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d010d6490>
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:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.trend.TaurusTrend object at 0x7f1d014ea4d0>
parent = None, kwargs = {}, buffer_size = 65536
plot_item = <pyqtgraph.graphicsItems.PlotItem.PlotItem.PlotItem object at 0x7f1d014ea5f0>
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d014eaa70>

     def __init__(self, parent=None, **kwargs):
     
         buffer_size = kwargs.pop("buffer_size", 65536)
     
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusTrend, self).__init__(parent=parent, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         plot_item = self.getPlotItem()
         menu = plot_item.getViewBox().menu
     
         # add trends clear action
>       clearTrendsAction = QtGui.QAction("Clear trends", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/trend.py:96: TypeError
____________________ test_tickValues[val_range2-expected2] _____________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d01353190>
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:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.trend.TaurusTrend object at 0x7f1d014ea290>
parent = None, kwargs = {}, buffer_size = 65536
plot_item = <pyqtgraph.graphicsItems.PlotItem.PlotItem.PlotItem object at 0x7f1d0135e5f0>
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d0135ea70>

     def __init__(self, parent=None, **kwargs):
     
         buffer_size = kwargs.pop("buffer_size", 65536)
     
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusTrend, self).__init__(parent=parent, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         plot_item = self.getPlotItem()
         menu = plot_item.getViewBox().menu
     
         # add trends clear action
>       clearTrendsAction = QtGui.QAction("Clear trends", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/trend.py:96: TypeError
____________________ test_tickValues[val_range3-expected3] _____________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d013601d0>
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:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.trend.TaurusTrend object at 0x7f1d0137e560>
parent = None, kwargs = {}, buffer_size = 65536
plot_item = <pyqtgraph.graphicsItems.PlotItem.PlotItem.PlotItem object at 0x7f1d0137e680>
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d0137eb00>

     def __init__(self, parent=None, **kwargs):
     
         buffer_size = kwargs.pop("buffer_size", 65536)
     
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusTrend, self).__init__(parent=parent, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         plot_item = self.getPlotItem()
         menu = plot_item.getViewBox().menu
     
         # add trends clear action
>       clearTrendsAction = QtGui.QAction("Clear trends", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/trend.py:96: TypeError
____________________ test_tickValues[val_range4-expected4] _____________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d013f48d0>
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:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.trend.TaurusTrend object at 0x7f1d0135f0a0>
parent = None, kwargs = {}, buffer_size = 65536
plot_item = <pyqtgraph.graphicsItems.PlotItem.PlotItem.PlotItem object at 0x7f1d0135f1c0>
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d0135f910>

     def __init__(self, parent=None, **kwargs):
     
         buffer_size = kwargs.pop("buffer_size", 65536)
     
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusTrend, self).__init__(parent=parent, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         plot_item = self.getPlotItem()
         menu = plot_item.getViewBox().menu
     
         # add trends clear action
>       clearTrendsAction = QtGui.QAction("Clear trends", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/trend.py:96: TypeError
____________________ test_tickValues[val_range5-expected5] _____________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d0134cc90>
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:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.trend.TaurusTrend object at 0x7f1d0135ef80>
parent = None, kwargs = {}, buffer_size = 65536
plot_item = <pyqtgraph.graphicsItems.PlotItem.PlotItem.PlotItem object at 0x7f1d014eb2e0>
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d014eba30>

     def __init__(self, parent=None, **kwargs):
     
         buffer_size = kwargs.pop("buffer_size", 65536)
     
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusTrend, self).__init__(parent=parent, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         plot_item = self.getPlotItem()
         menu = plot_item.getViewBox().menu
     
         # add trends clear action
>       clearTrendsAction = QtGui.QAction("Clear trends", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/trend.py:96: TypeError
____________________ test_tickValues[val_range6-expected6] _____________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d01353610>
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:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.trend.TaurusTrend object at 0x7f1d0137cf70>
parent = None, kwargs = {}, buffer_size = 65536
plot_item = <pyqtgraph.graphicsItems.PlotItem.PlotItem.PlotItem object at 0x7f1d0135ea70>
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d0135f640>

     def __init__(self, parent=None, **kwargs):
     
         buffer_size = kwargs.pop("buffer_size", 65536)
     
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusTrend, self).__init__(parent=parent, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         plot_item = self.getPlotItem()
         menu = plot_item.getViewBox().menu
     
         # add trends clear action
>       clearTrendsAction = QtGui.QAction("Clear trends", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/trend.py:96: TypeError
____________________ test_tickValues[val_range7-expected7] _____________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d013f5c50>
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:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.trend.TaurusTrend object at 0x7f1d014ea290>
parent = None, kwargs = {}, buffer_size = 65536
plot_item = <pyqtgraph.graphicsItems.PlotItem.PlotItem.PlotItem object at 0x7f1d013aa8c0>
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d013aad40>

     def __init__(self, parent=None, **kwargs):
     
         buffer_size = kwargs.pop("buffer_size", 65536)
     
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusTrend, self).__init__(parent=parent, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         plot_item = self.getPlotItem()
         menu = plot_item.getViewBox().menu
     
         # add trends clear action
>       clearTrendsAction = QtGui.QAction("Clear trends", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/trend.py:96: TypeError
___________________________ test_tickValues_overflow ___________________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d01109dd0>

     def test_tickValues_overflow(qtbot):
         """
         Check that the tickValues reimplementation returns the expected values
         """
>       w = tpg.TaurusTrend()

tests/test_dateaxisitem.py:85:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.trend.TaurusTrend object at 0x7f1d015ce4d0>
parent = None, kwargs = {}, buffer_size = 65536
plot_item = <pyqtgraph.graphicsItems.PlotItem.PlotItem.PlotItem object at 0x7f1d0135e560>
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d0135dbd0>

     def __init__(self, parent=None, **kwargs):
     
         buffer_size = kwargs.pop("buffer_size", 65536)
     
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusTrend, self).__init__(parent=parent, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         plot_item = self.getPlotItem()
         menu = plot_item.getViewBox().menu
     
         # add trends clear action
>       clearTrendsAction = QtGui.QAction("Clear trends", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/trend.py:96: TypeError
_____________________ test_tickStrings[values0-expected0] ______________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d0128e610>
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()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.trend.TaurusTrend object at 0x7f1d013aa7a0>
parent = None, kwargs = {}, buffer_size = 65536
plot_item = <pyqtgraph.graphicsItems.PlotItem.PlotItem.PlotItem object at 0x7f1d013be830>
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d013bef80>

     def __init__(self, parent=None, **kwargs):
     
         buffer_size = kwargs.pop("buffer_size", 65536)
     
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusTrend, self).__init__(parent=parent, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         plot_item = self.getPlotItem()
         menu = plot_item.getViewBox().menu
     
         # add trends clear action
>       clearTrendsAction = QtGui.QAction("Clear trends", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/trend.py:96: TypeError
_____________________ test_tickStrings[values1-expected1] ______________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d0115d950>
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()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.trend.TaurusTrend object at 0x7f1d013beb00>
parent = None, kwargs = {}, buffer_size = 65536
plot_item = <pyqtgraph.graphicsItems.PlotItem.PlotItem.PlotItem object at 0x7f1d0130ac20>
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d0130b0a0>

     def __init__(self, parent=None, **kwargs):
     
         buffer_size = kwargs.pop("buffer_size", 65536)
     
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusTrend, self).__init__(parent=parent, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         plot_item = self.getPlotItem()
         menu = plot_item.getViewBox().menu
     
         # add trends clear action
>       clearTrendsAction = QtGui.QAction("Clear trends", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/trend.py:96: TypeError
_____________________ test_tickStrings[values2-expected2] ______________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d010390d0>
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()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.trend.TaurusTrend object at 0x7f1d01309c60>
parent = None, kwargs = {}, buffer_size = 65536
plot_item = <pyqtgraph.graphicsItems.PlotItem.PlotItem.PlotItem object at 0x7f1d013096c0>
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d01309090>

     def __init__(self, parent=None, **kwargs):
     
         buffer_size = kwargs.pop("buffer_size", 65536)
     
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusTrend, self).__init__(parent=parent, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         plot_item = self.getPlotItem()
         menu = plot_item.getViewBox().menu
     
         # add trends clear action
>       clearTrendsAction = QtGui.QAction("Clear trends", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/trend.py:96: TypeError
_____________________ test_tickStrings[values3-expected3] ______________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d013ebc90>
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()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.trend.TaurusTrend object at 0x7f1d013097e0>
parent = None, kwargs = {}, buffer_size = 65536
plot_item = <pyqtgraph.graphicsItems.PlotItem.PlotItem.PlotItem object at 0x7f1d0135da20>
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d0135f760>

     def __init__(self, parent=None, **kwargs):
     
         buffer_size = kwargs.pop("buffer_size", 65536)
     
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusTrend, self).__init__(parent=parent, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         plot_item = self.getPlotItem()
         menu = plot_item.getViewBox().menu
     
         # add trends clear action
>       clearTrendsAction = QtGui.QAction("Clear trends", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/trend.py:96: TypeError
_____________________ test_tickStrings[values4-expected4] ______________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d010bbd50>
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()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.trend.TaurusTrend object at 0x7f1d013aa680>
parent = None, kwargs = {}, buffer_size = 65536
plot_item = <pyqtgraph.graphicsItems.PlotItem.PlotItem.PlotItem object at 0x7f1d013bf640>
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d013bfe20>

     def __init__(self, parent=None, **kwargs):
     
         buffer_size = kwargs.pop("buffer_size", 65536)
     
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusTrend, self).__init__(parent=parent, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         plot_item = self.getPlotItem()
         menu = plot_item.getViewBox().menu
     
         # add trends clear action
>       clearTrendsAction = QtGui.QAction("Clear trends", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/trend.py:96: TypeError
_________________ test_tickStrings_english[values0-expected0] __________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d0110bd90>
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()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.trend.TaurusTrend object at 0x7f1d01308790>
parent = None, kwargs = {}, buffer_size = 65536
plot_item = <pyqtgraph.graphicsItems.PlotItem.PlotItem.PlotItem object at 0x7f1d01337370>
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d01337880>

     def __init__(self, parent=None, **kwargs):
     
         buffer_size = kwargs.pop("buffer_size", 65536)
     
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusTrend, self).__init__(parent=parent, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         plot_item = self.getPlotItem()
         menu = plot_item.getViewBox().menu
     
         # add trends clear action
>       clearTrendsAction = QtGui.QAction("Clear trends", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/trend.py:96: TypeError
_________________ test_tickStrings_english[values1-expected1] __________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d01311090>
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()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.trend.TaurusTrend object at 0x7f1d01299480>
parent = None, kwargs = {}, buffer_size = 65536
plot_item = <pyqtgraph.graphicsItems.PlotItem.PlotItem.PlotItem object at 0x7f1d0129b7f0>
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d0129bc70>

     def __init__(self, parent=None, **kwargs):
     
         buffer_size = kwargs.pop("buffer_size", 65536)
     
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusTrend, self).__init__(parent=parent, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         plot_item = self.getPlotItem()
         menu = plot_item.getViewBox().menu
     
         # add trends clear action
>       clearTrendsAction = QtGui.QAction("Clear trends", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/trend.py:96: TypeError
_________________ test_tickStrings_english[values2-expected2] __________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d01313290>
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()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.trend.TaurusTrend object at 0x7f1d0129a050>
parent = None, kwargs = {}, buffer_size = 65536
plot_item = <pyqtgraph.graphicsItems.PlotItem.PlotItem.PlotItem object at 0x7f1d01299f30>
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d01299900>

     def __init__(self, parent=None, **kwargs):
     
         buffer_size = kwargs.pop("buffer_size", 65536)
     
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusTrend, self).__init__(parent=parent, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         plot_item = self.getPlotItem()
         menu = plot_item.getViewBox().menu
     
         # add trends clear action
>       clearTrendsAction = QtGui.QAction("Clear trends", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/trend.py:96: TypeError
___________________________ test_plot_model_setting ____________________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d0103a950>

     def test_plot_model_setting(qtbot):
     
>       w = tpg.TaurusPlot()

tests/test_plot.py:13:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.plot.TaurusPlot object at 0x7f1d0135d6c0>
parent = None, kwargs = {}
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d013beef0>

     def __init__(self, parent=None, **kwargs):
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusPlot, self).__init__(parent=None, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         # add save & retrieve configuration actions
         menu = self.getPlotItem().getViewBox().menu
>       saveConfigAction = QtGui.QAction("Save configuration", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/plot.py:84: TypeError
_______________________ test_plot_model_setting_with_y2 ________________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d012d8a90>

     def test_plot_model_setting_with_y2(qtbot):
     
>       w = tpg.TaurusPlot()

tests/test_plot.py:84:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.plot.TaurusPlot object at 0x7f1d01337880>
parent = None, kwargs = {}
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d01337a30>

     def __init__(self, parent=None, **kwargs):
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusPlot, self).__init__(parent=None, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         # add save & retrieve configuration actions
         menu = self.getPlotItem().getViewBox().menu
>       saveConfigAction = QtGui.QAction("Save configuration", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/plot.py:84: TypeError
____________________________ test_multiple_setModel ____________________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d010fde90>

     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:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.plot.TaurusPlot object at 0x7f1d01337ac0>
parent = None, kwargs = {}
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d0129b640>

     def __init__(self, parent=None, **kwargs):
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusPlot, self).__init__(parent=None, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         # add save & retrieve configuration actions
         menu = self.getPlotItem().getViewBox().menu
>       saveConfigAction = QtGui.QAction("Save configuration", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/plot.py:84: TypeError
__________________________ test_xymodelchooser_config __________________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d01063bd0>

     def test_xymodelchooser_config(qtbot):
     
>       w1 = tpg.TaurusPlot()

tests/test_plot.py:197:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.plot.TaurusPlot object at 0x7f1d01337370>
parent = None, kwargs = {}
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d012b85e0>

     def __init__(self, parent=None, **kwargs):
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusPlot, self).__init__(parent=None, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         # add save & retrieve configuration actions
         menu = self.getPlotItem().getViewBox().menu
>       saveConfigAction = QtGui.QAction("Save configuration", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/plot.py:84: TypeError
________________________________ test_y2_config ________________________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d01100590>

     def test_y2_config(qtbot):
     
         # create a plot with 3 curves
>       w1 = tpg.TaurusPlot()

tests/test_plot.py:246:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.plot.TaurusPlot object at 0x7f1d0129b9a0>
parent = None, kwargs = {}
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d012c4550>

     def __init__(self, parent=None, **kwargs):
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusPlot, self).__init__(parent=None, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         # add save & retrieve configuration actions
         menu = self.getPlotItem().getViewBox().menu
>       saveConfigAction = QtGui.QAction("Save configuration", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/plot.py:84: TypeError
_____________________________ test_curveproperties _____________________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d01081ed0>

     def test_curveproperties(qtbot):
     
>       w = tpg.TaurusPlot()

tests/test_plot.py:314:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.plot.TaurusPlot object at 0x7f1d012bbf40>
parent = None, kwargs = {}
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d0122c550>

     def __init__(self, parent=None, **kwargs):
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusPlot, self).__init__(parent=None, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         # add save & retrieve configuration actions
         menu = self.getPlotItem().getViewBox().menu
>       saveConfigAction = QtGui.QAction("Save configuration", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/plot.py:84: TypeError
_________________________ test_curveproperties_config __________________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d010d6850>

     @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:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.plot.TaurusPlot object at 0x7f1d012abd90>
parent = None, kwargs = {}
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d012f45e0>

     def __init__(self, parent=None, **kwargs):
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusPlot, self).__init__(parent=None, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         # add save & retrieve configuration actions
         menu = self.getPlotItem().getViewBox().menu
>       saveConfigAction = QtGui.QAction("Save configuration", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/plot.py:84: TypeError
_______________________ test_curveproperties_configfile ________________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d01384c50>
tmp_path = PosixPath('/tmp/pytest-of-buildd/pytest-0/test_curveproperties_configfil0')

     def test_curveproperties_configfile(qtbot, tmp_path):
>       w1 = tpg.TaurusPlot()

tests/test_plot.py:513:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.plot.TaurusPlot object at 0x7f1d0122fd90>
parent = None, kwargs = {}
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d0122f520>

     def __init__(self, parent=None, **kwargs):
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusPlot, self).__init__(parent=None, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         # add save & retrieve configuration actions
         menu = self.getPlotItem().getViewBox().menu
>       saveConfigAction = QtGui.QAction("Save configuration", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/plot.py:84: TypeError
_________________________ test_duplicate_curve_titles __________________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d010b8fd0>

     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:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.plot.TaurusPlot object at 0x7f1d0122ecb0>
parent = None, kwargs = {}
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d012c7130>

     def __init__(self, parent=None, **kwargs):
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusPlot, self).__init__(parent=None, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         # add save & retrieve configuration actions
         menu = self.getPlotItem().getViewBox().menu
>       saveConfigAction = QtGui.QAction("Save configuration", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/plot.py:84: TypeError
___________________________ test_trend_model_setting ___________________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d012b3790>

     def test_trend_model_setting(qtbot):
     
>       w = tpg.TaurusTrend()

tests/test_trend.py:26:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.trend.TaurusTrend object at 0x7f1d0122fd00>
parent = None, kwargs = {}, buffer_size = 65536
plot_item = <pyqtgraph.graphicsItems.PlotItem.PlotItem.PlotItem object at 0x7f1d012ba950>
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d012ba200>

     def __init__(self, parent=None, **kwargs):
     
         buffer_size = kwargs.pop("buffer_size", 65536)
     
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusTrend, self).__init__(parent=parent, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         plot_item = self.getPlotItem()
         menu = plot_item.getViewBox().menu
     
         # add trends clear action
>       clearTrendsAction = QtGui.QAction("Clear trends", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/trend.py:96: TypeError
___________________________ test_modelchooser_config ___________________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d010feb50>

     def test_modelchooser_config(qtbot):
     
>       w1 = tpg.TaurusTrend()

tests/test_trend.py:247:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.trend.TaurusTrend object at 0x7f1d012ba560>
parent = None, kwargs = {}, buffer_size = 65536
plot_item = <pyqtgraph.graphicsItems.PlotItem.PlotItem.PlotItem object at 0x7f1d01298820>
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d01299b40>

     def __init__(self, parent=None, **kwargs):
     
         buffer_size = kwargs.pop("buffer_size", 65536)
     
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusTrend, self).__init__(parent=parent, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         plot_item = self.getPlotItem()
         menu = plot_item.getViewBox().menu
     
         # add trends clear action
>       clearTrendsAction = QtGui.QAction("Clear trends", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/trend.py:96: TypeError
_______________________ test_curveproperties_configfile ________________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d012492d0>
tmp_path = PosixPath('/tmp/pytest-of-buildd/pytest-0/test_curveproperties_configfil1')

     def test_curveproperties_configfile(qtbot, tmp_path):
>       w1 = tpg.TaurusTrend()

tests/test_trend.py:302:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.trend.TaurusTrend object at 0x7f1d012ba950>
parent = None, kwargs = {}, buffer_size = 65536
plot_item = <pyqtgraph.graphicsItems.PlotItem.PlotItem.PlotItem object at 0x7f1d012b8430>
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d012ba0e0>

     def __init__(self, parent=None, **kwargs):
     
         buffer_size = kwargs.pop("buffer_size", 65536)
     
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusTrend, self).__init__(parent=parent, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         plot_item = self.getPlotItem()
         menu = plot_item.getViewBox().menu
     
         # add trends clear action
>       clearTrendsAction = QtGui.QAction("Clear trends", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/trend.py:96: TypeError
____________________________ test_multiple_setModel ____________________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d011026d0>

     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:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.trend.TaurusTrend object at 0x7f1d012ba710>
parent = None, kwargs = {}, buffer_size = 65536
plot_item = <pyqtgraph.graphicsItems.PlotItem.PlotItem.PlotItem object at 0x7f1d0129a950>
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d012985e0>

     def __init__(self, parent=None, **kwargs):
     
         buffer_size = kwargs.pop("buffer_size", 65536)
     
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusTrend, self).__init__(parent=parent, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         plot_item = self.getPlotItem()
         menu = plot_item.getViewBox().menu
     
         # add trends clear action
>       clearTrendsAction = QtGui.QAction("Clear trends", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/trend.py:96: TypeError
_________________________ test_duplicate_curve_titles __________________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d012b1690>

     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:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.trend.TaurusTrend object at 0x7f1d012ba560>
parent = None, kwargs = {}, buffer_size = 65536
plot_item = <pyqtgraph.graphicsItems.PlotItem.PlotItem.PlotItem object at 0x7f1d012a85e0>
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d012aa9e0>

     def __init__(self, parent=None, **kwargs):
     
         buffer_size = kwargs.pop("buffer_size", 65536)
     
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusTrend, self).__init__(parent=parent, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         plot_item = self.getPlotItem()
         menu = plot_item.getViewBox().menu
     
         # add trends clear action
>       clearTrendsAction = QtGui.QAction("Clear trends", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/trend.py:96: TypeError
________________________________ test_y2legend _________________________________

qtbot = <pytestqt.qtbot.QtBot object at 0x7f1d01089e90>

     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:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <taurus_pyqtgraph.plot.TaurusPlot object at 0x7f1d0122fd00>
parent = None, kwargs = {}
menu = <pyqtgraph.graphicsItems.ViewBox.ViewBoxMenu.ViewBoxMenu object at 0x7f1d01335000>

     def __init__(self, parent=None, **kwargs):
         if PYSIDE2:
             # Workaround for https://bugreports.qt.io/browse/PYSIDE-1564
             BaseConfigurableClass.__init__(self)
             PlotWidget.__init__(self, parent=parent, **kwargs)
         else:
             super(TaurusPlot, self).__init__(parent=None, **kwargs)
     
         # Compose with a Logger
         self._logger = Logger(name=self.__class__.__name__)
         self.debug = self._logger.debug
         self.info = self._logger.info
         self.warning = self._logger.warning
         self.error = self._logger.error
     
         # set up cyclic color generator
         self._curveColors = LoopList(CURVE_COLORS)
         self._curveColors.setCurrentIndex(-1)
     
         # add save & retrieve configuration actions
         menu = self.getPlotItem().getViewBox().menu
>       saveConfigAction = QtGui.QAction("Save configuration", menu)
E       TypeError: arguments did not match any overloaded call:
E         QAction(parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'
E         QAction(text: str, parent: typing.Optional[QObject] = None): argument 2 has unexpected type 'ViewBoxMenu'
E         QAction(icon: QIcon, text: str, parent: typing.Optional[QObject] = None): argument 1 has unexpected type 'str'

taurus_pyqtgraph/plot.py:84: TypeError
=========================== short test summary info ============================
FAILED tests/test_dateaxisitem.py::test_tickValues[val_range0-expected0] - Ty...
FAILED tests/test_dateaxisitem.py::test_tickValues[val_range1-expected1] - Ty...
FAILED tests/test_dateaxisitem.py::test_tickValues[val_range2-expected2] - Ty...
FAILED tests/test_dateaxisitem.py::test_tickValues[val_range3-expected3] - Ty...
FAILED tests/test_dateaxisitem.py::test_tickValues[val_range4-expected4] - Ty...
FAILED tests/test_dateaxisitem.py::test_tickValues[val_range5-expected5] - Ty...
FAILED tests/test_dateaxisitem.py::test_tickValues[val_range6-expected6] - Ty...
FAILED tests/test_dateaxisitem.py::test_tickValues[val_range7-expected7] - Ty...
FAILED tests/test_dateaxisitem.py::test_tickValues_overflow - TypeError: argu...
FAILED tests/test_dateaxisitem.py::test_tickStrings[values0-expected0] - Type...
FAILED tests/test_dateaxisitem.py::test_tickStrings[values1-expected1] - Type...
FAILED tests/test_dateaxisitem.py::test_tickStrings[values2-expected2] - Type...
FAILED tests/test_dateaxisitem.py::test_tickStrings[values3-expected3] - Type...
FAILED tests/test_dateaxisitem.py::test_tickStrings[values4-expected4] - Type...
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 - TypeError: arguments did...
FAILED tests/test_plot.py::test_plot_model_setting_with_y2 - TypeError: argum...
FAILED tests/test_plot.py::test_multiple_setModel - TypeError: arguments did ...
FAILED tests/test_plot.py::test_xymodelchooser_config - TypeError: arguments ...
FAILED tests/test_plot.py::test_y2_config - TypeError: arguments did not matc...
FAILED tests/test_plot.py::test_curveproperties - TypeError: arguments did no...
FAILED tests/test_plot.py::test_curveproperties_config - TypeError: arguments...
FAILED tests/test_plot.py::test_curveproperties_configfile - TypeError: argum...
FAILED tests/test_plot.py::test_duplicate_curve_titles - TypeError: arguments...
FAILED tests/test_trend.py::test_trend_model_setting - TypeError: arguments d...
FAILED tests/test_trend.py::test_modelchooser_config - TypeError: arguments d...
FAILED tests/test_trend.py::test_curveproperties_configfile - TypeError: argu...
FAILED tests/test_trend.py::test_multiple_setModel - TypeError: arguments did...
FAILED tests/test_trend.py::test_duplicate_curve_titles - TypeError: argument...
FAILED tests/test_y2axis.py::test_y2legend - TypeError: arguments did not mat...
======================== 32 failed, 10 passed in 3.31s =========================
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
make: *** [debian/rules:6: binary-indep] Error 25
dpkg-buildpackage: error: debian/rules binary-indep subprocess returned exit status 2
--------------------------------------------------------------------------------

(The above is just how the build ends and not necessarily the most relevant part)

About the archive rebuild: The build was made using virtual machines
from Hetzner, with enough memory, enough disk, and either one or two
CPUs, using a reduced chroot with only build-essential packages (plus
debhelper).

If you could not reproduce the bug please contact me privately, as I
am willing to provide ssh access to a virtual machine where the bug is
fully reproducible.

If this is really a bug in one of the build-depends, please use
reassign and affects, so that this is still visible in the BTS web
page for this package.

Thanks.



More information about the debian-science-maintainers mailing list