1def logic_mixin_factory(mass: int, mass_attr_name: str, material: str, material_attr_name: str, float_method_name: str):
2 class _Mixin:
3 def is_a_witch(self) -> str:
4 if getattr(self, mass_attr_name, None) == mass:
5 return 'Burn her!'
6 if getattr(self, material_attr_name, None) == material:
7 return 'Burn her!'
8 if hasattr(self, float_method_name):
9 return 'Burn her!'
10
11 return "No, but it's a pity, cuz she looks like a witch!"
12
13 return _Mixin
F
======================================================================
FAIL: test_realcase (test.TestWitchMixinFactory)
Real test for the Witch factory.
----------------------------------------------------------------------
Traceback (most recent call last):
File "/tmp/test.py", line 50, in test_realcase
self.assertEqual(FloatFalse().is_a_witch(), self.RESULT_FALSE)
AssertionError: 'Burn her!' != "No, but it's a pity, cuz she looks like a witch!"
- Burn her!
+ No, but it's a pity, cuz she looks like a witch!
----------------------------------------------------------------------
Ran 1 test in 0.000s
FAILED (failures=1)