mirror of
https://github.com/sqlalchemy/sqlalchemy.git
synced 2026-05-16 05:37:16 -04:00
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: 135a8aaba2
Change-Id: I621967bd916089dc1e3f98625fd2a852cd9fd712
(cherry picked from commit 4291e3c235569031948ebaacec4dde8776255e0e)
This commit is contained in:
committed by
Mike Bayer
parent
5f38ea78f3
commit
4f0bf86eec
+9
@@ -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.
|
||||
|
||||
@@ -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__
|
||||
|
||||
Reference in New Issue
Block a user