2017-08-30 16:22:12 +02:00
|
|
|
#
|
2024-03-16 10:34:55 +01:00
|
|
|
# spec file for package python-pytest-qt
|
2017-08-30 16:22:12 +02:00
|
|
|
#
|
2024-01-05 18:13:09 +01:00
|
|
|
# Copyright (c) 2024 SUSE LLC
|
2017-08-30 16:22:12 +02:00
|
|
|
#
|
|
|
|
# All modifications and additions to the file contributed by third parties
|
|
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
|
|
# upon. The license for this file, and modifications and additions to the
|
|
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
|
|
# license for the pristine package is not an Open Source License, in which
|
|
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
|
|
# published by the Open Source Initiative.
|
|
|
|
|
2018-12-07 20:25:44 +01:00
|
|
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
2017-08-30 16:22:12 +02:00
|
|
|
#
|
|
|
|
|
|
|
|
|
2024-01-26 10:35:36 +01:00
|
|
|
%{?sle15_python_module_pythons}
|
2024-01-29 06:43:39 +01:00
|
|
|
# pyside is for one flavor only
|
|
|
|
%define pyside_python %{?sle15_python_module_pythons:%pythons}%{!?sle15_python_module_pythons:python3}
|
Accepting request 905961 from home:bnavigator:branches:devel:languages:python:pytest
- Allow either of the valid Qt binding implementations, do not hard
require python-qt5
- Enable multibuild for tests with different implementations
* Pyside2, PyQt5, PyQt6
* Prepared for Pyside6
- Update to version 4.0.2
* Restored compatibility with PySide2 5.11, which doesn't depend on the
``shiboken2`` project, used by pytest-qt 4.0.0. The dependency is now not
needed anymore, and the ``.isdeleted`` attribute of ``qt_compat`` (which
isn't intended for public use) is removed.
- Release 4.0.1
* The ``sip`` module now gets imported directly if ``PyQt5.sip`` /
``PyQt6.sip`` wasn't found, as it's still packaged like that in some
distributions (`#369`_). Thanks `@The-Compiler`_ for the PR.
- Release 4.0.0
* `PySide6 <https://pypi.org/project/PySide6>`__ and `PyQt6 <https://pypi.org/project/PyQt6>`__ (6.1+)
are now supported. Thanks `@jensheilman`_ and `@The-Compiler`_ for the PRs (`#328`_, `#330`_).
* ``pytest-qt`` now requires Python 3.6+.
* When using PyQt5, ``pytest-qt`` now requires PyQt5 5.11 or newer (`#330`_).
* Support for Qt4 (i.e. ``PyQt4`` and ``PySide``) is now dropped (`#279`_).
* The ``qtbot.waitActive`` and ``qtbot.waitExposed`` context managers are now
available with all Qt APIs, rather than only PyQt5 (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The ``qtbot.waitForWindowShown`` method is deprecated, as the underlying Qt
method was obsoleted in Qt 5.0 and removed in Qt 6.0. Its name is imprecise and
the pytest-qt wrapper does not raise TimeoutError if the window wasn't shown.
Please use the ``qtbot.waitExposed`` context manager instead (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The old ``qtbot.stopForInteraction()`` name is now removed as it was
cumbersome and rarely used. Use ``qtbot.stop()`` (added in 1.1.1) instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``SignalTimeoutError`` exception alias is now removed, as it was renamed to
``TimeoutError`` in 2.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``qt_wait_signal_raising`` option is now removed, as it was renamed to
``qt_default_raising`` in 3.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* ``qtbot.waitSignal`` and ``waitSignals`` (as well as their PEP-8 aliases)
supported passing ``None`` as signal, making them wait for the given timeout
instead. This is not supported anymore, use ``qtbot.wait(ms)`` instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* Various arguments to ``qtbot`` methods are now keyword-only (`#366`_):
* ``qtbot.waitActive``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitExposed``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitSignal``: ``timeout``, ``raising`` and ``check_params_cb`` (``signal`` being the only positional argument)
* ``qtbot.waitSignals``: ``timeout``, ``raising`` and ``check_params_cbs`` (``signals`` being the only positional argument)
* ``qtbot.assertNotEmitted``: ``wait`` (``signal`` being the only positional argument)
* ``qtbot.waitUntil``: ``timeout`` (``callback`` being the only positional argument)
* ``qtbot.waitCallback``: ``timeout`` and ``raising`` (with no positional arguments)
The same applies to the respective PEP-8 aliases. Thanks `@The-Compiler`_ for
the PR.
* Various classes are now not importable from ``pytestqt.plugin`` anymore, and
should instead be imported from the module they're residing in since the 1.6.0
release (`#306`_):
* ``pytestqt.plugin.QtBot`` -> ``pytestqt.qtbot.QtBot``
* ``pytestqt.plugin.SignalBlocker`` -> ``pytestqt.wait_signal.SignalBlocker``
* ``pytestqt.plugin.MultiSignalBlocker`` -> ``pytestqt.wait_signal.MultiSignalBlocker``
* ``pytestqt.plugin.Record`` -> ``pytestqt.logging.Record``
* ``pytestqt.plugin.capture_exceptions`` ->
``pytestqt.exceptions.capture_exceptions`` (but consider using
``qtbot.capture_exceptions`` instead)
* ``pytestqt.plugin.format_captured_exceptions`` ->
``pytestqt.exceptions.format_captured_exceptions``
* The ``qt_api.extract_from_variant`` and ``qt_api.make_variant`` functions
(which were never intended for public usage) as well as all class aliases
(such as ``qt_api.QWidget`` or ``qt_api.QEvent``, among others) are now
removed. Thanks `@The-Compiler`_ for the PR.
* The default timeouts for ``qtbot.waitSignal``, ``waitSignals``, ``waitUntil``
and ``waitCallback``, ``waitActive`` and ``waitExposed`` have been raised from
1s to 5s. This makes them in line the default timeout used by Qt's underlying
methods such as ``QSignalSpy::wait``. To get the old behavior back, explicitly
pass ``timeout=1000`` to those functions (`#306`_). Thanks `@The-Compiler`_
for the PR.
* ``waitUntil`` now raises a ``TimeoutError`` when a timeout occurs to make the
cause of the timeout more explict (`#222`_). Thanks `@karlch`_ for the PR.
* The ``QtTest::keySequence`` method is now exposed (if available, with Qt >=
5.10) (`#289`_). Thanks `@The-Compiler`_ for the PR.
* ``addWidget`` now enforces that its argument is a ``QWidget`` in order to
display a clearer error when this isn't the case (`#290`_). Thanks
`@The-Compiler`_ for the PR.
* New option ``qt_qapp_name`` can be used to set the name of the
``QApplication`` created by ``pytest-qt``, defaulting to ``"pytest-qt-qapp"``
(`#302`_). Thanks `@The-Compiler`_ for the PR.
* When the ``-s`` (``--capture=no``) argument is passed to pytest, Qt log
capturing is now disabled as well (`#300`_). Thanks `@The-Compiler`_ for the PR.
* PEP-8 aliases (``add_widget``, ``wait_active``, etc) are no longer just simple
assignments to the methods, but they are real methods which call the normal
implementations. This makes subclasses work as expected, instead of having to
duplicate the assignment (`#326`_, `#333`_). Thanks `@oliveira-mauricio`_ and
`@jensheilman`_ for the PRs.
* Errors related to the ``qt_compat`` module (such as an invalid
``PYTEST_QT_API`` setting or missing Qt API wrappers) are now shown as a more
human-readable error message rather than an internal pytest error (`#355`_). Thanks
`@The-Compiler`_ for the PR.
OBS-URL: https://build.opensuse.org/request/show/905961
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:pytest/python-pytest-qt?expand=0&rev=12
2021-07-13 11:06:16 +02:00
|
|
|
%global flavor @BUILD_FLAVOR@%{nil}
|
|
|
|
%if "%{flavor}" == ""
|
|
|
|
%define psuffix %{nil}
|
|
|
|
%bcond_with test
|
|
|
|
%endif
|
|
|
|
%if "%{flavor}" == "test-pyqt5"
|
|
|
|
%define psuffix -%{flavor}
|
|
|
|
%define test_qtapi pyqt5
|
|
|
|
%bcond_without test
|
|
|
|
BuildRequires: %{python_module qt5}
|
|
|
|
BuildConflicts: %{python_module PyQt6}
|
|
|
|
BuildConflicts: %{python_module pyside2}
|
|
|
|
BuildConflicts: %{python_module pyside6}
|
|
|
|
%endif
|
|
|
|
%if "%{flavor}" == "test-pyqt6"
|
|
|
|
%define psuffix -%{flavor}
|
|
|
|
%define test_qtapi pyqt6
|
|
|
|
%bcond_without test
|
|
|
|
BuildRequires: %{python_module PyQt6}
|
|
|
|
BuildConflicts: %{python_module pyside2}
|
|
|
|
BuildConflicts: %{python_module pyside6}
|
|
|
|
BuildConflicts: %{python_module qt5}
|
|
|
|
%endif
|
|
|
|
%if "%{flavor}" == "test-pyside2"
|
|
|
|
%define psuffix -%{flavor}
|
2024-01-29 06:43:39 +01:00
|
|
|
%{!?sle15_python_module_pythons:%define pythons python3}
|
Accepting request 905961 from home:bnavigator:branches:devel:languages:python:pytest
- Allow either of the valid Qt binding implementations, do not hard
require python-qt5
- Enable multibuild for tests with different implementations
* Pyside2, PyQt5, PyQt6
* Prepared for Pyside6
- Update to version 4.0.2
* Restored compatibility with PySide2 5.11, which doesn't depend on the
``shiboken2`` project, used by pytest-qt 4.0.0. The dependency is now not
needed anymore, and the ``.isdeleted`` attribute of ``qt_compat`` (which
isn't intended for public use) is removed.
- Release 4.0.1
* The ``sip`` module now gets imported directly if ``PyQt5.sip`` /
``PyQt6.sip`` wasn't found, as it's still packaged like that in some
distributions (`#369`_). Thanks `@The-Compiler`_ for the PR.
- Release 4.0.0
* `PySide6 <https://pypi.org/project/PySide6>`__ and `PyQt6 <https://pypi.org/project/PyQt6>`__ (6.1+)
are now supported. Thanks `@jensheilman`_ and `@The-Compiler`_ for the PRs (`#328`_, `#330`_).
* ``pytest-qt`` now requires Python 3.6+.
* When using PyQt5, ``pytest-qt`` now requires PyQt5 5.11 or newer (`#330`_).
* Support for Qt4 (i.e. ``PyQt4`` and ``PySide``) is now dropped (`#279`_).
* The ``qtbot.waitActive`` and ``qtbot.waitExposed`` context managers are now
available with all Qt APIs, rather than only PyQt5 (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The ``qtbot.waitForWindowShown`` method is deprecated, as the underlying Qt
method was obsoleted in Qt 5.0 and removed in Qt 6.0. Its name is imprecise and
the pytest-qt wrapper does not raise TimeoutError if the window wasn't shown.
Please use the ``qtbot.waitExposed`` context manager instead (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The old ``qtbot.stopForInteraction()`` name is now removed as it was
cumbersome and rarely used. Use ``qtbot.stop()`` (added in 1.1.1) instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``SignalTimeoutError`` exception alias is now removed, as it was renamed to
``TimeoutError`` in 2.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``qt_wait_signal_raising`` option is now removed, as it was renamed to
``qt_default_raising`` in 3.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* ``qtbot.waitSignal`` and ``waitSignals`` (as well as their PEP-8 aliases)
supported passing ``None`` as signal, making them wait for the given timeout
instead. This is not supported anymore, use ``qtbot.wait(ms)`` instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* Various arguments to ``qtbot`` methods are now keyword-only (`#366`_):
* ``qtbot.waitActive``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitExposed``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitSignal``: ``timeout``, ``raising`` and ``check_params_cb`` (``signal`` being the only positional argument)
* ``qtbot.waitSignals``: ``timeout``, ``raising`` and ``check_params_cbs`` (``signals`` being the only positional argument)
* ``qtbot.assertNotEmitted``: ``wait`` (``signal`` being the only positional argument)
* ``qtbot.waitUntil``: ``timeout`` (``callback`` being the only positional argument)
* ``qtbot.waitCallback``: ``timeout`` and ``raising`` (with no positional arguments)
The same applies to the respective PEP-8 aliases. Thanks `@The-Compiler`_ for
the PR.
* Various classes are now not importable from ``pytestqt.plugin`` anymore, and
should instead be imported from the module they're residing in since the 1.6.0
release (`#306`_):
* ``pytestqt.plugin.QtBot`` -> ``pytestqt.qtbot.QtBot``
* ``pytestqt.plugin.SignalBlocker`` -> ``pytestqt.wait_signal.SignalBlocker``
* ``pytestqt.plugin.MultiSignalBlocker`` -> ``pytestqt.wait_signal.MultiSignalBlocker``
* ``pytestqt.plugin.Record`` -> ``pytestqt.logging.Record``
* ``pytestqt.plugin.capture_exceptions`` ->
``pytestqt.exceptions.capture_exceptions`` (but consider using
``qtbot.capture_exceptions`` instead)
* ``pytestqt.plugin.format_captured_exceptions`` ->
``pytestqt.exceptions.format_captured_exceptions``
* The ``qt_api.extract_from_variant`` and ``qt_api.make_variant`` functions
(which were never intended for public usage) as well as all class aliases
(such as ``qt_api.QWidget`` or ``qt_api.QEvent``, among others) are now
removed. Thanks `@The-Compiler`_ for the PR.
* The default timeouts for ``qtbot.waitSignal``, ``waitSignals``, ``waitUntil``
and ``waitCallback``, ``waitActive`` and ``waitExposed`` have been raised from
1s to 5s. This makes them in line the default timeout used by Qt's underlying
methods such as ``QSignalSpy::wait``. To get the old behavior back, explicitly
pass ``timeout=1000`` to those functions (`#306`_). Thanks `@The-Compiler`_
for the PR.
* ``waitUntil`` now raises a ``TimeoutError`` when a timeout occurs to make the
cause of the timeout more explict (`#222`_). Thanks `@karlch`_ for the PR.
* The ``QtTest::keySequence`` method is now exposed (if available, with Qt >=
5.10) (`#289`_). Thanks `@The-Compiler`_ for the PR.
* ``addWidget`` now enforces that its argument is a ``QWidget`` in order to
display a clearer error when this isn't the case (`#290`_). Thanks
`@The-Compiler`_ for the PR.
* New option ``qt_qapp_name`` can be used to set the name of the
``QApplication`` created by ``pytest-qt``, defaulting to ``"pytest-qt-qapp"``
(`#302`_). Thanks `@The-Compiler`_ for the PR.
* When the ``-s`` (``--capture=no``) argument is passed to pytest, Qt log
capturing is now disabled as well (`#300`_). Thanks `@The-Compiler`_ for the PR.
* PEP-8 aliases (``add_widget``, ``wait_active``, etc) are no longer just simple
assignments to the methods, but they are real methods which call the normal
implementations. This makes subclasses work as expected, instead of having to
duplicate the assignment (`#326`_, `#333`_). Thanks `@oliveira-mauricio`_ and
`@jensheilman`_ for the PRs.
* Errors related to the ``qt_compat`` module (such as an invalid
``PYTEST_QT_API`` setting or missing Qt API wrappers) are now shown as a more
human-readable error message rather than an internal pytest error (`#355`_). Thanks
`@The-Compiler`_ for the PR.
OBS-URL: https://build.opensuse.org/request/show/905961
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:pytest/python-pytest-qt?expand=0&rev=12
2021-07-13 11:06:16 +02:00
|
|
|
%define test_qtapi pyside2
|
|
|
|
%bcond_without test
|
|
|
|
BuildRequires: %{python_module pyside2}
|
|
|
|
BuildConflicts: %{python_module PyQt6}
|
|
|
|
BuildConflicts: %{python_module pyside6}
|
|
|
|
BuildConflicts: %{python_module qt5}
|
|
|
|
%endif
|
|
|
|
%if "%{flavor}" == "test-pyside6"
|
|
|
|
%define psuffix -%{flavor}
|
2024-01-29 06:43:39 +01:00
|
|
|
%{!?sle15_python_module_pythons:%define pythons python3}
|
Accepting request 905961 from home:bnavigator:branches:devel:languages:python:pytest
- Allow either of the valid Qt binding implementations, do not hard
require python-qt5
- Enable multibuild for tests with different implementations
* Pyside2, PyQt5, PyQt6
* Prepared for Pyside6
- Update to version 4.0.2
* Restored compatibility with PySide2 5.11, which doesn't depend on the
``shiboken2`` project, used by pytest-qt 4.0.0. The dependency is now not
needed anymore, and the ``.isdeleted`` attribute of ``qt_compat`` (which
isn't intended for public use) is removed.
- Release 4.0.1
* The ``sip`` module now gets imported directly if ``PyQt5.sip`` /
``PyQt6.sip`` wasn't found, as it's still packaged like that in some
distributions (`#369`_). Thanks `@The-Compiler`_ for the PR.
- Release 4.0.0
* `PySide6 <https://pypi.org/project/PySide6>`__ and `PyQt6 <https://pypi.org/project/PyQt6>`__ (6.1+)
are now supported. Thanks `@jensheilman`_ and `@The-Compiler`_ for the PRs (`#328`_, `#330`_).
* ``pytest-qt`` now requires Python 3.6+.
* When using PyQt5, ``pytest-qt`` now requires PyQt5 5.11 or newer (`#330`_).
* Support for Qt4 (i.e. ``PyQt4`` and ``PySide``) is now dropped (`#279`_).
* The ``qtbot.waitActive`` and ``qtbot.waitExposed`` context managers are now
available with all Qt APIs, rather than only PyQt5 (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The ``qtbot.waitForWindowShown`` method is deprecated, as the underlying Qt
method was obsoleted in Qt 5.0 and removed in Qt 6.0. Its name is imprecise and
the pytest-qt wrapper does not raise TimeoutError if the window wasn't shown.
Please use the ``qtbot.waitExposed`` context manager instead (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The old ``qtbot.stopForInteraction()`` name is now removed as it was
cumbersome and rarely used. Use ``qtbot.stop()`` (added in 1.1.1) instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``SignalTimeoutError`` exception alias is now removed, as it was renamed to
``TimeoutError`` in 2.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``qt_wait_signal_raising`` option is now removed, as it was renamed to
``qt_default_raising`` in 3.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* ``qtbot.waitSignal`` and ``waitSignals`` (as well as their PEP-8 aliases)
supported passing ``None`` as signal, making them wait for the given timeout
instead. This is not supported anymore, use ``qtbot.wait(ms)`` instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* Various arguments to ``qtbot`` methods are now keyword-only (`#366`_):
* ``qtbot.waitActive``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitExposed``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitSignal``: ``timeout``, ``raising`` and ``check_params_cb`` (``signal`` being the only positional argument)
* ``qtbot.waitSignals``: ``timeout``, ``raising`` and ``check_params_cbs`` (``signals`` being the only positional argument)
* ``qtbot.assertNotEmitted``: ``wait`` (``signal`` being the only positional argument)
* ``qtbot.waitUntil``: ``timeout`` (``callback`` being the only positional argument)
* ``qtbot.waitCallback``: ``timeout`` and ``raising`` (with no positional arguments)
The same applies to the respective PEP-8 aliases. Thanks `@The-Compiler`_ for
the PR.
* Various classes are now not importable from ``pytestqt.plugin`` anymore, and
should instead be imported from the module they're residing in since the 1.6.0
release (`#306`_):
* ``pytestqt.plugin.QtBot`` -> ``pytestqt.qtbot.QtBot``
* ``pytestqt.plugin.SignalBlocker`` -> ``pytestqt.wait_signal.SignalBlocker``
* ``pytestqt.plugin.MultiSignalBlocker`` -> ``pytestqt.wait_signal.MultiSignalBlocker``
* ``pytestqt.plugin.Record`` -> ``pytestqt.logging.Record``
* ``pytestqt.plugin.capture_exceptions`` ->
``pytestqt.exceptions.capture_exceptions`` (but consider using
``qtbot.capture_exceptions`` instead)
* ``pytestqt.plugin.format_captured_exceptions`` ->
``pytestqt.exceptions.format_captured_exceptions``
* The ``qt_api.extract_from_variant`` and ``qt_api.make_variant`` functions
(which were never intended for public usage) as well as all class aliases
(such as ``qt_api.QWidget`` or ``qt_api.QEvent``, among others) are now
removed. Thanks `@The-Compiler`_ for the PR.
* The default timeouts for ``qtbot.waitSignal``, ``waitSignals``, ``waitUntil``
and ``waitCallback``, ``waitActive`` and ``waitExposed`` have been raised from
1s to 5s. This makes them in line the default timeout used by Qt's underlying
methods such as ``QSignalSpy::wait``. To get the old behavior back, explicitly
pass ``timeout=1000`` to those functions (`#306`_). Thanks `@The-Compiler`_
for the PR.
* ``waitUntil`` now raises a ``TimeoutError`` when a timeout occurs to make the
cause of the timeout more explict (`#222`_). Thanks `@karlch`_ for the PR.
* The ``QtTest::keySequence`` method is now exposed (if available, with Qt >=
5.10) (`#289`_). Thanks `@The-Compiler`_ for the PR.
* ``addWidget`` now enforces that its argument is a ``QWidget`` in order to
display a clearer error when this isn't the case (`#290`_). Thanks
`@The-Compiler`_ for the PR.
* New option ``qt_qapp_name`` can be used to set the name of the
``QApplication`` created by ``pytest-qt``, defaulting to ``"pytest-qt-qapp"``
(`#302`_). Thanks `@The-Compiler`_ for the PR.
* When the ``-s`` (``--capture=no``) argument is passed to pytest, Qt log
capturing is now disabled as well (`#300`_). Thanks `@The-Compiler`_ for the PR.
* PEP-8 aliases (``add_widget``, ``wait_active``, etc) are no longer just simple
assignments to the methods, but they are real methods which call the normal
implementations. This makes subclasses work as expected, instead of having to
duplicate the assignment (`#326`_, `#333`_). Thanks `@oliveira-mauricio`_ and
`@jensheilman`_ for the PRs.
* Errors related to the ``qt_compat`` module (such as an invalid
``PYTEST_QT_API`` setting or missing Qt API wrappers) are now shown as a more
human-readable error message rather than an internal pytest error (`#355`_). Thanks
`@The-Compiler`_ for the PR.
OBS-URL: https://build.opensuse.org/request/show/905961
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:pytest/python-pytest-qt?expand=0&rev=12
2021-07-13 11:06:16 +02:00
|
|
|
%define test_qtapi pyside6
|
2023-05-20 12:55:42 +02:00
|
|
|
# invalid traceback gh#pytest-dev/pytest-qt#488
|
|
|
|
%define testflavorargs --ignore tests/test_exceptions.py
|
Accepting request 905961 from home:bnavigator:branches:devel:languages:python:pytest
- Allow either of the valid Qt binding implementations, do not hard
require python-qt5
- Enable multibuild for tests with different implementations
* Pyside2, PyQt5, PyQt6
* Prepared for Pyside6
- Update to version 4.0.2
* Restored compatibility with PySide2 5.11, which doesn't depend on the
``shiboken2`` project, used by pytest-qt 4.0.0. The dependency is now not
needed anymore, and the ``.isdeleted`` attribute of ``qt_compat`` (which
isn't intended for public use) is removed.
- Release 4.0.1
* The ``sip`` module now gets imported directly if ``PyQt5.sip`` /
``PyQt6.sip`` wasn't found, as it's still packaged like that in some
distributions (`#369`_). Thanks `@The-Compiler`_ for the PR.
- Release 4.0.0
* `PySide6 <https://pypi.org/project/PySide6>`__ and `PyQt6 <https://pypi.org/project/PyQt6>`__ (6.1+)
are now supported. Thanks `@jensheilman`_ and `@The-Compiler`_ for the PRs (`#328`_, `#330`_).
* ``pytest-qt`` now requires Python 3.6+.
* When using PyQt5, ``pytest-qt`` now requires PyQt5 5.11 or newer (`#330`_).
* Support for Qt4 (i.e. ``PyQt4`` and ``PySide``) is now dropped (`#279`_).
* The ``qtbot.waitActive`` and ``qtbot.waitExposed`` context managers are now
available with all Qt APIs, rather than only PyQt5 (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The ``qtbot.waitForWindowShown`` method is deprecated, as the underlying Qt
method was obsoleted in Qt 5.0 and removed in Qt 6.0. Its name is imprecise and
the pytest-qt wrapper does not raise TimeoutError if the window wasn't shown.
Please use the ``qtbot.waitExposed`` context manager instead (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The old ``qtbot.stopForInteraction()`` name is now removed as it was
cumbersome and rarely used. Use ``qtbot.stop()`` (added in 1.1.1) instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``SignalTimeoutError`` exception alias is now removed, as it was renamed to
``TimeoutError`` in 2.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``qt_wait_signal_raising`` option is now removed, as it was renamed to
``qt_default_raising`` in 3.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* ``qtbot.waitSignal`` and ``waitSignals`` (as well as their PEP-8 aliases)
supported passing ``None`` as signal, making them wait for the given timeout
instead. This is not supported anymore, use ``qtbot.wait(ms)`` instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* Various arguments to ``qtbot`` methods are now keyword-only (`#366`_):
* ``qtbot.waitActive``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitExposed``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitSignal``: ``timeout``, ``raising`` and ``check_params_cb`` (``signal`` being the only positional argument)
* ``qtbot.waitSignals``: ``timeout``, ``raising`` and ``check_params_cbs`` (``signals`` being the only positional argument)
* ``qtbot.assertNotEmitted``: ``wait`` (``signal`` being the only positional argument)
* ``qtbot.waitUntil``: ``timeout`` (``callback`` being the only positional argument)
* ``qtbot.waitCallback``: ``timeout`` and ``raising`` (with no positional arguments)
The same applies to the respective PEP-8 aliases. Thanks `@The-Compiler`_ for
the PR.
* Various classes are now not importable from ``pytestqt.plugin`` anymore, and
should instead be imported from the module they're residing in since the 1.6.0
release (`#306`_):
* ``pytestqt.plugin.QtBot`` -> ``pytestqt.qtbot.QtBot``
* ``pytestqt.plugin.SignalBlocker`` -> ``pytestqt.wait_signal.SignalBlocker``
* ``pytestqt.plugin.MultiSignalBlocker`` -> ``pytestqt.wait_signal.MultiSignalBlocker``
* ``pytestqt.plugin.Record`` -> ``pytestqt.logging.Record``
* ``pytestqt.plugin.capture_exceptions`` ->
``pytestqt.exceptions.capture_exceptions`` (but consider using
``qtbot.capture_exceptions`` instead)
* ``pytestqt.plugin.format_captured_exceptions`` ->
``pytestqt.exceptions.format_captured_exceptions``
* The ``qt_api.extract_from_variant`` and ``qt_api.make_variant`` functions
(which were never intended for public usage) as well as all class aliases
(such as ``qt_api.QWidget`` or ``qt_api.QEvent``, among others) are now
removed. Thanks `@The-Compiler`_ for the PR.
* The default timeouts for ``qtbot.waitSignal``, ``waitSignals``, ``waitUntil``
and ``waitCallback``, ``waitActive`` and ``waitExposed`` have been raised from
1s to 5s. This makes them in line the default timeout used by Qt's underlying
methods such as ``QSignalSpy::wait``. To get the old behavior back, explicitly
pass ``timeout=1000`` to those functions (`#306`_). Thanks `@The-Compiler`_
for the PR.
* ``waitUntil`` now raises a ``TimeoutError`` when a timeout occurs to make the
cause of the timeout more explict (`#222`_). Thanks `@karlch`_ for the PR.
* The ``QtTest::keySequence`` method is now exposed (if available, with Qt >=
5.10) (`#289`_). Thanks `@The-Compiler`_ for the PR.
* ``addWidget`` now enforces that its argument is a ``QWidget`` in order to
display a clearer error when this isn't the case (`#290`_). Thanks
`@The-Compiler`_ for the PR.
* New option ``qt_qapp_name`` can be used to set the name of the
``QApplication`` created by ``pytest-qt``, defaulting to ``"pytest-qt-qapp"``
(`#302`_). Thanks `@The-Compiler`_ for the PR.
* When the ``-s`` (``--capture=no``) argument is passed to pytest, Qt log
capturing is now disabled as well (`#300`_). Thanks `@The-Compiler`_ for the PR.
* PEP-8 aliases (``add_widget``, ``wait_active``, etc) are no longer just simple
assignments to the methods, but they are real methods which call the normal
implementations. This makes subclasses work as expected, instead of having to
duplicate the assignment (`#326`_, `#333`_). Thanks `@oliveira-mauricio`_ and
`@jensheilman`_ for the PRs.
* Errors related to the ``qt_compat`` module (such as an invalid
``PYTEST_QT_API`` setting or missing Qt API wrappers) are now shown as a more
human-readable error message rather than an internal pytest error (`#355`_). Thanks
`@The-Compiler`_ for the PR.
OBS-URL: https://build.opensuse.org/request/show/905961
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:pytest/python-pytest-qt?expand=0&rev=12
2021-07-13 11:06:16 +02:00
|
|
|
%bcond_without test
|
|
|
|
BuildRequires: %{python_module pyside6}
|
|
|
|
BuildConflicts: %{python_module PyQt6}
|
|
|
|
BuildConflicts: %{python_module pyside2}
|
|
|
|
BuildConflicts: %{python_module qt5}
|
|
|
|
%endif
|
|
|
|
Name: python-pytest-qt%{psuffix}
|
2024-03-16 10:34:55 +01:00
|
|
|
Version: 4.4.0
|
2017-08-30 16:22:12 +02:00
|
|
|
Release: 0
|
|
|
|
Summary: Pytest support for PyQt and PySide applications
|
|
|
|
License: MIT
|
|
|
|
Group: Development/Languages/Python
|
Accepting request 905961 from home:bnavigator:branches:devel:languages:python:pytest
- Allow either of the valid Qt binding implementations, do not hard
require python-qt5
- Enable multibuild for tests with different implementations
* Pyside2, PyQt5, PyQt6
* Prepared for Pyside6
- Update to version 4.0.2
* Restored compatibility with PySide2 5.11, which doesn't depend on the
``shiboken2`` project, used by pytest-qt 4.0.0. The dependency is now not
needed anymore, and the ``.isdeleted`` attribute of ``qt_compat`` (which
isn't intended for public use) is removed.
- Release 4.0.1
* The ``sip`` module now gets imported directly if ``PyQt5.sip`` /
``PyQt6.sip`` wasn't found, as it's still packaged like that in some
distributions (`#369`_). Thanks `@The-Compiler`_ for the PR.
- Release 4.0.0
* `PySide6 <https://pypi.org/project/PySide6>`__ and `PyQt6 <https://pypi.org/project/PyQt6>`__ (6.1+)
are now supported. Thanks `@jensheilman`_ and `@The-Compiler`_ for the PRs (`#328`_, `#330`_).
* ``pytest-qt`` now requires Python 3.6+.
* When using PyQt5, ``pytest-qt`` now requires PyQt5 5.11 or newer (`#330`_).
* Support for Qt4 (i.e. ``PyQt4`` and ``PySide``) is now dropped (`#279`_).
* The ``qtbot.waitActive`` and ``qtbot.waitExposed`` context managers are now
available with all Qt APIs, rather than only PyQt5 (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The ``qtbot.waitForWindowShown`` method is deprecated, as the underlying Qt
method was obsoleted in Qt 5.0 and removed in Qt 6.0. Its name is imprecise and
the pytest-qt wrapper does not raise TimeoutError if the window wasn't shown.
Please use the ``qtbot.waitExposed`` context manager instead (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The old ``qtbot.stopForInteraction()`` name is now removed as it was
cumbersome and rarely used. Use ``qtbot.stop()`` (added in 1.1.1) instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``SignalTimeoutError`` exception alias is now removed, as it was renamed to
``TimeoutError`` in 2.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``qt_wait_signal_raising`` option is now removed, as it was renamed to
``qt_default_raising`` in 3.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* ``qtbot.waitSignal`` and ``waitSignals`` (as well as their PEP-8 aliases)
supported passing ``None`` as signal, making them wait for the given timeout
instead. This is not supported anymore, use ``qtbot.wait(ms)`` instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* Various arguments to ``qtbot`` methods are now keyword-only (`#366`_):
* ``qtbot.waitActive``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitExposed``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitSignal``: ``timeout``, ``raising`` and ``check_params_cb`` (``signal`` being the only positional argument)
* ``qtbot.waitSignals``: ``timeout``, ``raising`` and ``check_params_cbs`` (``signals`` being the only positional argument)
* ``qtbot.assertNotEmitted``: ``wait`` (``signal`` being the only positional argument)
* ``qtbot.waitUntil``: ``timeout`` (``callback`` being the only positional argument)
* ``qtbot.waitCallback``: ``timeout`` and ``raising`` (with no positional arguments)
The same applies to the respective PEP-8 aliases. Thanks `@The-Compiler`_ for
the PR.
* Various classes are now not importable from ``pytestqt.plugin`` anymore, and
should instead be imported from the module they're residing in since the 1.6.0
release (`#306`_):
* ``pytestqt.plugin.QtBot`` -> ``pytestqt.qtbot.QtBot``
* ``pytestqt.plugin.SignalBlocker`` -> ``pytestqt.wait_signal.SignalBlocker``
* ``pytestqt.plugin.MultiSignalBlocker`` -> ``pytestqt.wait_signal.MultiSignalBlocker``
* ``pytestqt.plugin.Record`` -> ``pytestqt.logging.Record``
* ``pytestqt.plugin.capture_exceptions`` ->
``pytestqt.exceptions.capture_exceptions`` (but consider using
``qtbot.capture_exceptions`` instead)
* ``pytestqt.plugin.format_captured_exceptions`` ->
``pytestqt.exceptions.format_captured_exceptions``
* The ``qt_api.extract_from_variant`` and ``qt_api.make_variant`` functions
(which were never intended for public usage) as well as all class aliases
(such as ``qt_api.QWidget`` or ``qt_api.QEvent``, among others) are now
removed. Thanks `@The-Compiler`_ for the PR.
* The default timeouts for ``qtbot.waitSignal``, ``waitSignals``, ``waitUntil``
and ``waitCallback``, ``waitActive`` and ``waitExposed`` have been raised from
1s to 5s. This makes them in line the default timeout used by Qt's underlying
methods such as ``QSignalSpy::wait``. To get the old behavior back, explicitly
pass ``timeout=1000`` to those functions (`#306`_). Thanks `@The-Compiler`_
for the PR.
* ``waitUntil`` now raises a ``TimeoutError`` when a timeout occurs to make the
cause of the timeout more explict (`#222`_). Thanks `@karlch`_ for the PR.
* The ``QtTest::keySequence`` method is now exposed (if available, with Qt >=
5.10) (`#289`_). Thanks `@The-Compiler`_ for the PR.
* ``addWidget`` now enforces that its argument is a ``QWidget`` in order to
display a clearer error when this isn't the case (`#290`_). Thanks
`@The-Compiler`_ for the PR.
* New option ``qt_qapp_name`` can be used to set the name of the
``QApplication`` created by ``pytest-qt``, defaulting to ``"pytest-qt-qapp"``
(`#302`_). Thanks `@The-Compiler`_ for the PR.
* When the ``-s`` (``--capture=no``) argument is passed to pytest, Qt log
capturing is now disabled as well (`#300`_). Thanks `@The-Compiler`_ for the PR.
* PEP-8 aliases (``add_widget``, ``wait_active``, etc) are no longer just simple
assignments to the methods, but they are real methods which call the normal
implementations. This makes subclasses work as expected, instead of having to
duplicate the assignment (`#326`_, `#333`_). Thanks `@oliveira-mauricio`_ and
`@jensheilman`_ for the PRs.
* Errors related to the ``qt_compat`` module (such as an invalid
``PYTEST_QT_API`` setting or missing Qt API wrappers) are now shown as a more
human-readable error message rather than an internal pytest error (`#355`_). Thanks
`@The-Compiler`_ for the PR.
OBS-URL: https://build.opensuse.org/request/show/905961
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:pytest/python-pytest-qt?expand=0&rev=12
2021-07-13 11:06:16 +02:00
|
|
|
URL: https://github.com/pytest-dev/pytest-qt
|
2017-08-30 16:22:12 +02:00
|
|
|
Source: https://files.pythonhosted.org/packages/source/p/pytest-qt/pytest-qt-%{version}.tar.gz
|
2024-01-05 18:13:34 +01:00
|
|
|
BuildRequires: %{python_module base >= 3.8}
|
2023-05-20 12:55:42 +02:00
|
|
|
BuildRequires: %{python_module pip}
|
2017-08-30 16:22:12 +02:00
|
|
|
BuildRequires: %{python_module setuptools_scm}
|
|
|
|
BuildRequires: %{python_module setuptools}
|
2023-05-20 12:55:42 +02:00
|
|
|
BuildRequires: %{python_module wheel}
|
2018-05-15 10:14:27 +02:00
|
|
|
BuildRequires: dos2unix
|
2017-08-30 16:22:12 +02:00
|
|
|
BuildRequires: fdupes
|
Accepting request 905961 from home:bnavigator:branches:devel:languages:python:pytest
- Allow either of the valid Qt binding implementations, do not hard
require python-qt5
- Enable multibuild for tests with different implementations
* Pyside2, PyQt5, PyQt6
* Prepared for Pyside6
- Update to version 4.0.2
* Restored compatibility with PySide2 5.11, which doesn't depend on the
``shiboken2`` project, used by pytest-qt 4.0.0. The dependency is now not
needed anymore, and the ``.isdeleted`` attribute of ``qt_compat`` (which
isn't intended for public use) is removed.
- Release 4.0.1
* The ``sip`` module now gets imported directly if ``PyQt5.sip`` /
``PyQt6.sip`` wasn't found, as it's still packaged like that in some
distributions (`#369`_). Thanks `@The-Compiler`_ for the PR.
- Release 4.0.0
* `PySide6 <https://pypi.org/project/PySide6>`__ and `PyQt6 <https://pypi.org/project/PyQt6>`__ (6.1+)
are now supported. Thanks `@jensheilman`_ and `@The-Compiler`_ for the PRs (`#328`_, `#330`_).
* ``pytest-qt`` now requires Python 3.6+.
* When using PyQt5, ``pytest-qt`` now requires PyQt5 5.11 or newer (`#330`_).
* Support for Qt4 (i.e. ``PyQt4`` and ``PySide``) is now dropped (`#279`_).
* The ``qtbot.waitActive`` and ``qtbot.waitExposed`` context managers are now
available with all Qt APIs, rather than only PyQt5 (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The ``qtbot.waitForWindowShown`` method is deprecated, as the underlying Qt
method was obsoleted in Qt 5.0 and removed in Qt 6.0. Its name is imprecise and
the pytest-qt wrapper does not raise TimeoutError if the window wasn't shown.
Please use the ``qtbot.waitExposed`` context manager instead (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The old ``qtbot.stopForInteraction()`` name is now removed as it was
cumbersome and rarely used. Use ``qtbot.stop()`` (added in 1.1.1) instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``SignalTimeoutError`` exception alias is now removed, as it was renamed to
``TimeoutError`` in 2.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``qt_wait_signal_raising`` option is now removed, as it was renamed to
``qt_default_raising`` in 3.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* ``qtbot.waitSignal`` and ``waitSignals`` (as well as their PEP-8 aliases)
supported passing ``None`` as signal, making them wait for the given timeout
instead. This is not supported anymore, use ``qtbot.wait(ms)`` instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* Various arguments to ``qtbot`` methods are now keyword-only (`#366`_):
* ``qtbot.waitActive``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitExposed``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitSignal``: ``timeout``, ``raising`` and ``check_params_cb`` (``signal`` being the only positional argument)
* ``qtbot.waitSignals``: ``timeout``, ``raising`` and ``check_params_cbs`` (``signals`` being the only positional argument)
* ``qtbot.assertNotEmitted``: ``wait`` (``signal`` being the only positional argument)
* ``qtbot.waitUntil``: ``timeout`` (``callback`` being the only positional argument)
* ``qtbot.waitCallback``: ``timeout`` and ``raising`` (with no positional arguments)
The same applies to the respective PEP-8 aliases. Thanks `@The-Compiler`_ for
the PR.
* Various classes are now not importable from ``pytestqt.plugin`` anymore, and
should instead be imported from the module they're residing in since the 1.6.0
release (`#306`_):
* ``pytestqt.plugin.QtBot`` -> ``pytestqt.qtbot.QtBot``
* ``pytestqt.plugin.SignalBlocker`` -> ``pytestqt.wait_signal.SignalBlocker``
* ``pytestqt.plugin.MultiSignalBlocker`` -> ``pytestqt.wait_signal.MultiSignalBlocker``
* ``pytestqt.plugin.Record`` -> ``pytestqt.logging.Record``
* ``pytestqt.plugin.capture_exceptions`` ->
``pytestqt.exceptions.capture_exceptions`` (but consider using
``qtbot.capture_exceptions`` instead)
* ``pytestqt.plugin.format_captured_exceptions`` ->
``pytestqt.exceptions.format_captured_exceptions``
* The ``qt_api.extract_from_variant`` and ``qt_api.make_variant`` functions
(which were never intended for public usage) as well as all class aliases
(such as ``qt_api.QWidget`` or ``qt_api.QEvent``, among others) are now
removed. Thanks `@The-Compiler`_ for the PR.
* The default timeouts for ``qtbot.waitSignal``, ``waitSignals``, ``waitUntil``
and ``waitCallback``, ``waitActive`` and ``waitExposed`` have been raised from
1s to 5s. This makes them in line the default timeout used by Qt's underlying
methods such as ``QSignalSpy::wait``. To get the old behavior back, explicitly
pass ``timeout=1000`` to those functions (`#306`_). Thanks `@The-Compiler`_
for the PR.
* ``waitUntil`` now raises a ``TimeoutError`` when a timeout occurs to make the
cause of the timeout more explict (`#222`_). Thanks `@karlch`_ for the PR.
* The ``QtTest::keySequence`` method is now exposed (if available, with Qt >=
5.10) (`#289`_). Thanks `@The-Compiler`_ for the PR.
* ``addWidget`` now enforces that its argument is a ``QWidget`` in order to
display a clearer error when this isn't the case (`#290`_). Thanks
`@The-Compiler`_ for the PR.
* New option ``qt_qapp_name`` can be used to set the name of the
``QApplication`` created by ``pytest-qt``, defaulting to ``"pytest-qt-qapp"``
(`#302`_). Thanks `@The-Compiler`_ for the PR.
* When the ``-s`` (``--capture=no``) argument is passed to pytest, Qt log
capturing is now disabled as well (`#300`_). Thanks `@The-Compiler`_ for the PR.
* PEP-8 aliases (``add_widget``, ``wait_active``, etc) are no longer just simple
assignments to the methods, but they are real methods which call the normal
implementations. This makes subclasses work as expected, instead of having to
duplicate the assignment (`#326`_, `#333`_). Thanks `@oliveira-mauricio`_ and
`@jensheilman`_ for the PRs.
* Errors related to the ``qt_compat`` module (such as an invalid
``PYTEST_QT_API`` setting or missing Qt API wrappers) are now shown as a more
human-readable error message rather than an internal pytest error (`#355`_). Thanks
`@The-Compiler`_ for the PR.
OBS-URL: https://build.opensuse.org/request/show/905961
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:pytest/python-pytest-qt?expand=0&rev=12
2021-07-13 11:06:16 +02:00
|
|
|
BuildRequires: python-rpm-macros >= 20210608
|
2020-09-25 12:25:35 +02:00
|
|
|
# https://github.com/pytest-dev/pytest-qt/issues/317
|
Accepting request 905961 from home:bnavigator:branches:devel:languages:python:pytest
- Allow either of the valid Qt binding implementations, do not hard
require python-qt5
- Enable multibuild for tests with different implementations
* Pyside2, PyQt5, PyQt6
* Prepared for Pyside6
- Update to version 4.0.2
* Restored compatibility with PySide2 5.11, which doesn't depend on the
``shiboken2`` project, used by pytest-qt 4.0.0. The dependency is now not
needed anymore, and the ``.isdeleted`` attribute of ``qt_compat`` (which
isn't intended for public use) is removed.
- Release 4.0.1
* The ``sip`` module now gets imported directly if ``PyQt5.sip`` /
``PyQt6.sip`` wasn't found, as it's still packaged like that in some
distributions (`#369`_). Thanks `@The-Compiler`_ for the PR.
- Release 4.0.0
* `PySide6 <https://pypi.org/project/PySide6>`__ and `PyQt6 <https://pypi.org/project/PyQt6>`__ (6.1+)
are now supported. Thanks `@jensheilman`_ and `@The-Compiler`_ for the PRs (`#328`_, `#330`_).
* ``pytest-qt`` now requires Python 3.6+.
* When using PyQt5, ``pytest-qt`` now requires PyQt5 5.11 or newer (`#330`_).
* Support for Qt4 (i.e. ``PyQt4`` and ``PySide``) is now dropped (`#279`_).
* The ``qtbot.waitActive`` and ``qtbot.waitExposed`` context managers are now
available with all Qt APIs, rather than only PyQt5 (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The ``qtbot.waitForWindowShown`` method is deprecated, as the underlying Qt
method was obsoleted in Qt 5.0 and removed in Qt 6.0. Its name is imprecise and
the pytest-qt wrapper does not raise TimeoutError if the window wasn't shown.
Please use the ``qtbot.waitExposed`` context manager instead (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The old ``qtbot.stopForInteraction()`` name is now removed as it was
cumbersome and rarely used. Use ``qtbot.stop()`` (added in 1.1.1) instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``SignalTimeoutError`` exception alias is now removed, as it was renamed to
``TimeoutError`` in 2.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``qt_wait_signal_raising`` option is now removed, as it was renamed to
``qt_default_raising`` in 3.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* ``qtbot.waitSignal`` and ``waitSignals`` (as well as their PEP-8 aliases)
supported passing ``None`` as signal, making them wait for the given timeout
instead. This is not supported anymore, use ``qtbot.wait(ms)`` instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* Various arguments to ``qtbot`` methods are now keyword-only (`#366`_):
* ``qtbot.waitActive``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitExposed``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitSignal``: ``timeout``, ``raising`` and ``check_params_cb`` (``signal`` being the only positional argument)
* ``qtbot.waitSignals``: ``timeout``, ``raising`` and ``check_params_cbs`` (``signals`` being the only positional argument)
* ``qtbot.assertNotEmitted``: ``wait`` (``signal`` being the only positional argument)
* ``qtbot.waitUntil``: ``timeout`` (``callback`` being the only positional argument)
* ``qtbot.waitCallback``: ``timeout`` and ``raising`` (with no positional arguments)
The same applies to the respective PEP-8 aliases. Thanks `@The-Compiler`_ for
the PR.
* Various classes are now not importable from ``pytestqt.plugin`` anymore, and
should instead be imported from the module they're residing in since the 1.6.0
release (`#306`_):
* ``pytestqt.plugin.QtBot`` -> ``pytestqt.qtbot.QtBot``
* ``pytestqt.plugin.SignalBlocker`` -> ``pytestqt.wait_signal.SignalBlocker``
* ``pytestqt.plugin.MultiSignalBlocker`` -> ``pytestqt.wait_signal.MultiSignalBlocker``
* ``pytestqt.plugin.Record`` -> ``pytestqt.logging.Record``
* ``pytestqt.plugin.capture_exceptions`` ->
``pytestqt.exceptions.capture_exceptions`` (but consider using
``qtbot.capture_exceptions`` instead)
* ``pytestqt.plugin.format_captured_exceptions`` ->
``pytestqt.exceptions.format_captured_exceptions``
* The ``qt_api.extract_from_variant`` and ``qt_api.make_variant`` functions
(which were never intended for public usage) as well as all class aliases
(such as ``qt_api.QWidget`` or ``qt_api.QEvent``, among others) are now
removed. Thanks `@The-Compiler`_ for the PR.
* The default timeouts for ``qtbot.waitSignal``, ``waitSignals``, ``waitUntil``
and ``waitCallback``, ``waitActive`` and ``waitExposed`` have been raised from
1s to 5s. This makes them in line the default timeout used by Qt's underlying
methods such as ``QSignalSpy::wait``. To get the old behavior back, explicitly
pass ``timeout=1000`` to those functions (`#306`_). Thanks `@The-Compiler`_
for the PR.
* ``waitUntil`` now raises a ``TimeoutError`` when a timeout occurs to make the
cause of the timeout more explict (`#222`_). Thanks `@karlch`_ for the PR.
* The ``QtTest::keySequence`` method is now exposed (if available, with Qt >=
5.10) (`#289`_). Thanks `@The-Compiler`_ for the PR.
* ``addWidget`` now enforces that its argument is a ``QWidget`` in order to
display a clearer error when this isn't the case (`#290`_). Thanks
`@The-Compiler`_ for the PR.
* New option ``qt_qapp_name`` can be used to set the name of the
``QApplication`` created by ``pytest-qt``, defaulting to ``"pytest-qt-qapp"``
(`#302`_). Thanks `@The-Compiler`_ for the PR.
* When the ``-s`` (``--capture=no``) argument is passed to pytest, Qt log
capturing is now disabled as well (`#300`_). Thanks `@The-Compiler`_ for the PR.
* PEP-8 aliases (``add_widget``, ``wait_active``, etc) are no longer just simple
assignments to the methods, but they are real methods which call the normal
implementations. This makes subclasses work as expected, instead of having to
duplicate the assignment (`#326`_, `#333`_). Thanks `@oliveira-mauricio`_ and
`@jensheilman`_ for the PRs.
* Errors related to the ``qt_compat`` module (such as an invalid
``PYTEST_QT_API`` setting or missing Qt API wrappers) are now shown as a more
human-readable error message rather than an internal pytest error (`#355`_). Thanks
`@The-Compiler`_ for the PR.
OBS-URL: https://build.opensuse.org/request/show/905961
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:pytest/python-pytest-qt?expand=0&rev=12
2021-07-13 11:06:16 +02:00
|
|
|
Requires: bitstream-vera-fonts
|
|
|
|
Requires: python-pytest >= 3.0
|
|
|
|
Suggests: python-PyQt6
|
|
|
|
Suggests: python-pyside2
|
|
|
|
Suggests: python-pyside6
|
|
|
|
Suggests: python-qt5
|
2017-08-30 16:22:12 +02:00
|
|
|
BuildArch: noarch
|
Accepting request 905961 from home:bnavigator:branches:devel:languages:python:pytest
- Allow either of the valid Qt binding implementations, do not hard
require python-qt5
- Enable multibuild for tests with different implementations
* Pyside2, PyQt5, PyQt6
* Prepared for Pyside6
- Update to version 4.0.2
* Restored compatibility with PySide2 5.11, which doesn't depend on the
``shiboken2`` project, used by pytest-qt 4.0.0. The dependency is now not
needed anymore, and the ``.isdeleted`` attribute of ``qt_compat`` (which
isn't intended for public use) is removed.
- Release 4.0.1
* The ``sip`` module now gets imported directly if ``PyQt5.sip`` /
``PyQt6.sip`` wasn't found, as it's still packaged like that in some
distributions (`#369`_). Thanks `@The-Compiler`_ for the PR.
- Release 4.0.0
* `PySide6 <https://pypi.org/project/PySide6>`__ and `PyQt6 <https://pypi.org/project/PyQt6>`__ (6.1+)
are now supported. Thanks `@jensheilman`_ and `@The-Compiler`_ for the PRs (`#328`_, `#330`_).
* ``pytest-qt`` now requires Python 3.6+.
* When using PyQt5, ``pytest-qt`` now requires PyQt5 5.11 or newer (`#330`_).
* Support for Qt4 (i.e. ``PyQt4`` and ``PySide``) is now dropped (`#279`_).
* The ``qtbot.waitActive`` and ``qtbot.waitExposed`` context managers are now
available with all Qt APIs, rather than only PyQt5 (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The ``qtbot.waitForWindowShown`` method is deprecated, as the underlying Qt
method was obsoleted in Qt 5.0 and removed in Qt 6.0. Its name is imprecise and
the pytest-qt wrapper does not raise TimeoutError if the window wasn't shown.
Please use the ``qtbot.waitExposed`` context manager instead (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The old ``qtbot.stopForInteraction()`` name is now removed as it was
cumbersome and rarely used. Use ``qtbot.stop()`` (added in 1.1.1) instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``SignalTimeoutError`` exception alias is now removed, as it was renamed to
``TimeoutError`` in 2.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``qt_wait_signal_raising`` option is now removed, as it was renamed to
``qt_default_raising`` in 3.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* ``qtbot.waitSignal`` and ``waitSignals`` (as well as their PEP-8 aliases)
supported passing ``None`` as signal, making them wait for the given timeout
instead. This is not supported anymore, use ``qtbot.wait(ms)`` instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* Various arguments to ``qtbot`` methods are now keyword-only (`#366`_):
* ``qtbot.waitActive``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitExposed``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitSignal``: ``timeout``, ``raising`` and ``check_params_cb`` (``signal`` being the only positional argument)
* ``qtbot.waitSignals``: ``timeout``, ``raising`` and ``check_params_cbs`` (``signals`` being the only positional argument)
* ``qtbot.assertNotEmitted``: ``wait`` (``signal`` being the only positional argument)
* ``qtbot.waitUntil``: ``timeout`` (``callback`` being the only positional argument)
* ``qtbot.waitCallback``: ``timeout`` and ``raising`` (with no positional arguments)
The same applies to the respective PEP-8 aliases. Thanks `@The-Compiler`_ for
the PR.
* Various classes are now not importable from ``pytestqt.plugin`` anymore, and
should instead be imported from the module they're residing in since the 1.6.0
release (`#306`_):
* ``pytestqt.plugin.QtBot`` -> ``pytestqt.qtbot.QtBot``
* ``pytestqt.plugin.SignalBlocker`` -> ``pytestqt.wait_signal.SignalBlocker``
* ``pytestqt.plugin.MultiSignalBlocker`` -> ``pytestqt.wait_signal.MultiSignalBlocker``
* ``pytestqt.plugin.Record`` -> ``pytestqt.logging.Record``
* ``pytestqt.plugin.capture_exceptions`` ->
``pytestqt.exceptions.capture_exceptions`` (but consider using
``qtbot.capture_exceptions`` instead)
* ``pytestqt.plugin.format_captured_exceptions`` ->
``pytestqt.exceptions.format_captured_exceptions``
* The ``qt_api.extract_from_variant`` and ``qt_api.make_variant`` functions
(which were never intended for public usage) as well as all class aliases
(such as ``qt_api.QWidget`` or ``qt_api.QEvent``, among others) are now
removed. Thanks `@The-Compiler`_ for the PR.
* The default timeouts for ``qtbot.waitSignal``, ``waitSignals``, ``waitUntil``
and ``waitCallback``, ``waitActive`` and ``waitExposed`` have been raised from
1s to 5s. This makes them in line the default timeout used by Qt's underlying
methods such as ``QSignalSpy::wait``. To get the old behavior back, explicitly
pass ``timeout=1000`` to those functions (`#306`_). Thanks `@The-Compiler`_
for the PR.
* ``waitUntil`` now raises a ``TimeoutError`` when a timeout occurs to make the
cause of the timeout more explict (`#222`_). Thanks `@karlch`_ for the PR.
* The ``QtTest::keySequence`` method is now exposed (if available, with Qt >=
5.10) (`#289`_). Thanks `@The-Compiler`_ for the PR.
* ``addWidget`` now enforces that its argument is a ``QWidget`` in order to
display a clearer error when this isn't the case (`#290`_). Thanks
`@The-Compiler`_ for the PR.
* New option ``qt_qapp_name`` can be used to set the name of the
``QApplication`` created by ``pytest-qt``, defaulting to ``"pytest-qt-qapp"``
(`#302`_). Thanks `@The-Compiler`_ for the PR.
* When the ``-s`` (``--capture=no``) argument is passed to pytest, Qt log
capturing is now disabled as well (`#300`_). Thanks `@The-Compiler`_ for the PR.
* PEP-8 aliases (``add_widget``, ``wait_active``, etc) are no longer just simple
assignments to the methods, but they are real methods which call the normal
implementations. This makes subclasses work as expected, instead of having to
duplicate the assignment (`#326`_, `#333`_). Thanks `@oliveira-mauricio`_ and
`@jensheilman`_ for the PRs.
* Errors related to the ``qt_compat`` module (such as an invalid
``PYTEST_QT_API`` setting or missing Qt API wrappers) are now shown as a more
human-readable error message rather than an internal pytest error (`#355`_). Thanks
`@The-Compiler`_ for the PR.
OBS-URL: https://build.opensuse.org/request/show/905961
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:pytest/python-pytest-qt?expand=0&rev=12
2021-07-13 11:06:16 +02:00
|
|
|
%if %{with test}
|
|
|
|
BuildRequires: %{python_module pytest-qt = %{version}}
|
2022-07-04 23:43:28 +02:00
|
|
|
BuildRequires: %{python_module pytest}
|
Accepting request 905961 from home:bnavigator:branches:devel:languages:python:pytest
- Allow either of the valid Qt binding implementations, do not hard
require python-qt5
- Enable multibuild for tests with different implementations
* Pyside2, PyQt5, PyQt6
* Prepared for Pyside6
- Update to version 4.0.2
* Restored compatibility with PySide2 5.11, which doesn't depend on the
``shiboken2`` project, used by pytest-qt 4.0.0. The dependency is now not
needed anymore, and the ``.isdeleted`` attribute of ``qt_compat`` (which
isn't intended for public use) is removed.
- Release 4.0.1
* The ``sip`` module now gets imported directly if ``PyQt5.sip`` /
``PyQt6.sip`` wasn't found, as it's still packaged like that in some
distributions (`#369`_). Thanks `@The-Compiler`_ for the PR.
- Release 4.0.0
* `PySide6 <https://pypi.org/project/PySide6>`__ and `PyQt6 <https://pypi.org/project/PyQt6>`__ (6.1+)
are now supported. Thanks `@jensheilman`_ and `@The-Compiler`_ for the PRs (`#328`_, `#330`_).
* ``pytest-qt`` now requires Python 3.6+.
* When using PyQt5, ``pytest-qt`` now requires PyQt5 5.11 or newer (`#330`_).
* Support for Qt4 (i.e. ``PyQt4`` and ``PySide``) is now dropped (`#279`_).
* The ``qtbot.waitActive`` and ``qtbot.waitExposed`` context managers are now
available with all Qt APIs, rather than only PyQt5 (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The ``qtbot.waitForWindowShown`` method is deprecated, as the underlying Qt
method was obsoleted in Qt 5.0 and removed in Qt 6.0. Its name is imprecise and
the pytest-qt wrapper does not raise TimeoutError if the window wasn't shown.
Please use the ``qtbot.waitExposed`` context manager instead (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The old ``qtbot.stopForInteraction()`` name is now removed as it was
cumbersome and rarely used. Use ``qtbot.stop()`` (added in 1.1.1) instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``SignalTimeoutError`` exception alias is now removed, as it was renamed to
``TimeoutError`` in 2.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``qt_wait_signal_raising`` option is now removed, as it was renamed to
``qt_default_raising`` in 3.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* ``qtbot.waitSignal`` and ``waitSignals`` (as well as their PEP-8 aliases)
supported passing ``None`` as signal, making them wait for the given timeout
instead. This is not supported anymore, use ``qtbot.wait(ms)`` instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* Various arguments to ``qtbot`` methods are now keyword-only (`#366`_):
* ``qtbot.waitActive``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitExposed``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitSignal``: ``timeout``, ``raising`` and ``check_params_cb`` (``signal`` being the only positional argument)
* ``qtbot.waitSignals``: ``timeout``, ``raising`` and ``check_params_cbs`` (``signals`` being the only positional argument)
* ``qtbot.assertNotEmitted``: ``wait`` (``signal`` being the only positional argument)
* ``qtbot.waitUntil``: ``timeout`` (``callback`` being the only positional argument)
* ``qtbot.waitCallback``: ``timeout`` and ``raising`` (with no positional arguments)
The same applies to the respective PEP-8 aliases. Thanks `@The-Compiler`_ for
the PR.
* Various classes are now not importable from ``pytestqt.plugin`` anymore, and
should instead be imported from the module they're residing in since the 1.6.0
release (`#306`_):
* ``pytestqt.plugin.QtBot`` -> ``pytestqt.qtbot.QtBot``
* ``pytestqt.plugin.SignalBlocker`` -> ``pytestqt.wait_signal.SignalBlocker``
* ``pytestqt.plugin.MultiSignalBlocker`` -> ``pytestqt.wait_signal.MultiSignalBlocker``
* ``pytestqt.plugin.Record`` -> ``pytestqt.logging.Record``
* ``pytestqt.plugin.capture_exceptions`` ->
``pytestqt.exceptions.capture_exceptions`` (but consider using
``qtbot.capture_exceptions`` instead)
* ``pytestqt.plugin.format_captured_exceptions`` ->
``pytestqt.exceptions.format_captured_exceptions``
* The ``qt_api.extract_from_variant`` and ``qt_api.make_variant`` functions
(which were never intended for public usage) as well as all class aliases
(such as ``qt_api.QWidget`` or ``qt_api.QEvent``, among others) are now
removed. Thanks `@The-Compiler`_ for the PR.
* The default timeouts for ``qtbot.waitSignal``, ``waitSignals``, ``waitUntil``
and ``waitCallback``, ``waitActive`` and ``waitExposed`` have been raised from
1s to 5s. This makes them in line the default timeout used by Qt's underlying
methods such as ``QSignalSpy::wait``. To get the old behavior back, explicitly
pass ``timeout=1000`` to those functions (`#306`_). Thanks `@The-Compiler`_
for the PR.
* ``waitUntil`` now raises a ``TimeoutError`` when a timeout occurs to make the
cause of the timeout more explict (`#222`_). Thanks `@karlch`_ for the PR.
* The ``QtTest::keySequence`` method is now exposed (if available, with Qt >=
5.10) (`#289`_). Thanks `@The-Compiler`_ for the PR.
* ``addWidget`` now enforces that its argument is a ``QWidget`` in order to
display a clearer error when this isn't the case (`#290`_). Thanks
`@The-Compiler`_ for the PR.
* New option ``qt_qapp_name`` can be used to set the name of the
``QApplication`` created by ``pytest-qt``, defaulting to ``"pytest-qt-qapp"``
(`#302`_). Thanks `@The-Compiler`_ for the PR.
* When the ``-s`` (``--capture=no``) argument is passed to pytest, Qt log
capturing is now disabled as well (`#300`_). Thanks `@The-Compiler`_ for the PR.
* PEP-8 aliases (``add_widget``, ``wait_active``, etc) are no longer just simple
assignments to the methods, but they are real methods which call the normal
implementations. This makes subclasses work as expected, instead of having to
duplicate the assignment (`#326`_, `#333`_). Thanks `@oliveira-mauricio`_ and
`@jensheilman`_ for the PRs.
* Errors related to the ``qt_compat`` module (such as an invalid
``PYTEST_QT_API`` setting or missing Qt API wrappers) are now shown as a more
human-readable error message rather than an internal pytest error (`#355`_). Thanks
`@The-Compiler`_ for the PR.
OBS-URL: https://build.opensuse.org/request/show/905961
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:pytest/python-pytest-qt?expand=0&rev=12
2021-07-13 11:06:16 +02:00
|
|
|
%endif
|
2017-08-30 16:22:12 +02:00
|
|
|
%python_subpackages
|
|
|
|
|
|
|
|
%description
|
|
|
|
Pytest-qt is a pytest plugin that allows programmers to write tests
|
|
|
|
for PySide and PyQt applications.
|
|
|
|
|
2018-05-15 10:14:27 +02:00
|
|
|
The main usage is to use the `qtbot` fixture, responsible for handling `qApp`
|
|
|
|
creation as needed and provides methods to simulate user interaction,
|
2017-08-30 16:22:12 +02:00
|
|
|
like key presses and mouse clicks.
|
|
|
|
|
|
|
|
%prep
|
|
|
|
%setup -q -n pytest-qt-%{version}
|
2018-05-15 10:14:27 +02:00
|
|
|
dos2unix LICENSE
|
2023-06-25 21:15:18 +02:00
|
|
|
# https://github.com/pytest-dev/pytest-qt/pull/419#discussion_r1240198866
|
|
|
|
sed -i /xfail_strict/d setup.cfg
|
2017-08-30 16:22:12 +02:00
|
|
|
|
Accepting request 905961 from home:bnavigator:branches:devel:languages:python:pytest
- Allow either of the valid Qt binding implementations, do not hard
require python-qt5
- Enable multibuild for tests with different implementations
* Pyside2, PyQt5, PyQt6
* Prepared for Pyside6
- Update to version 4.0.2
* Restored compatibility with PySide2 5.11, which doesn't depend on the
``shiboken2`` project, used by pytest-qt 4.0.0. The dependency is now not
needed anymore, and the ``.isdeleted`` attribute of ``qt_compat`` (which
isn't intended for public use) is removed.
- Release 4.0.1
* The ``sip`` module now gets imported directly if ``PyQt5.sip`` /
``PyQt6.sip`` wasn't found, as it's still packaged like that in some
distributions (`#369`_). Thanks `@The-Compiler`_ for the PR.
- Release 4.0.0
* `PySide6 <https://pypi.org/project/PySide6>`__ and `PyQt6 <https://pypi.org/project/PyQt6>`__ (6.1+)
are now supported. Thanks `@jensheilman`_ and `@The-Compiler`_ for the PRs (`#328`_, `#330`_).
* ``pytest-qt`` now requires Python 3.6+.
* When using PyQt5, ``pytest-qt`` now requires PyQt5 5.11 or newer (`#330`_).
* Support for Qt4 (i.e. ``PyQt4`` and ``PySide``) is now dropped (`#279`_).
* The ``qtbot.waitActive`` and ``qtbot.waitExposed`` context managers are now
available with all Qt APIs, rather than only PyQt5 (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The ``qtbot.waitForWindowShown`` method is deprecated, as the underlying Qt
method was obsoleted in Qt 5.0 and removed in Qt 6.0. Its name is imprecise and
the pytest-qt wrapper does not raise TimeoutError if the window wasn't shown.
Please use the ``qtbot.waitExposed`` context manager instead (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The old ``qtbot.stopForInteraction()`` name is now removed as it was
cumbersome and rarely used. Use ``qtbot.stop()`` (added in 1.1.1) instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``SignalTimeoutError`` exception alias is now removed, as it was renamed to
``TimeoutError`` in 2.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``qt_wait_signal_raising`` option is now removed, as it was renamed to
``qt_default_raising`` in 3.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* ``qtbot.waitSignal`` and ``waitSignals`` (as well as their PEP-8 aliases)
supported passing ``None`` as signal, making them wait for the given timeout
instead. This is not supported anymore, use ``qtbot.wait(ms)`` instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* Various arguments to ``qtbot`` methods are now keyword-only (`#366`_):
* ``qtbot.waitActive``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitExposed``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitSignal``: ``timeout``, ``raising`` and ``check_params_cb`` (``signal`` being the only positional argument)
* ``qtbot.waitSignals``: ``timeout``, ``raising`` and ``check_params_cbs`` (``signals`` being the only positional argument)
* ``qtbot.assertNotEmitted``: ``wait`` (``signal`` being the only positional argument)
* ``qtbot.waitUntil``: ``timeout`` (``callback`` being the only positional argument)
* ``qtbot.waitCallback``: ``timeout`` and ``raising`` (with no positional arguments)
The same applies to the respective PEP-8 aliases. Thanks `@The-Compiler`_ for
the PR.
* Various classes are now not importable from ``pytestqt.plugin`` anymore, and
should instead be imported from the module they're residing in since the 1.6.0
release (`#306`_):
* ``pytestqt.plugin.QtBot`` -> ``pytestqt.qtbot.QtBot``
* ``pytestqt.plugin.SignalBlocker`` -> ``pytestqt.wait_signal.SignalBlocker``
* ``pytestqt.plugin.MultiSignalBlocker`` -> ``pytestqt.wait_signal.MultiSignalBlocker``
* ``pytestqt.plugin.Record`` -> ``pytestqt.logging.Record``
* ``pytestqt.plugin.capture_exceptions`` ->
``pytestqt.exceptions.capture_exceptions`` (but consider using
``qtbot.capture_exceptions`` instead)
* ``pytestqt.plugin.format_captured_exceptions`` ->
``pytestqt.exceptions.format_captured_exceptions``
* The ``qt_api.extract_from_variant`` and ``qt_api.make_variant`` functions
(which were never intended for public usage) as well as all class aliases
(such as ``qt_api.QWidget`` or ``qt_api.QEvent``, among others) are now
removed. Thanks `@The-Compiler`_ for the PR.
* The default timeouts for ``qtbot.waitSignal``, ``waitSignals``, ``waitUntil``
and ``waitCallback``, ``waitActive`` and ``waitExposed`` have been raised from
1s to 5s. This makes them in line the default timeout used by Qt's underlying
methods such as ``QSignalSpy::wait``. To get the old behavior back, explicitly
pass ``timeout=1000`` to those functions (`#306`_). Thanks `@The-Compiler`_
for the PR.
* ``waitUntil`` now raises a ``TimeoutError`` when a timeout occurs to make the
cause of the timeout more explict (`#222`_). Thanks `@karlch`_ for the PR.
* The ``QtTest::keySequence`` method is now exposed (if available, with Qt >=
5.10) (`#289`_). Thanks `@The-Compiler`_ for the PR.
* ``addWidget`` now enforces that its argument is a ``QWidget`` in order to
display a clearer error when this isn't the case (`#290`_). Thanks
`@The-Compiler`_ for the PR.
* New option ``qt_qapp_name`` can be used to set the name of the
``QApplication`` created by ``pytest-qt``, defaulting to ``"pytest-qt-qapp"``
(`#302`_). Thanks `@The-Compiler`_ for the PR.
* When the ``-s`` (``--capture=no``) argument is passed to pytest, Qt log
capturing is now disabled as well (`#300`_). Thanks `@The-Compiler`_ for the PR.
* PEP-8 aliases (``add_widget``, ``wait_active``, etc) are no longer just simple
assignments to the methods, but they are real methods which call the normal
implementations. This makes subclasses work as expected, instead of having to
duplicate the assignment (`#326`_, `#333`_). Thanks `@oliveira-mauricio`_ and
`@jensheilman`_ for the PRs.
* Errors related to the ``qt_compat`` module (such as an invalid
``PYTEST_QT_API`` setting or missing Qt API wrappers) are now shown as a more
human-readable error message rather than an internal pytest error (`#355`_). Thanks
`@The-Compiler`_ for the PR.
OBS-URL: https://build.opensuse.org/request/show/905961
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:pytest/python-pytest-qt?expand=0&rev=12
2021-07-13 11:06:16 +02:00
|
|
|
%if ! %{with test}
|
2017-08-30 16:22:12 +02:00
|
|
|
%build
|
2023-05-20 12:55:42 +02:00
|
|
|
%pyproject_wheel
|
Accepting request 905961 from home:bnavigator:branches:devel:languages:python:pytest
- Allow either of the valid Qt binding implementations, do not hard
require python-qt5
- Enable multibuild for tests with different implementations
* Pyside2, PyQt5, PyQt6
* Prepared for Pyside6
- Update to version 4.0.2
* Restored compatibility with PySide2 5.11, which doesn't depend on the
``shiboken2`` project, used by pytest-qt 4.0.0. The dependency is now not
needed anymore, and the ``.isdeleted`` attribute of ``qt_compat`` (which
isn't intended for public use) is removed.
- Release 4.0.1
* The ``sip`` module now gets imported directly if ``PyQt5.sip`` /
``PyQt6.sip`` wasn't found, as it's still packaged like that in some
distributions (`#369`_). Thanks `@The-Compiler`_ for the PR.
- Release 4.0.0
* `PySide6 <https://pypi.org/project/PySide6>`__ and `PyQt6 <https://pypi.org/project/PyQt6>`__ (6.1+)
are now supported. Thanks `@jensheilman`_ and `@The-Compiler`_ for the PRs (`#328`_, `#330`_).
* ``pytest-qt`` now requires Python 3.6+.
* When using PyQt5, ``pytest-qt`` now requires PyQt5 5.11 or newer (`#330`_).
* Support for Qt4 (i.e. ``PyQt4`` and ``PySide``) is now dropped (`#279`_).
* The ``qtbot.waitActive`` and ``qtbot.waitExposed`` context managers are now
available with all Qt APIs, rather than only PyQt5 (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The ``qtbot.waitForWindowShown`` method is deprecated, as the underlying Qt
method was obsoleted in Qt 5.0 and removed in Qt 6.0. Its name is imprecise and
the pytest-qt wrapper does not raise TimeoutError if the window wasn't shown.
Please use the ``qtbot.waitExposed`` context manager instead (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The old ``qtbot.stopForInteraction()`` name is now removed as it was
cumbersome and rarely used. Use ``qtbot.stop()`` (added in 1.1.1) instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``SignalTimeoutError`` exception alias is now removed, as it was renamed to
``TimeoutError`` in 2.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``qt_wait_signal_raising`` option is now removed, as it was renamed to
``qt_default_raising`` in 3.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* ``qtbot.waitSignal`` and ``waitSignals`` (as well as their PEP-8 aliases)
supported passing ``None`` as signal, making them wait for the given timeout
instead. This is not supported anymore, use ``qtbot.wait(ms)`` instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* Various arguments to ``qtbot`` methods are now keyword-only (`#366`_):
* ``qtbot.waitActive``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitExposed``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitSignal``: ``timeout``, ``raising`` and ``check_params_cb`` (``signal`` being the only positional argument)
* ``qtbot.waitSignals``: ``timeout``, ``raising`` and ``check_params_cbs`` (``signals`` being the only positional argument)
* ``qtbot.assertNotEmitted``: ``wait`` (``signal`` being the only positional argument)
* ``qtbot.waitUntil``: ``timeout`` (``callback`` being the only positional argument)
* ``qtbot.waitCallback``: ``timeout`` and ``raising`` (with no positional arguments)
The same applies to the respective PEP-8 aliases. Thanks `@The-Compiler`_ for
the PR.
* Various classes are now not importable from ``pytestqt.plugin`` anymore, and
should instead be imported from the module they're residing in since the 1.6.0
release (`#306`_):
* ``pytestqt.plugin.QtBot`` -> ``pytestqt.qtbot.QtBot``
* ``pytestqt.plugin.SignalBlocker`` -> ``pytestqt.wait_signal.SignalBlocker``
* ``pytestqt.plugin.MultiSignalBlocker`` -> ``pytestqt.wait_signal.MultiSignalBlocker``
* ``pytestqt.plugin.Record`` -> ``pytestqt.logging.Record``
* ``pytestqt.plugin.capture_exceptions`` ->
``pytestqt.exceptions.capture_exceptions`` (but consider using
``qtbot.capture_exceptions`` instead)
* ``pytestqt.plugin.format_captured_exceptions`` ->
``pytestqt.exceptions.format_captured_exceptions``
* The ``qt_api.extract_from_variant`` and ``qt_api.make_variant`` functions
(which were never intended for public usage) as well as all class aliases
(such as ``qt_api.QWidget`` or ``qt_api.QEvent``, among others) are now
removed. Thanks `@The-Compiler`_ for the PR.
* The default timeouts for ``qtbot.waitSignal``, ``waitSignals``, ``waitUntil``
and ``waitCallback``, ``waitActive`` and ``waitExposed`` have been raised from
1s to 5s. This makes them in line the default timeout used by Qt's underlying
methods such as ``QSignalSpy::wait``. To get the old behavior back, explicitly
pass ``timeout=1000`` to those functions (`#306`_). Thanks `@The-Compiler`_
for the PR.
* ``waitUntil`` now raises a ``TimeoutError`` when a timeout occurs to make the
cause of the timeout more explict (`#222`_). Thanks `@karlch`_ for the PR.
* The ``QtTest::keySequence`` method is now exposed (if available, with Qt >=
5.10) (`#289`_). Thanks `@The-Compiler`_ for the PR.
* ``addWidget`` now enforces that its argument is a ``QWidget`` in order to
display a clearer error when this isn't the case (`#290`_). Thanks
`@The-Compiler`_ for the PR.
* New option ``qt_qapp_name`` can be used to set the name of the
``QApplication`` created by ``pytest-qt``, defaulting to ``"pytest-qt-qapp"``
(`#302`_). Thanks `@The-Compiler`_ for the PR.
* When the ``-s`` (``--capture=no``) argument is passed to pytest, Qt log
capturing is now disabled as well (`#300`_). Thanks `@The-Compiler`_ for the PR.
* PEP-8 aliases (``add_widget``, ``wait_active``, etc) are no longer just simple
assignments to the methods, but they are real methods which call the normal
implementations. This makes subclasses work as expected, instead of having to
duplicate the assignment (`#326`_, `#333`_). Thanks `@oliveira-mauricio`_ and
`@jensheilman`_ for the PRs.
* Errors related to the ``qt_compat`` module (such as an invalid
``PYTEST_QT_API`` setting or missing Qt API wrappers) are now shown as a more
human-readable error message rather than an internal pytest error (`#355`_). Thanks
`@The-Compiler`_ for the PR.
OBS-URL: https://build.opensuse.org/request/show/905961
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:pytest/python-pytest-qt?expand=0&rev=12
2021-07-13 11:06:16 +02:00
|
|
|
%endif
|
2017-08-30 16:22:12 +02:00
|
|
|
|
Accepting request 905961 from home:bnavigator:branches:devel:languages:python:pytest
- Allow either of the valid Qt binding implementations, do not hard
require python-qt5
- Enable multibuild for tests with different implementations
* Pyside2, PyQt5, PyQt6
* Prepared for Pyside6
- Update to version 4.0.2
* Restored compatibility with PySide2 5.11, which doesn't depend on the
``shiboken2`` project, used by pytest-qt 4.0.0. The dependency is now not
needed anymore, and the ``.isdeleted`` attribute of ``qt_compat`` (which
isn't intended for public use) is removed.
- Release 4.0.1
* The ``sip`` module now gets imported directly if ``PyQt5.sip`` /
``PyQt6.sip`` wasn't found, as it's still packaged like that in some
distributions (`#369`_). Thanks `@The-Compiler`_ for the PR.
- Release 4.0.0
* `PySide6 <https://pypi.org/project/PySide6>`__ and `PyQt6 <https://pypi.org/project/PyQt6>`__ (6.1+)
are now supported. Thanks `@jensheilman`_ and `@The-Compiler`_ for the PRs (`#328`_, `#330`_).
* ``pytest-qt`` now requires Python 3.6+.
* When using PyQt5, ``pytest-qt`` now requires PyQt5 5.11 or newer (`#330`_).
* Support for Qt4 (i.e. ``PyQt4`` and ``PySide``) is now dropped (`#279`_).
* The ``qtbot.waitActive`` and ``qtbot.waitExposed`` context managers are now
available with all Qt APIs, rather than only PyQt5 (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The ``qtbot.waitForWindowShown`` method is deprecated, as the underlying Qt
method was obsoleted in Qt 5.0 and removed in Qt 6.0. Its name is imprecise and
the pytest-qt wrapper does not raise TimeoutError if the window wasn't shown.
Please use the ``qtbot.waitExposed`` context manager instead (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The old ``qtbot.stopForInteraction()`` name is now removed as it was
cumbersome and rarely used. Use ``qtbot.stop()`` (added in 1.1.1) instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``SignalTimeoutError`` exception alias is now removed, as it was renamed to
``TimeoutError`` in 2.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``qt_wait_signal_raising`` option is now removed, as it was renamed to
``qt_default_raising`` in 3.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* ``qtbot.waitSignal`` and ``waitSignals`` (as well as their PEP-8 aliases)
supported passing ``None`` as signal, making them wait for the given timeout
instead. This is not supported anymore, use ``qtbot.wait(ms)`` instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* Various arguments to ``qtbot`` methods are now keyword-only (`#366`_):
* ``qtbot.waitActive``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitExposed``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitSignal``: ``timeout``, ``raising`` and ``check_params_cb`` (``signal`` being the only positional argument)
* ``qtbot.waitSignals``: ``timeout``, ``raising`` and ``check_params_cbs`` (``signals`` being the only positional argument)
* ``qtbot.assertNotEmitted``: ``wait`` (``signal`` being the only positional argument)
* ``qtbot.waitUntil``: ``timeout`` (``callback`` being the only positional argument)
* ``qtbot.waitCallback``: ``timeout`` and ``raising`` (with no positional arguments)
The same applies to the respective PEP-8 aliases. Thanks `@The-Compiler`_ for
the PR.
* Various classes are now not importable from ``pytestqt.plugin`` anymore, and
should instead be imported from the module they're residing in since the 1.6.0
release (`#306`_):
* ``pytestqt.plugin.QtBot`` -> ``pytestqt.qtbot.QtBot``
* ``pytestqt.plugin.SignalBlocker`` -> ``pytestqt.wait_signal.SignalBlocker``
* ``pytestqt.plugin.MultiSignalBlocker`` -> ``pytestqt.wait_signal.MultiSignalBlocker``
* ``pytestqt.plugin.Record`` -> ``pytestqt.logging.Record``
* ``pytestqt.plugin.capture_exceptions`` ->
``pytestqt.exceptions.capture_exceptions`` (but consider using
``qtbot.capture_exceptions`` instead)
* ``pytestqt.plugin.format_captured_exceptions`` ->
``pytestqt.exceptions.format_captured_exceptions``
* The ``qt_api.extract_from_variant`` and ``qt_api.make_variant`` functions
(which were never intended for public usage) as well as all class aliases
(such as ``qt_api.QWidget`` or ``qt_api.QEvent``, among others) are now
removed. Thanks `@The-Compiler`_ for the PR.
* The default timeouts for ``qtbot.waitSignal``, ``waitSignals``, ``waitUntil``
and ``waitCallback``, ``waitActive`` and ``waitExposed`` have been raised from
1s to 5s. This makes them in line the default timeout used by Qt's underlying
methods such as ``QSignalSpy::wait``. To get the old behavior back, explicitly
pass ``timeout=1000`` to those functions (`#306`_). Thanks `@The-Compiler`_
for the PR.
* ``waitUntil`` now raises a ``TimeoutError`` when a timeout occurs to make the
cause of the timeout more explict (`#222`_). Thanks `@karlch`_ for the PR.
* The ``QtTest::keySequence`` method is now exposed (if available, with Qt >=
5.10) (`#289`_). Thanks `@The-Compiler`_ for the PR.
* ``addWidget`` now enforces that its argument is a ``QWidget`` in order to
display a clearer error when this isn't the case (`#290`_). Thanks
`@The-Compiler`_ for the PR.
* New option ``qt_qapp_name`` can be used to set the name of the
``QApplication`` created by ``pytest-qt``, defaulting to ``"pytest-qt-qapp"``
(`#302`_). Thanks `@The-Compiler`_ for the PR.
* When the ``-s`` (``--capture=no``) argument is passed to pytest, Qt log
capturing is now disabled as well (`#300`_). Thanks `@The-Compiler`_ for the PR.
* PEP-8 aliases (``add_widget``, ``wait_active``, etc) are no longer just simple
assignments to the methods, but they are real methods which call the normal
implementations. This makes subclasses work as expected, instead of having to
duplicate the assignment (`#326`_, `#333`_). Thanks `@oliveira-mauricio`_ and
`@jensheilman`_ for the PRs.
* Errors related to the ``qt_compat`` module (such as an invalid
``PYTEST_QT_API`` setting or missing Qt API wrappers) are now shown as a more
human-readable error message rather than an internal pytest error (`#355`_). Thanks
`@The-Compiler`_ for the PR.
OBS-URL: https://build.opensuse.org/request/show/905961
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:pytest/python-pytest-qt?expand=0&rev=12
2021-07-13 11:06:16 +02:00
|
|
|
%if ! %{with test}
|
2017-08-30 16:22:12 +02:00
|
|
|
%install
|
2023-05-20 12:55:42 +02:00
|
|
|
%pyproject_install
|
2017-08-30 16:22:12 +02:00
|
|
|
%python_expand %fdupes %{buildroot}%{$python_sitelib}
|
Accepting request 905961 from home:bnavigator:branches:devel:languages:python:pytest
- Allow either of the valid Qt binding implementations, do not hard
require python-qt5
- Enable multibuild for tests with different implementations
* Pyside2, PyQt5, PyQt6
* Prepared for Pyside6
- Update to version 4.0.2
* Restored compatibility with PySide2 5.11, which doesn't depend on the
``shiboken2`` project, used by pytest-qt 4.0.0. The dependency is now not
needed anymore, and the ``.isdeleted`` attribute of ``qt_compat`` (which
isn't intended for public use) is removed.
- Release 4.0.1
* The ``sip`` module now gets imported directly if ``PyQt5.sip`` /
``PyQt6.sip`` wasn't found, as it's still packaged like that in some
distributions (`#369`_). Thanks `@The-Compiler`_ for the PR.
- Release 4.0.0
* `PySide6 <https://pypi.org/project/PySide6>`__ and `PyQt6 <https://pypi.org/project/PyQt6>`__ (6.1+)
are now supported. Thanks `@jensheilman`_ and `@The-Compiler`_ for the PRs (`#328`_, `#330`_).
* ``pytest-qt`` now requires Python 3.6+.
* When using PyQt5, ``pytest-qt`` now requires PyQt5 5.11 or newer (`#330`_).
* Support for Qt4 (i.e. ``PyQt4`` and ``PySide``) is now dropped (`#279`_).
* The ``qtbot.waitActive`` and ``qtbot.waitExposed`` context managers are now
available with all Qt APIs, rather than only PyQt5 (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The ``qtbot.waitForWindowShown`` method is deprecated, as the underlying Qt
method was obsoleted in Qt 5.0 and removed in Qt 6.0. Its name is imprecise and
the pytest-qt wrapper does not raise TimeoutError if the window wasn't shown.
Please use the ``qtbot.waitExposed`` context manager instead (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The old ``qtbot.stopForInteraction()`` name is now removed as it was
cumbersome and rarely used. Use ``qtbot.stop()`` (added in 1.1.1) instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``SignalTimeoutError`` exception alias is now removed, as it was renamed to
``TimeoutError`` in 2.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``qt_wait_signal_raising`` option is now removed, as it was renamed to
``qt_default_raising`` in 3.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* ``qtbot.waitSignal`` and ``waitSignals`` (as well as their PEP-8 aliases)
supported passing ``None`` as signal, making them wait for the given timeout
instead. This is not supported anymore, use ``qtbot.wait(ms)`` instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* Various arguments to ``qtbot`` methods are now keyword-only (`#366`_):
* ``qtbot.waitActive``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitExposed``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitSignal``: ``timeout``, ``raising`` and ``check_params_cb`` (``signal`` being the only positional argument)
* ``qtbot.waitSignals``: ``timeout``, ``raising`` and ``check_params_cbs`` (``signals`` being the only positional argument)
* ``qtbot.assertNotEmitted``: ``wait`` (``signal`` being the only positional argument)
* ``qtbot.waitUntil``: ``timeout`` (``callback`` being the only positional argument)
* ``qtbot.waitCallback``: ``timeout`` and ``raising`` (with no positional arguments)
The same applies to the respective PEP-8 aliases. Thanks `@The-Compiler`_ for
the PR.
* Various classes are now not importable from ``pytestqt.plugin`` anymore, and
should instead be imported from the module they're residing in since the 1.6.0
release (`#306`_):
* ``pytestqt.plugin.QtBot`` -> ``pytestqt.qtbot.QtBot``
* ``pytestqt.plugin.SignalBlocker`` -> ``pytestqt.wait_signal.SignalBlocker``
* ``pytestqt.plugin.MultiSignalBlocker`` -> ``pytestqt.wait_signal.MultiSignalBlocker``
* ``pytestqt.plugin.Record`` -> ``pytestqt.logging.Record``
* ``pytestqt.plugin.capture_exceptions`` ->
``pytestqt.exceptions.capture_exceptions`` (but consider using
``qtbot.capture_exceptions`` instead)
* ``pytestqt.plugin.format_captured_exceptions`` ->
``pytestqt.exceptions.format_captured_exceptions``
* The ``qt_api.extract_from_variant`` and ``qt_api.make_variant`` functions
(which were never intended for public usage) as well as all class aliases
(such as ``qt_api.QWidget`` or ``qt_api.QEvent``, among others) are now
removed. Thanks `@The-Compiler`_ for the PR.
* The default timeouts for ``qtbot.waitSignal``, ``waitSignals``, ``waitUntil``
and ``waitCallback``, ``waitActive`` and ``waitExposed`` have been raised from
1s to 5s. This makes them in line the default timeout used by Qt's underlying
methods such as ``QSignalSpy::wait``. To get the old behavior back, explicitly
pass ``timeout=1000`` to those functions (`#306`_). Thanks `@The-Compiler`_
for the PR.
* ``waitUntil`` now raises a ``TimeoutError`` when a timeout occurs to make the
cause of the timeout more explict (`#222`_). Thanks `@karlch`_ for the PR.
* The ``QtTest::keySequence`` method is now exposed (if available, with Qt >=
5.10) (`#289`_). Thanks `@The-Compiler`_ for the PR.
* ``addWidget`` now enforces that its argument is a ``QWidget`` in order to
display a clearer error when this isn't the case (`#290`_). Thanks
`@The-Compiler`_ for the PR.
* New option ``qt_qapp_name`` can be used to set the name of the
``QApplication`` created by ``pytest-qt``, defaulting to ``"pytest-qt-qapp"``
(`#302`_). Thanks `@The-Compiler`_ for the PR.
* When the ``-s`` (``--capture=no``) argument is passed to pytest, Qt log
capturing is now disabled as well (`#300`_). Thanks `@The-Compiler`_ for the PR.
* PEP-8 aliases (``add_widget``, ``wait_active``, etc) are no longer just simple
assignments to the methods, but they are real methods which call the normal
implementations. This makes subclasses work as expected, instead of having to
duplicate the assignment (`#326`_, `#333`_). Thanks `@oliveira-mauricio`_ and
`@jensheilman`_ for the PRs.
* Errors related to the ``qt_compat`` module (such as an invalid
``PYTEST_QT_API`` setting or missing Qt API wrappers) are now shown as a more
human-readable error message rather than an internal pytest error (`#355`_). Thanks
`@The-Compiler`_ for the PR.
OBS-URL: https://build.opensuse.org/request/show/905961
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:pytest/python-pytest-qt?expand=0&rev=12
2021-07-13 11:06:16 +02:00
|
|
|
%endif
|
2017-08-30 16:22:12 +02:00
|
|
|
|
Accepting request 905961 from home:bnavigator:branches:devel:languages:python:pytest
- Allow either of the valid Qt binding implementations, do not hard
require python-qt5
- Enable multibuild for tests with different implementations
* Pyside2, PyQt5, PyQt6
* Prepared for Pyside6
- Update to version 4.0.2
* Restored compatibility with PySide2 5.11, which doesn't depend on the
``shiboken2`` project, used by pytest-qt 4.0.0. The dependency is now not
needed anymore, and the ``.isdeleted`` attribute of ``qt_compat`` (which
isn't intended for public use) is removed.
- Release 4.0.1
* The ``sip`` module now gets imported directly if ``PyQt5.sip`` /
``PyQt6.sip`` wasn't found, as it's still packaged like that in some
distributions (`#369`_). Thanks `@The-Compiler`_ for the PR.
- Release 4.0.0
* `PySide6 <https://pypi.org/project/PySide6>`__ and `PyQt6 <https://pypi.org/project/PyQt6>`__ (6.1+)
are now supported. Thanks `@jensheilman`_ and `@The-Compiler`_ for the PRs (`#328`_, `#330`_).
* ``pytest-qt`` now requires Python 3.6+.
* When using PyQt5, ``pytest-qt`` now requires PyQt5 5.11 or newer (`#330`_).
* Support for Qt4 (i.e. ``PyQt4`` and ``PySide``) is now dropped (`#279`_).
* The ``qtbot.waitActive`` and ``qtbot.waitExposed`` context managers are now
available with all Qt APIs, rather than only PyQt5 (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The ``qtbot.waitForWindowShown`` method is deprecated, as the underlying Qt
method was obsoleted in Qt 5.0 and removed in Qt 6.0. Its name is imprecise and
the pytest-qt wrapper does not raise TimeoutError if the window wasn't shown.
Please use the ``qtbot.waitExposed`` context manager instead (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The old ``qtbot.stopForInteraction()`` name is now removed as it was
cumbersome and rarely used. Use ``qtbot.stop()`` (added in 1.1.1) instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``SignalTimeoutError`` exception alias is now removed, as it was renamed to
``TimeoutError`` in 2.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``qt_wait_signal_raising`` option is now removed, as it was renamed to
``qt_default_raising`` in 3.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* ``qtbot.waitSignal`` and ``waitSignals`` (as well as their PEP-8 aliases)
supported passing ``None`` as signal, making them wait for the given timeout
instead. This is not supported anymore, use ``qtbot.wait(ms)`` instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* Various arguments to ``qtbot`` methods are now keyword-only (`#366`_):
* ``qtbot.waitActive``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitExposed``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitSignal``: ``timeout``, ``raising`` and ``check_params_cb`` (``signal`` being the only positional argument)
* ``qtbot.waitSignals``: ``timeout``, ``raising`` and ``check_params_cbs`` (``signals`` being the only positional argument)
* ``qtbot.assertNotEmitted``: ``wait`` (``signal`` being the only positional argument)
* ``qtbot.waitUntil``: ``timeout`` (``callback`` being the only positional argument)
* ``qtbot.waitCallback``: ``timeout`` and ``raising`` (with no positional arguments)
The same applies to the respective PEP-8 aliases. Thanks `@The-Compiler`_ for
the PR.
* Various classes are now not importable from ``pytestqt.plugin`` anymore, and
should instead be imported from the module they're residing in since the 1.6.0
release (`#306`_):
* ``pytestqt.plugin.QtBot`` -> ``pytestqt.qtbot.QtBot``
* ``pytestqt.plugin.SignalBlocker`` -> ``pytestqt.wait_signal.SignalBlocker``
* ``pytestqt.plugin.MultiSignalBlocker`` -> ``pytestqt.wait_signal.MultiSignalBlocker``
* ``pytestqt.plugin.Record`` -> ``pytestqt.logging.Record``
* ``pytestqt.plugin.capture_exceptions`` ->
``pytestqt.exceptions.capture_exceptions`` (but consider using
``qtbot.capture_exceptions`` instead)
* ``pytestqt.plugin.format_captured_exceptions`` ->
``pytestqt.exceptions.format_captured_exceptions``
* The ``qt_api.extract_from_variant`` and ``qt_api.make_variant`` functions
(which were never intended for public usage) as well as all class aliases
(such as ``qt_api.QWidget`` or ``qt_api.QEvent``, among others) are now
removed. Thanks `@The-Compiler`_ for the PR.
* The default timeouts for ``qtbot.waitSignal``, ``waitSignals``, ``waitUntil``
and ``waitCallback``, ``waitActive`` and ``waitExposed`` have been raised from
1s to 5s. This makes them in line the default timeout used by Qt's underlying
methods such as ``QSignalSpy::wait``. To get the old behavior back, explicitly
pass ``timeout=1000`` to those functions (`#306`_). Thanks `@The-Compiler`_
for the PR.
* ``waitUntil`` now raises a ``TimeoutError`` when a timeout occurs to make the
cause of the timeout more explict (`#222`_). Thanks `@karlch`_ for the PR.
* The ``QtTest::keySequence`` method is now exposed (if available, with Qt >=
5.10) (`#289`_). Thanks `@The-Compiler`_ for the PR.
* ``addWidget`` now enforces that its argument is a ``QWidget`` in order to
display a clearer error when this isn't the case (`#290`_). Thanks
`@The-Compiler`_ for the PR.
* New option ``qt_qapp_name`` can be used to set the name of the
``QApplication`` created by ``pytest-qt``, defaulting to ``"pytest-qt-qapp"``
(`#302`_). Thanks `@The-Compiler`_ for the PR.
* When the ``-s`` (``--capture=no``) argument is passed to pytest, Qt log
capturing is now disabled as well (`#300`_). Thanks `@The-Compiler`_ for the PR.
* PEP-8 aliases (``add_widget``, ``wait_active``, etc) are no longer just simple
assignments to the methods, but they are real methods which call the normal
implementations. This makes subclasses work as expected, instead of having to
duplicate the assignment (`#326`_, `#333`_). Thanks `@oliveira-mauricio`_ and
`@jensheilman`_ for the PRs.
* Errors related to the ``qt_compat`` module (such as an invalid
``PYTEST_QT_API`` setting or missing Qt API wrappers) are now shown as a more
human-readable error message rather than an internal pytest error (`#355`_). Thanks
`@The-Compiler`_ for the PR.
OBS-URL: https://build.opensuse.org/request/show/905961
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:pytest/python-pytest-qt?expand=0&rev=12
2021-07-13 11:06:16 +02:00
|
|
|
%if %{with test}
|
2017-08-30 16:22:12 +02:00
|
|
|
%check
|
Accepting request 905961 from home:bnavigator:branches:devel:languages:python:pytest
- Allow either of the valid Qt binding implementations, do not hard
require python-qt5
- Enable multibuild for tests with different implementations
* Pyside2, PyQt5, PyQt6
* Prepared for Pyside6
- Update to version 4.0.2
* Restored compatibility with PySide2 5.11, which doesn't depend on the
``shiboken2`` project, used by pytest-qt 4.0.0. The dependency is now not
needed anymore, and the ``.isdeleted`` attribute of ``qt_compat`` (which
isn't intended for public use) is removed.
- Release 4.0.1
* The ``sip`` module now gets imported directly if ``PyQt5.sip`` /
``PyQt6.sip`` wasn't found, as it's still packaged like that in some
distributions (`#369`_). Thanks `@The-Compiler`_ for the PR.
- Release 4.0.0
* `PySide6 <https://pypi.org/project/PySide6>`__ and `PyQt6 <https://pypi.org/project/PyQt6>`__ (6.1+)
are now supported. Thanks `@jensheilman`_ and `@The-Compiler`_ for the PRs (`#328`_, `#330`_).
* ``pytest-qt`` now requires Python 3.6+.
* When using PyQt5, ``pytest-qt`` now requires PyQt5 5.11 or newer (`#330`_).
* Support for Qt4 (i.e. ``PyQt4`` and ``PySide``) is now dropped (`#279`_).
* The ``qtbot.waitActive`` and ``qtbot.waitExposed`` context managers are now
available with all Qt APIs, rather than only PyQt5 (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The ``qtbot.waitForWindowShown`` method is deprecated, as the underlying Qt
method was obsoleted in Qt 5.0 and removed in Qt 6.0. Its name is imprecise and
the pytest-qt wrapper does not raise TimeoutError if the window wasn't shown.
Please use the ``qtbot.waitExposed`` context manager instead (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The old ``qtbot.stopForInteraction()`` name is now removed as it was
cumbersome and rarely used. Use ``qtbot.stop()`` (added in 1.1.1) instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``SignalTimeoutError`` exception alias is now removed, as it was renamed to
``TimeoutError`` in 2.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``qt_wait_signal_raising`` option is now removed, as it was renamed to
``qt_default_raising`` in 3.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* ``qtbot.waitSignal`` and ``waitSignals`` (as well as their PEP-8 aliases)
supported passing ``None`` as signal, making them wait for the given timeout
instead. This is not supported anymore, use ``qtbot.wait(ms)`` instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* Various arguments to ``qtbot`` methods are now keyword-only (`#366`_):
* ``qtbot.waitActive``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitExposed``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitSignal``: ``timeout``, ``raising`` and ``check_params_cb`` (``signal`` being the only positional argument)
* ``qtbot.waitSignals``: ``timeout``, ``raising`` and ``check_params_cbs`` (``signals`` being the only positional argument)
* ``qtbot.assertNotEmitted``: ``wait`` (``signal`` being the only positional argument)
* ``qtbot.waitUntil``: ``timeout`` (``callback`` being the only positional argument)
* ``qtbot.waitCallback``: ``timeout`` and ``raising`` (with no positional arguments)
The same applies to the respective PEP-8 aliases. Thanks `@The-Compiler`_ for
the PR.
* Various classes are now not importable from ``pytestqt.plugin`` anymore, and
should instead be imported from the module they're residing in since the 1.6.0
release (`#306`_):
* ``pytestqt.plugin.QtBot`` -> ``pytestqt.qtbot.QtBot``
* ``pytestqt.plugin.SignalBlocker`` -> ``pytestqt.wait_signal.SignalBlocker``
* ``pytestqt.plugin.MultiSignalBlocker`` -> ``pytestqt.wait_signal.MultiSignalBlocker``
* ``pytestqt.plugin.Record`` -> ``pytestqt.logging.Record``
* ``pytestqt.plugin.capture_exceptions`` ->
``pytestqt.exceptions.capture_exceptions`` (but consider using
``qtbot.capture_exceptions`` instead)
* ``pytestqt.plugin.format_captured_exceptions`` ->
``pytestqt.exceptions.format_captured_exceptions``
* The ``qt_api.extract_from_variant`` and ``qt_api.make_variant`` functions
(which were never intended for public usage) as well as all class aliases
(such as ``qt_api.QWidget`` or ``qt_api.QEvent``, among others) are now
removed. Thanks `@The-Compiler`_ for the PR.
* The default timeouts for ``qtbot.waitSignal``, ``waitSignals``, ``waitUntil``
and ``waitCallback``, ``waitActive`` and ``waitExposed`` have been raised from
1s to 5s. This makes them in line the default timeout used by Qt's underlying
methods such as ``QSignalSpy::wait``. To get the old behavior back, explicitly
pass ``timeout=1000`` to those functions (`#306`_). Thanks `@The-Compiler`_
for the PR.
* ``waitUntil`` now raises a ``TimeoutError`` when a timeout occurs to make the
cause of the timeout more explict (`#222`_). Thanks `@karlch`_ for the PR.
* The ``QtTest::keySequence`` method is now exposed (if available, with Qt >=
5.10) (`#289`_). Thanks `@The-Compiler`_ for the PR.
* ``addWidget`` now enforces that its argument is a ``QWidget`` in order to
display a clearer error when this isn't the case (`#290`_). Thanks
`@The-Compiler`_ for the PR.
* New option ``qt_qapp_name`` can be used to set the name of the
``QApplication`` created by ``pytest-qt``, defaulting to ``"pytest-qt-qapp"``
(`#302`_). Thanks `@The-Compiler`_ for the PR.
* When the ``-s`` (``--capture=no``) argument is passed to pytest, Qt log
capturing is now disabled as well (`#300`_). Thanks `@The-Compiler`_ for the PR.
* PEP-8 aliases (``add_widget``, ``wait_active``, etc) are no longer just simple
assignments to the methods, but they are real methods which call the normal
implementations. This makes subclasses work as expected, instead of having to
duplicate the assignment (`#326`_, `#333`_). Thanks `@oliveira-mauricio`_ and
`@jensheilman`_ for the PRs.
* Errors related to the ``qt_compat`` module (such as an invalid
``PYTEST_QT_API`` setting or missing Qt API wrappers) are now shown as a more
human-readable error message rather than an internal pytest error (`#355`_). Thanks
`@The-Compiler`_ for the PR.
OBS-URL: https://build.opensuse.org/request/show/905961
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:pytest/python-pytest-qt?expand=0&rev=12
2021-07-13 11:06:16 +02:00
|
|
|
export QT_QPA_PLATFORM=offscreen
|
|
|
|
export PYTEST_QT_API=%{test_qtapi}
|
2024-05-28 08:18:15 +02:00
|
|
|
|
2024-05-29 12:51:09 +02:00
|
|
|
%pytest %{?testflavorargs} -rsxXfE
|
Accepting request 905961 from home:bnavigator:branches:devel:languages:python:pytest
- Allow either of the valid Qt binding implementations, do not hard
require python-qt5
- Enable multibuild for tests with different implementations
* Pyside2, PyQt5, PyQt6
* Prepared for Pyside6
- Update to version 4.0.2
* Restored compatibility with PySide2 5.11, which doesn't depend on the
``shiboken2`` project, used by pytest-qt 4.0.0. The dependency is now not
needed anymore, and the ``.isdeleted`` attribute of ``qt_compat`` (which
isn't intended for public use) is removed.
- Release 4.0.1
* The ``sip`` module now gets imported directly if ``PyQt5.sip`` /
``PyQt6.sip`` wasn't found, as it's still packaged like that in some
distributions (`#369`_). Thanks `@The-Compiler`_ for the PR.
- Release 4.0.0
* `PySide6 <https://pypi.org/project/PySide6>`__ and `PyQt6 <https://pypi.org/project/PyQt6>`__ (6.1+)
are now supported. Thanks `@jensheilman`_ and `@The-Compiler`_ for the PRs (`#328`_, `#330`_).
* ``pytest-qt`` now requires Python 3.6+.
* When using PyQt5, ``pytest-qt`` now requires PyQt5 5.11 or newer (`#330`_).
* Support for Qt4 (i.e. ``PyQt4`` and ``PySide``) is now dropped (`#279`_).
* The ``qtbot.waitActive`` and ``qtbot.waitExposed`` context managers are now
available with all Qt APIs, rather than only PyQt5 (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The ``qtbot.waitForWindowShown`` method is deprecated, as the underlying Qt
method was obsoleted in Qt 5.0 and removed in Qt 6.0. Its name is imprecise and
the pytest-qt wrapper does not raise TimeoutError if the window wasn't shown.
Please use the ``qtbot.waitExposed`` context manager instead (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The old ``qtbot.stopForInteraction()`` name is now removed as it was
cumbersome and rarely used. Use ``qtbot.stop()`` (added in 1.1.1) instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``SignalTimeoutError`` exception alias is now removed, as it was renamed to
``TimeoutError`` in 2.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``qt_wait_signal_raising`` option is now removed, as it was renamed to
``qt_default_raising`` in 3.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* ``qtbot.waitSignal`` and ``waitSignals`` (as well as their PEP-8 aliases)
supported passing ``None`` as signal, making them wait for the given timeout
instead. This is not supported anymore, use ``qtbot.wait(ms)`` instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* Various arguments to ``qtbot`` methods are now keyword-only (`#366`_):
* ``qtbot.waitActive``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitExposed``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitSignal``: ``timeout``, ``raising`` and ``check_params_cb`` (``signal`` being the only positional argument)
* ``qtbot.waitSignals``: ``timeout``, ``raising`` and ``check_params_cbs`` (``signals`` being the only positional argument)
* ``qtbot.assertNotEmitted``: ``wait`` (``signal`` being the only positional argument)
* ``qtbot.waitUntil``: ``timeout`` (``callback`` being the only positional argument)
* ``qtbot.waitCallback``: ``timeout`` and ``raising`` (with no positional arguments)
The same applies to the respective PEP-8 aliases. Thanks `@The-Compiler`_ for
the PR.
* Various classes are now not importable from ``pytestqt.plugin`` anymore, and
should instead be imported from the module they're residing in since the 1.6.0
release (`#306`_):
* ``pytestqt.plugin.QtBot`` -> ``pytestqt.qtbot.QtBot``
* ``pytestqt.plugin.SignalBlocker`` -> ``pytestqt.wait_signal.SignalBlocker``
* ``pytestqt.plugin.MultiSignalBlocker`` -> ``pytestqt.wait_signal.MultiSignalBlocker``
* ``pytestqt.plugin.Record`` -> ``pytestqt.logging.Record``
* ``pytestqt.plugin.capture_exceptions`` ->
``pytestqt.exceptions.capture_exceptions`` (but consider using
``qtbot.capture_exceptions`` instead)
* ``pytestqt.plugin.format_captured_exceptions`` ->
``pytestqt.exceptions.format_captured_exceptions``
* The ``qt_api.extract_from_variant`` and ``qt_api.make_variant`` functions
(which were never intended for public usage) as well as all class aliases
(such as ``qt_api.QWidget`` or ``qt_api.QEvent``, among others) are now
removed. Thanks `@The-Compiler`_ for the PR.
* The default timeouts for ``qtbot.waitSignal``, ``waitSignals``, ``waitUntil``
and ``waitCallback``, ``waitActive`` and ``waitExposed`` have been raised from
1s to 5s. This makes them in line the default timeout used by Qt's underlying
methods such as ``QSignalSpy::wait``. To get the old behavior back, explicitly
pass ``timeout=1000`` to those functions (`#306`_). Thanks `@The-Compiler`_
for the PR.
* ``waitUntil`` now raises a ``TimeoutError`` when a timeout occurs to make the
cause of the timeout more explict (`#222`_). Thanks `@karlch`_ for the PR.
* The ``QtTest::keySequence`` method is now exposed (if available, with Qt >=
5.10) (`#289`_). Thanks `@The-Compiler`_ for the PR.
* ``addWidget`` now enforces that its argument is a ``QWidget`` in order to
display a clearer error when this isn't the case (`#290`_). Thanks
`@The-Compiler`_ for the PR.
* New option ``qt_qapp_name`` can be used to set the name of the
``QApplication`` created by ``pytest-qt``, defaulting to ``"pytest-qt-qapp"``
(`#302`_). Thanks `@The-Compiler`_ for the PR.
* When the ``-s`` (``--capture=no``) argument is passed to pytest, Qt log
capturing is now disabled as well (`#300`_). Thanks `@The-Compiler`_ for the PR.
* PEP-8 aliases (``add_widget``, ``wait_active``, etc) are no longer just simple
assignments to the methods, but they are real methods which call the normal
implementations. This makes subclasses work as expected, instead of having to
duplicate the assignment (`#326`_, `#333`_). Thanks `@oliveira-mauricio`_ and
`@jensheilman`_ for the PRs.
* Errors related to the ``qt_compat`` module (such as an invalid
``PYTEST_QT_API`` setting or missing Qt API wrappers) are now shown as a more
human-readable error message rather than an internal pytest error (`#355`_). Thanks
`@The-Compiler`_ for the PR.
OBS-URL: https://build.opensuse.org/request/show/905961
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:pytest/python-pytest-qt?expand=0&rev=12
2021-07-13 11:06:16 +02:00
|
|
|
%endif
|
2017-08-30 16:22:12 +02:00
|
|
|
|
Accepting request 905961 from home:bnavigator:branches:devel:languages:python:pytest
- Allow either of the valid Qt binding implementations, do not hard
require python-qt5
- Enable multibuild for tests with different implementations
* Pyside2, PyQt5, PyQt6
* Prepared for Pyside6
- Update to version 4.0.2
* Restored compatibility with PySide2 5.11, which doesn't depend on the
``shiboken2`` project, used by pytest-qt 4.0.0. The dependency is now not
needed anymore, and the ``.isdeleted`` attribute of ``qt_compat`` (which
isn't intended for public use) is removed.
- Release 4.0.1
* The ``sip`` module now gets imported directly if ``PyQt5.sip`` /
``PyQt6.sip`` wasn't found, as it's still packaged like that in some
distributions (`#369`_). Thanks `@The-Compiler`_ for the PR.
- Release 4.0.0
* `PySide6 <https://pypi.org/project/PySide6>`__ and `PyQt6 <https://pypi.org/project/PyQt6>`__ (6.1+)
are now supported. Thanks `@jensheilman`_ and `@The-Compiler`_ for the PRs (`#328`_, `#330`_).
* ``pytest-qt`` now requires Python 3.6+.
* When using PyQt5, ``pytest-qt`` now requires PyQt5 5.11 or newer (`#330`_).
* Support for Qt4 (i.e. ``PyQt4`` and ``PySide``) is now dropped (`#279`_).
* The ``qtbot.waitActive`` and ``qtbot.waitExposed`` context managers are now
available with all Qt APIs, rather than only PyQt5 (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The ``qtbot.waitForWindowShown`` method is deprecated, as the underlying Qt
method was obsoleted in Qt 5.0 and removed in Qt 6.0. Its name is imprecise and
the pytest-qt wrapper does not raise TimeoutError if the window wasn't shown.
Please use the ``qtbot.waitExposed`` context manager instead (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The old ``qtbot.stopForInteraction()`` name is now removed as it was
cumbersome and rarely used. Use ``qtbot.stop()`` (added in 1.1.1) instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``SignalTimeoutError`` exception alias is now removed, as it was renamed to
``TimeoutError`` in 2.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``qt_wait_signal_raising`` option is now removed, as it was renamed to
``qt_default_raising`` in 3.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* ``qtbot.waitSignal`` and ``waitSignals`` (as well as their PEP-8 aliases)
supported passing ``None`` as signal, making them wait for the given timeout
instead. This is not supported anymore, use ``qtbot.wait(ms)`` instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* Various arguments to ``qtbot`` methods are now keyword-only (`#366`_):
* ``qtbot.waitActive``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitExposed``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitSignal``: ``timeout``, ``raising`` and ``check_params_cb`` (``signal`` being the only positional argument)
* ``qtbot.waitSignals``: ``timeout``, ``raising`` and ``check_params_cbs`` (``signals`` being the only positional argument)
* ``qtbot.assertNotEmitted``: ``wait`` (``signal`` being the only positional argument)
* ``qtbot.waitUntil``: ``timeout`` (``callback`` being the only positional argument)
* ``qtbot.waitCallback``: ``timeout`` and ``raising`` (with no positional arguments)
The same applies to the respective PEP-8 aliases. Thanks `@The-Compiler`_ for
the PR.
* Various classes are now not importable from ``pytestqt.plugin`` anymore, and
should instead be imported from the module they're residing in since the 1.6.0
release (`#306`_):
* ``pytestqt.plugin.QtBot`` -> ``pytestqt.qtbot.QtBot``
* ``pytestqt.plugin.SignalBlocker`` -> ``pytestqt.wait_signal.SignalBlocker``
* ``pytestqt.plugin.MultiSignalBlocker`` -> ``pytestqt.wait_signal.MultiSignalBlocker``
* ``pytestqt.plugin.Record`` -> ``pytestqt.logging.Record``
* ``pytestqt.plugin.capture_exceptions`` ->
``pytestqt.exceptions.capture_exceptions`` (but consider using
``qtbot.capture_exceptions`` instead)
* ``pytestqt.plugin.format_captured_exceptions`` ->
``pytestqt.exceptions.format_captured_exceptions``
* The ``qt_api.extract_from_variant`` and ``qt_api.make_variant`` functions
(which were never intended for public usage) as well as all class aliases
(such as ``qt_api.QWidget`` or ``qt_api.QEvent``, among others) are now
removed. Thanks `@The-Compiler`_ for the PR.
* The default timeouts for ``qtbot.waitSignal``, ``waitSignals``, ``waitUntil``
and ``waitCallback``, ``waitActive`` and ``waitExposed`` have been raised from
1s to 5s. This makes them in line the default timeout used by Qt's underlying
methods such as ``QSignalSpy::wait``. To get the old behavior back, explicitly
pass ``timeout=1000`` to those functions (`#306`_). Thanks `@The-Compiler`_
for the PR.
* ``waitUntil`` now raises a ``TimeoutError`` when a timeout occurs to make the
cause of the timeout more explict (`#222`_). Thanks `@karlch`_ for the PR.
* The ``QtTest::keySequence`` method is now exposed (if available, with Qt >=
5.10) (`#289`_). Thanks `@The-Compiler`_ for the PR.
* ``addWidget`` now enforces that its argument is a ``QWidget`` in order to
display a clearer error when this isn't the case (`#290`_). Thanks
`@The-Compiler`_ for the PR.
* New option ``qt_qapp_name`` can be used to set the name of the
``QApplication`` created by ``pytest-qt``, defaulting to ``"pytest-qt-qapp"``
(`#302`_). Thanks `@The-Compiler`_ for the PR.
* When the ``-s`` (``--capture=no``) argument is passed to pytest, Qt log
capturing is now disabled as well (`#300`_). Thanks `@The-Compiler`_ for the PR.
* PEP-8 aliases (``add_widget``, ``wait_active``, etc) are no longer just simple
assignments to the methods, but they are real methods which call the normal
implementations. This makes subclasses work as expected, instead of having to
duplicate the assignment (`#326`_, `#333`_). Thanks `@oliveira-mauricio`_ and
`@jensheilman`_ for the PRs.
* Errors related to the ``qt_compat`` module (such as an invalid
``PYTEST_QT_API`` setting or missing Qt API wrappers) are now shown as a more
human-readable error message rather than an internal pytest error (`#355`_). Thanks
`@The-Compiler`_ for the PR.
OBS-URL: https://build.opensuse.org/request/show/905961
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:pytest/python-pytest-qt?expand=0&rev=12
2021-07-13 11:06:16 +02:00
|
|
|
%if ! %{with test}
|
2017-08-30 16:22:12 +02:00
|
|
|
%files %{python_files}
|
2018-05-15 10:14:27 +02:00
|
|
|
%license LICENSE
|
|
|
|
%doc CHANGELOG.rst README.rst
|
2020-09-25 12:25:35 +02:00
|
|
|
%{python_sitelib}/pytestqt
|
2023-05-20 12:55:42 +02:00
|
|
|
%{python_sitelib}/pytest_qt-%{version}.dist-info
|
Accepting request 905961 from home:bnavigator:branches:devel:languages:python:pytest
- Allow either of the valid Qt binding implementations, do not hard
require python-qt5
- Enable multibuild for tests with different implementations
* Pyside2, PyQt5, PyQt6
* Prepared for Pyside6
- Update to version 4.0.2
* Restored compatibility with PySide2 5.11, which doesn't depend on the
``shiboken2`` project, used by pytest-qt 4.0.0. The dependency is now not
needed anymore, and the ``.isdeleted`` attribute of ``qt_compat`` (which
isn't intended for public use) is removed.
- Release 4.0.1
* The ``sip`` module now gets imported directly if ``PyQt5.sip`` /
``PyQt6.sip`` wasn't found, as it's still packaged like that in some
distributions (`#369`_). Thanks `@The-Compiler`_ for the PR.
- Release 4.0.0
* `PySide6 <https://pypi.org/project/PySide6>`__ and `PyQt6 <https://pypi.org/project/PyQt6>`__ (6.1+)
are now supported. Thanks `@jensheilman`_ and `@The-Compiler`_ for the PRs (`#328`_, `#330`_).
* ``pytest-qt`` now requires Python 3.6+.
* When using PyQt5, ``pytest-qt`` now requires PyQt5 5.11 or newer (`#330`_).
* Support for Qt4 (i.e. ``PyQt4`` and ``PySide``) is now dropped (`#279`_).
* The ``qtbot.waitActive`` and ``qtbot.waitExposed`` context managers are now
available with all Qt APIs, rather than only PyQt5 (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The ``qtbot.waitForWindowShown`` method is deprecated, as the underlying Qt
method was obsoleted in Qt 5.0 and removed in Qt 6.0. Its name is imprecise and
the pytest-qt wrapper does not raise TimeoutError if the window wasn't shown.
Please use the ``qtbot.waitExposed`` context manager instead (`#361`_). Thanks
`@The-Compiler`_ for the PR.
* The old ``qtbot.stopForInteraction()`` name is now removed as it was
cumbersome and rarely used. Use ``qtbot.stop()`` (added in 1.1.1) instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``SignalTimeoutError`` exception alias is now removed, as it was renamed to
``TimeoutError`` in 2.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* The old ``qt_wait_signal_raising`` option is now removed, as it was renamed to
``qt_default_raising`` in 3.1 (`#306`_). Thanks `@The-Compiler`_ for the PR.
* ``qtbot.waitSignal`` and ``waitSignals`` (as well as their PEP-8 aliases)
supported passing ``None`` as signal, making them wait for the given timeout
instead. This is not supported anymore, use ``qtbot.wait(ms)`` instead
(`#306`_). Thanks `@The-Compiler`_ for the PR.
* Various arguments to ``qtbot`` methods are now keyword-only (`#366`_):
* ``qtbot.waitActive``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitExposed``: ``timeout`` (``widget`` being the only positional argument)
* ``qtbot.waitSignal``: ``timeout``, ``raising`` and ``check_params_cb`` (``signal`` being the only positional argument)
* ``qtbot.waitSignals``: ``timeout``, ``raising`` and ``check_params_cbs`` (``signals`` being the only positional argument)
* ``qtbot.assertNotEmitted``: ``wait`` (``signal`` being the only positional argument)
* ``qtbot.waitUntil``: ``timeout`` (``callback`` being the only positional argument)
* ``qtbot.waitCallback``: ``timeout`` and ``raising`` (with no positional arguments)
The same applies to the respective PEP-8 aliases. Thanks `@The-Compiler`_ for
the PR.
* Various classes are now not importable from ``pytestqt.plugin`` anymore, and
should instead be imported from the module they're residing in since the 1.6.0
release (`#306`_):
* ``pytestqt.plugin.QtBot`` -> ``pytestqt.qtbot.QtBot``
* ``pytestqt.plugin.SignalBlocker`` -> ``pytestqt.wait_signal.SignalBlocker``
* ``pytestqt.plugin.MultiSignalBlocker`` -> ``pytestqt.wait_signal.MultiSignalBlocker``
* ``pytestqt.plugin.Record`` -> ``pytestqt.logging.Record``
* ``pytestqt.plugin.capture_exceptions`` ->
``pytestqt.exceptions.capture_exceptions`` (but consider using
``qtbot.capture_exceptions`` instead)
* ``pytestqt.plugin.format_captured_exceptions`` ->
``pytestqt.exceptions.format_captured_exceptions``
* The ``qt_api.extract_from_variant`` and ``qt_api.make_variant`` functions
(which were never intended for public usage) as well as all class aliases
(such as ``qt_api.QWidget`` or ``qt_api.QEvent``, among others) are now
removed. Thanks `@The-Compiler`_ for the PR.
* The default timeouts for ``qtbot.waitSignal``, ``waitSignals``, ``waitUntil``
and ``waitCallback``, ``waitActive`` and ``waitExposed`` have been raised from
1s to 5s. This makes them in line the default timeout used by Qt's underlying
methods such as ``QSignalSpy::wait``. To get the old behavior back, explicitly
pass ``timeout=1000`` to those functions (`#306`_). Thanks `@The-Compiler`_
for the PR.
* ``waitUntil`` now raises a ``TimeoutError`` when a timeout occurs to make the
cause of the timeout more explict (`#222`_). Thanks `@karlch`_ for the PR.
* The ``QtTest::keySequence`` method is now exposed (if available, with Qt >=
5.10) (`#289`_). Thanks `@The-Compiler`_ for the PR.
* ``addWidget`` now enforces that its argument is a ``QWidget`` in order to
display a clearer error when this isn't the case (`#290`_). Thanks
`@The-Compiler`_ for the PR.
* New option ``qt_qapp_name`` can be used to set the name of the
``QApplication`` created by ``pytest-qt``, defaulting to ``"pytest-qt-qapp"``
(`#302`_). Thanks `@The-Compiler`_ for the PR.
* When the ``-s`` (``--capture=no``) argument is passed to pytest, Qt log
capturing is now disabled as well (`#300`_). Thanks `@The-Compiler`_ for the PR.
* PEP-8 aliases (``add_widget``, ``wait_active``, etc) are no longer just simple
assignments to the methods, but they are real methods which call the normal
implementations. This makes subclasses work as expected, instead of having to
duplicate the assignment (`#326`_, `#333`_). Thanks `@oliveira-mauricio`_ and
`@jensheilman`_ for the PRs.
* Errors related to the ``qt_compat`` module (such as an invalid
``PYTEST_QT_API`` setting or missing Qt API wrappers) are now shown as a more
human-readable error message rather than an internal pytest error (`#355`_). Thanks
`@The-Compiler`_ for the PR.
OBS-URL: https://build.opensuse.org/request/show/905961
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:pytest/python-pytest-qt?expand=0&rev=12
2021-07-13 11:06:16 +02:00
|
|
|
%endif
|
2017-08-30 16:22:12 +02:00
|
|
|
|
|
|
|
%changelog
|