#4 Do not rely on trio.test; fixes compat. with trio 0.25.0
Opened 2 months ago by music. Modified 2 months ago
rpms/ music/python-pytest-trio trio-0.25  into  rawhide

@@ -0,0 +1,51 @@ 

+ From 9cda20bbb966fe1e4ae51921d566c668654ee5e1 Mon Sep 17 00:00:00 2001

+ From: Vincent Vanlaer <vincent.vanlaer@skynet.be>

+ Date: Sun, 3 Sep 2023 00:00:54 +0200

+ Subject: [PATCH] Remove trio.tests import causing warnings

+ 

+ It is deprecated and the replacement is made private as trio._tests.

+ While we could be using that, this commit copies over the one relevant

+ function that is actually necessary. The other two imports just repeat

+ tests that are already in trio and do not need repeating here.

+ ---

+  .../_tests/test_hypothesis_interaction.py     | 21 ++++++++++++++-----

+  1 file changed, 16 insertions(+), 5 deletions(-)

+ 

+ diff --git a/pytest_trio/_tests/test_hypothesis_interaction.py b/pytest_trio/_tests/test_hypothesis_interaction.py

+ index 75aa9f7..cb95a96 100644

+ --- a/pytest_trio/_tests/test_hypothesis_interaction.py

+ +++ b/pytest_trio/_tests/test_hypothesis_interaction.py

+ @@ -1,10 +1,5 @@

+  import pytest

+  import trio

+ -from trio.tests.test_scheduler_determinism import (

+ -    scheduler_trace,

+ -    test_the_trio_scheduler_is_not_deterministic,

+ -    test_the_trio_scheduler_is_deterministic_if_seeded,

+ -)

+  from hypothesis import given, settings, strategies as st

+  

+  from pytest_trio.plugin import _trio_test_runner_factory

+ @@ -38,6 +33,22 @@ async def test_mark_and_parametrize(x, y):

+      assert y in (1, 2)

+  

+  

+ +async def scheduler_trace():

+ +    """Returns a scheduler-dependent value we can use to check determinism."""

+ +    trace = []

+ +

+ +    async def tracer(name):

+ +        for i in range(10):

+ +            trace.append((name, i))

+ +            await trio.sleep(0)

+ +

+ +    async with trio.open_nursery() as nursery:

+ +        for i in range(5):

+ +            nursery.start_soon(tracer, i)

+ +

+ +    return tuple(trace)

+ +

+ +

+  def test_the_trio_scheduler_is_deterministic_under_hypothesis():

+      traces = []

+  

file modified
+7 -1
@@ -8,6 +8,12 @@ 

  License:        MIT or ASL 2.0

  URL:            https://github.com/python-trio/pytest-trio

  Source0:        https://github.com/python-trio/pytest-trio/archive/v%{version}/%{pypi_name}-%{version}.tar.gz

+ 

+ # Remove trio.tests import causing warnings

+ # https://github.com/python-trio/pytest-trio/pull/135

+ # We only backport the fix, not the additional formatting changes.

+ Patch:          https://github.com/python-trio/pytest-trio/pull/135/commits/9cda20bbb966fe1e4ae51921d566c668654ee5e1.patch

+ 

  BuildArch:      noarch

  

  %description
@@ -39,7 +45,7 @@ 

  Documentation for %{name}.

  

  %prep

- %autosetup -n %{pypi_name}-%{version}

+ %autosetup -n %{pypi_name}-%{version} -p1

  rm -rf %{pypi_name}.egg-info

  sed -i /RemovedInPytest4Warning/d pytest_trio/_tests/conftest.py

  sed -i s/--cov// pytest.ini

Backports https://github.com/python-trio/pytest-trio/pull/135, which was merged upstream, to keep the tests from requiring trio.tests. This fixes compatibility with current releases of python-trio.