11
0

5 Commits

Author SHA256 Message Date
e7d2aefea0 Accepting request 1204915 from devel:languages:python
- Make Django build-requirement conditional and disable by default for
  SUSE:SLFO:Main, bsc#1231124

OBS-URL: https://build.opensuse.org/request/show/1204915
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-testfixtures?expand=0&rev=29
2024-10-02 19:32:38 +00:00
ccd31abce4 - Make Django build-requirement conditional and disable by default for
SUSE:SLFO:Main, bsc#1231124

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-testfixtures?expand=0&rev=60
2024-10-01 11:13:51 +00:00
1d3c0756f9 Accepting request 1203766 from devel:languages:python
- Add patch support-python-313.patch:
  * Support Python 3.13 AttributeError message changes.

- update to 8.3.0:
  * :class:`ShouldRaise` now supports :class:`ExceptionGroup`.
  * Fixed bug where
    :func:`~testfixtures.comparison.compare_generator` did not
    respect strict=True.
  * Fixed bug in the type annotations for :class:`ShouldRaise`
    and :func:`~testfixtures.comparison.compare_exception`.
  * :class:`LogCapture` will now raise an exception if closed
    while still installed. This can be a source of particularly
    confusing bugs.

OBS-URL: https://build.opensuse.org/request/show/1203766
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-testfixtures?expand=0&rev=28
2024-09-29 16:09:04 +00:00
bda7ca83e5 - Add patch support-python-313.patch:
* Support Python 3.13 AttributeError message changes.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-testfixtures?expand=0&rev=58
2024-09-26 04:57:18 +00:00
49dfad6286 - update to 8.3.0:
* :class:`ShouldRaise` now supports :class:`ExceptionGroup`.
  * Fixed bug where
    :func:`~testfixtures.comparison.compare_generator` did not
    respect strict=True.
  * Fixed bug in the type annotations for :class:`ShouldRaise`
    and :func:`~testfixtures.comparison.compare_exception`.
  * :class:`LogCapture` will now raise an exception if closed
    while still installed. This can be a source of particularly
    confusing bugs.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-testfixtures?expand=0&rev=57
2024-06-30 08:18:17 +00:00
5 changed files with 87 additions and 7 deletions

View File

@@ -1,3 +1,29 @@
-------------------------------------------------------------------
Tue Oct 1 11:13:06 UTC 2024 - Daniel Garcia <daniel.garcia@suse.com>
- Make Django build-requirement conditional and disable by default for
SUSE:SLFO:Main, bsc#1231124
-------------------------------------------------------------------
Thu Sep 26 04:56:43 UTC 2024 - Steve Kowalik <steven.kowalik@suse.com>
- Add patch support-python-313.patch:
* Support Python 3.13 AttributeError message changes.
-------------------------------------------------------------------
Sun Jun 30 08:18:06 UTC 2024 - Dirk Müller <dmueller@suse.com>
- update to 8.3.0:
* :class:`ShouldRaise` now supports :class:`ExceptionGroup`.
* Fixed bug where
:func:`~testfixtures.comparison.compare_generator` did not
respect strict=True.
* Fixed bug in the type annotations for :class:`ShouldRaise`
and :func:`~testfixtures.comparison.compare_exception`.
* :class:`LogCapture` will now raise an exception if closed
while still installed. This can be a source of particularly
confusing bugs.
-------------------------------------------------------------------
Wed May 8 06:08:53 UTC 2024 - Steve Kowalik <steven.kowalik@suse.com>

View File

@@ -24,23 +24,37 @@
%define psuffix %{nil}
%bcond_with test
%endif
%if 0%{?suse_version} == 1600
# No django in SLFO:Main
%bcond_with django
%else
%bcond_without django
%endif
%{?sle15_python_module_pythons}
Name: python-testfixtures%{psuffix}
Version: 8.2.0
Version: 8.3.0
Release: 0
Summary: A collection of helpers and mock objects for unit tests and doc tests
License: MIT
URL: https://github.com/Simplistix/testfixtures
Source: https://files.pythonhosted.org/packages/source/t/testfixtures/testfixtures-%{version}.tar.gz
# PATCH-FIX-UPSTREAM gh#simplistix/testfixtures#202
Patch0: support-python-313.patch
BuildRequires: %{python_module base >= 3.7}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module wheel}
%if %{with test}
%if %{with django}
BuildRequires: %{python_module Django}
BuildRequires: %{python_module pytest-django}
%endif
BuildRequires: %{python_module Twisted}
BuildRequires: %{python_module pytest >= 3.6}
BuildRequires: %{python_module pytest-django}
BuildRequires: %{python_module sybil >= 6}
BuildRequires: %{python_module testfixtures = %{version}}
%endif
@@ -79,9 +93,13 @@ chmod a-x docs/*.txt
%check
%if %{with test}
export DJANGO_SETTINGS_MODULE=testfixtures.tests.test_django.settings
export PYTHONPATH=$(pwd)
%pytest testfixtures/tests
%if %{with django}
export DJANGO_SETTINGS_MODULE=testfixtures.tests.test_django.settings
%else
test_flags="--ignore=testfixtures/tests/test_django"
%endif
%pytest $test_flags testfixtures/tests
%endif
%if %{without test}

36
support-python-313.patch Normal file
View File

@@ -0,0 +1,36 @@
From 291850017e9154b4219fc35d8eca3551724bef94 Mon Sep 17 00:00:00 2001
From: Steve Kowalik <steven@wedontsleep.org>
Date: Thu, 26 Sep 2024 14:50:58 +1000
Subject: [PATCH] Support Python 3.13's AttributeError changes
Python 3.13 has changed the message that is raised with an
AttributeError to provide a hint on how to help avoid it -- but this
breaks a test case. Support both the old and the new message.
---
testfixtures/tests/test_replace.py | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/testfixtures/tests/test_replace.py b/testfixtures/tests/test_replace.py
index 073e43c..863981b 100644
--- a/testfixtures/tests/test_replace.py
+++ b/testfixtures/tests/test_replace.py
@@ -15,6 +15,7 @@
from unittest import TestCase
import os
+import sys
from testfixtures.mock import Mock
from testfixtures.tests import sample1, sample3
@@ -1362,7 +1363,10 @@ def test_invalid_attribute_on_instance_of_slotted_class(self):
obj = OriginE()
assert not hasattr(obj, '__dict__')
replace_ = Replacer()
- with ShouldRaise(AttributeError("'OriginE' object has no attribute 'bad'")):
+ msg = "'OriginE' object has no attribute 'bad'"
+ if sys.version_info >= (3, 13):
+ msg += " and no __dict__ for setting new attributes"
+ with ShouldRaise(AttributeError(msg)):
replace_(obj, name='bad', replacement=42, strict=self.strict)
def test_method_on_instance_of_slotted_subclass(self):

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ef43b657134c87e8a3044f4b02a32ae2ebddf44b2b97bc7989a20116403988ee
size 136662

BIN
testfixtures-8.3.0.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.