a4f0b35008
Signed-off-by: Nils Philippsen <nils@tiptoe.de>
72 lines
2.7 KiB
Diff
72 lines
2.7 KiB
Diff
From 4f0bf86eec0ea557b2df31cce28612d5f124a8a3 Mon Sep 17 00:00:00 2001
|
|
From: Nils Philippsen <nils@tiptoe.de>
|
|
Date: Sun, 12 Dec 2021 18:35:03 -0500
|
|
Subject: [PATCH] Ignore ephemeral classes in test_all_present()
|
|
|
|
Fixed a regression in the test suite where the test called
|
|
``CompareAndCopyTest::test_all_present`` would fail on some platforms due
|
|
to additional testing artifacts being detected. Pull request courtesy Nils
|
|
Philippsen.
|
|
|
|
In some circumstances, ephemeral class objects that are created within
|
|
the scope of a test method don't seem to be garbage collected directly
|
|
on exit. Filter out classes created in test modules.
|
|
|
|
Fixes: #7450
|
|
Closes: #7451
|
|
Pull-request: https://github.com/sqlalchemy/sqlalchemy/pull/7451
|
|
Pull-request-sha: 135a8aaba2c6941460c7f45aa1a55c8f6b9eb43d
|
|
|
|
Change-Id: I621967bd916089dc1e3f98625fd2a852cd9fd712
|
|
(cherry picked from commit 4291e3c235569031948ebaacec4dde8776255e0e)
|
|
---
|
|
doc/build/changelog/unreleased_14/7450.rst | 9 +++++++++
|
|
test/sql/test_compare.py | 6 +++++-
|
|
2 files changed, 14 insertions(+), 1 deletion(-)
|
|
create mode 100644 doc/build/changelog/unreleased_14/7450.rst
|
|
|
|
diff --git a/doc/build/changelog/unreleased_14/7450.rst b/doc/build/changelog/unreleased_14/7450.rst
|
|
new file mode 100644
|
|
index 000000000..56aaa1d4f
|
|
--- /dev/null
|
|
+++ b/doc/build/changelog/unreleased_14/7450.rst
|
|
@@ -0,0 +1,9 @@
|
|
+.. change::
|
|
+ :tags: bug, tests, regression
|
|
+ :tickets: 7450
|
|
+
|
|
+ Fixed a regression in the test suite where the test called
|
|
+ ``CompareAndCopyTest::test_all_present`` would fail on some platforms due
|
|
+ to additional testing artifacts being detected. Pull request courtesy Nils
|
|
+ Philippsen.
|
|
+
|
|
diff --git a/test/sql/test_compare.py b/test/sql/test_compare.py
|
|
index a5252601c..a4684cccf 100644
|
|
--- a/test/sql/test_compare.py
|
|
+++ b/test/sql/test_compare.py
|
|
@@ -1357,6 +1357,10 @@ class CompareAndCopyTest(CoreFixtures, fixtures.TestBase):
|
|
]
|
|
|
|
def test_all_present(self):
|
|
+ """test for elements that are in SQLAlchemy Core, that they are
|
|
+ also included in the fixtures above.
|
|
+
|
|
+ """
|
|
need = set(
|
|
cls
|
|
for cls in class_hierarchy(ClauseElement)
|
|
@@ -1364,9 +1368,9 @@ class CompareAndCopyTest(CoreFixtures, fixtures.TestBase):
|
|
and (
|
|
"__init__" in cls.__dict__
|
|
or issubclass(cls, AliasedReturnsRows)
|
|
- or "inherit_cache" not in cls.__dict__
|
|
)
|
|
and not issubclass(cls, (Annotated))
|
|
+ and cls.__module__.startswith("sqlalchemy.")
|
|
and "orm" not in cls.__module__
|
|
and "compiler" not in cls.__module__
|
|
and "crud" not in cls.__module__
|
|
--
|
|
2.33.1
|
|
|