diff --git a/python-vdirsyncer-fix-tests.patch b/python-vdirsyncer-fix-tests.patch index 4c646f1..67c070b 100644 --- a/python-vdirsyncer-fix-tests.patch +++ b/python-vdirsyncer-fix-tests.patch @@ -1,16 +1,49 @@ -diff --git a/tests/conftest.py b/tests/conftest.py -index ff774ce1..6272d42d 100644 ---- a/tests/conftest.py -+++ b/tests/conftest.py -@@ -27,7 +27,10 @@ def benchmark(): +Index: vdirsyncer-0.16.7/tests/conftest.py +=================================================================== +--- vdirsyncer-0.16.7.orig/tests/conftest.py 2018-02-16 19:48:40.000000000 +0100 ++++ vdirsyncer-0.16.7/tests/conftest.py 2019-05-07 07:42:51.601117380 +0200 +@@ -7,7 +7,7 @@ import os + + import click_log + +-from hypothesis import HealthCheck, Verbosity, settings ++from hypothesis import Verbosity, settings + + import pytest + +@@ -27,15 +27,12 @@ else: del pytest_benchmark -settings.suppress_health_check = [HealthCheck.too_slow] -+settings.register_profile("dev", settings( -+ suppress_health_check=[HealthCheck.too_slow] -+)) -+settings.load_profile("dev") - +- settings.register_profile("ci", settings( max_examples=1000, + verbosity=Verbosity.verbose, + )) + settings.register_profile("deterministic", settings( + derandomize=True, +- perform_health_check=False + )) + + if os.environ.get('DETERMINISTIC_TESTS', 'false').lower() == 'true': +Index: vdirsyncer-0.16.7/tests/unit/test_repair.py +=================================================================== +--- vdirsyncer-0.16.7.orig/tests/unit/test_repair.py 2018-07-19 21:07:31.000000000 +0200 ++++ vdirsyncer-0.16.7/tests/unit/test_repair.py 2019-05-07 07:37:15.015521334 +0200 +@@ -11,7 +11,6 @@ from vdirsyncer.vobject import Item + + + @given(uid=uid_strategy) +-@settings(perform_health_check=False) # Using the random module for UIDs + def test_repair_uids(uid): + s = MemoryStorage() + s.items = { +@@ -35,7 +34,6 @@ def test_repair_uids(uid): + + + @given(uid=uid_strategy.filter(lambda x: not href_safe(x))) +-@settings(perform_health_check=False) # Using the random module for UIDs + def test_repair_unsafe_uids(uid): + s = MemoryStorage() + item = Item(u'BEGIN:VCARD\nUID:{}\nEND:VCARD'.format(uid)) diff --git a/python-vdirsyncer-shift-deadline.patch b/python-vdirsyncer-shift-deadline.patch new file mode 100644 index 0000000..3932bd2 --- /dev/null +++ b/python-vdirsyncer-shift-deadline.patch @@ -0,0 +1,25 @@ +Index: vdirsyncer-0.16.7/tests/system/cli/test_sync.py +=================================================================== +--- vdirsyncer-0.16.7.orig/tests/system/cli/test_sync.py 2018-07-19 21:07:31.000000000 +0200 ++++ vdirsyncer-0.16.7/tests/system/cli/test_sync.py 2019-05-07 08:59:40.114934546 +0200 +@@ -5,11 +5,10 @@ import sys + from textwrap import dedent + + import hypothesis.strategies as st +-from hypothesis import example, given ++from hypothesis import example, given, settings + + import pytest + +- + def test_simple_run(tmpdir, runner): + runner.write_with_general(dedent(''' + [pair my_pair] +@@ -273,6 +272,7 @@ def test_multiple_pairs(tmpdir, runner): + # XXX: https://github.com/pimutils/vdirsyncer/issues/617 + @pytest.mark.skipif(sys.platform == 'darwin', + reason='This test inexplicably fails') ++@settings(deadline=1000.0) + @given(collections=st.sets( + st.text( + st.characters( diff --git a/python-vdirsyncer.changes b/python-vdirsyncer.changes index e25b58d..b2d83df 100644 --- a/python-vdirsyncer.changes +++ b/python-vdirsyncer.changes @@ -1,3 +1,22 @@ +------------------------------------------------------------------- +Tue May 7 05:47:52 UTC 2019 - pgajdos@suse.com + +- added patches + default deadline (200ms) is too short for obs + + python-vdirsyncer-shift-deadline.patch + +------------------------------------------------------------------- +Mon May 6 13:36:29 UTC 2019 - pgajdos@suse.com + +- fix tests again https://github.com/pimutils/vdirsyncer/issues/793 +- modified patches + % python-vdirsyncer-fix-tests.patch (extended) + +------------------------------------------------------------------- +Sat Apr 6 22:18:22 UTC 2019 - Jan Engelhardt + +- Use noun phrase in summary. Wrap description. + ------------------------------------------------------------------- Fri Mar 29 13:31:30 UTC 2019 - pgajdos@suse.com diff --git a/python-vdirsyncer.spec b/python-vdirsyncer.spec index 898ff49..65c6a9b 100644 --- a/python-vdirsyncer.spec +++ b/python-vdirsyncer.spec @@ -21,7 +21,7 @@ Name: python-vdirsyncer Version: 0.16.7 Release: 0 -Summary: Synchronize CalDAV and CardDAV +Summary: CalDAV and CardDAV synchronization module License: BSD-3-Clause Group: Productivity/Networking/News/Utilities URL: https://github.com/pimutils/vdirsyncer @@ -29,7 +29,10 @@ Source0: https://files.pythonhosted.org/packages/source/v/vdirsyncer/vdir Source1: vdirsyncer.service Source2: vdirsyncer.timer # https://github.com/pimutils/vdirsyncer/pull/779 +# https://github.com/pimutils/vdirsyncer/issues/793 Patch0: python-vdirsyncer-fix-tests.patch +# default deadline (200ms) is too short for obs +Patch1: python-vdirsyncer-shift-deadline.patch BuildRequires: %{python_module setuptools_scm} BuildRequires: fdupes BuildRequires: python-rpm-macros @@ -65,12 +68,15 @@ Obsoletes: vdirsyncer < %{version} %python_subpackages %description -Vdirsyncer synchronizes your calendars and addressbooks between two storages. The supported storages are CalDAV, CardDAV, arbitrary HTTP resources, vdir and some more. -It aims to be for CalDAV and CardDAV what OfflineIMAP is for IMAP. +Vdirsyncer synchronizes calendars and addressbooks between two +storages. The supported storages are CalDAV, CardDAV, arbitrary HTTP +resources, vdir and some more. It aims to be for CalDAV and CardDAV +what OfflineIMAP is for IMAP. %prep %setup -q -n vdirsyncer-%{version} %patch0 -p1 +%patch1 -p1 rm -rf vdirsyncer.egg-info %build @@ -85,7 +91,8 @@ install -Dpm 0644 %{SOURCE0} %{buildroot}%{_userunitdir}/vdirsyncer.service install -Dpm 0644 %{SOURCE1} %{buildroot}%{_userunitdir}/vdirsyncer.timer %check -%python_exec -m pytest -k 'not test_open_graphical_browser' +export DETERMINISTIC_TESTS=true +%pytest -k 'not test_open_graphical_browser' %files %{python_files} %doc README.rst