bitbake: COW: Fix hardcoded magic numbers and work with python 3.13

The COW tests started failing on python 3.13. Looks like it is time
to fix the FIXME and drop the magic numbers!

(Bitbake rev: a0a5ce49f28d886b1dac173842642e69517b44e3)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 2e6608cec508b3b9bab3530f83e70665ff638182)
[YC: This fixes the bb.tests.cow.COWTestCase.testOriginalTestSuite
     bitbake-selftest on the newly added fedora-41 workers]
Signed-off-by: Yoann Congal <yoann.congal@smile.fr>
Signed-off-by: Paul Barker <paul@pbarker.dev>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Richard Purdie
2024-10-08 13:36:20 +01:00
parent 04ae2d93de
commit 37539a1555

View File

@@ -36,8 +36,9 @@ class COWDictMeta(COWMeta):
__marker__ = tuple()
def __str__(cls):
# FIXME: I have magic numbers!
return "<COWDict Level: %i Current Keys: %i>" % (cls.__count__, len(cls.__dict__) - 3)
ignored_keys = set(["__count__", "__doc__", "__module__", "__firstlineno__", "__static_attributes__"])
keys = set(cls.__dict__.keys()) - ignored_keys
return "<COWDict Level: %i Current Keys: %i>" % (cls.__count__, len(keys))
__repr__ = __str__
@@ -161,8 +162,9 @@ class COWDictMeta(COWMeta):
class COWSetMeta(COWDictMeta):
def __str__(cls):
# FIXME: I have magic numbers!
return "<COWSet Level: %i Current Keys: %i>" % (cls.__count__, len(cls.__dict__) - 3)
ignored_keys = set(["__count__", "__doc__", "__module__", "__firstlineno__", "__static_attributes__"])
keys = set(cls.__dict__.keys()) - ignored_keys
return "<COWSet Level: %i Current Keys: %i>" % (cls.__count__, len(keys))
__repr__ = __str__