1def format_name(name):
2 return " ".join([word.capitalize() for word in name.split("_")])
3
4def outer():
5 memory = set()
6 def memnick(*args):
7 if len(args) == 0:
8 def memorize(func):
9 def wrapper(*args, **kwargs):
10 memory.add((func.__name__, func(*args, **kwargs)))
11 return func(*args, **kwargs)
12 wrapper.__name__ = func.__name__
13 return wrapper
14 return memorize
15 else:
16 res = []
17 for function in args:
18 for function_name_memory, phrase in memory:
19 if phrase.startswith(format_name(function.__name__)):
20 res.append(f"С гласа на {format_name(function_name_memory)}: {phrase}")
21 return res
22 return memnick
23
24memnick = outer()
..F..
======================================================================
FAIL: test_memnick_memorizes (test.TestMemnick.test_memnick_memorizes)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/tmp/test.py", line 51, in test_memnick_memorizes
self.assertEqual(
~~~~~~~~~~~~~~~~^
[
^
...<5 lines>...
solution.memnick(божана, емил),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
AssertionError: Lists differ: ['С гласа на Лазар: Божана, може би ще те любя.', 'С г[166 chars]ах!'] != ['С гласа на Почекаин: Божана, ще те любя.', 'С гласа [166 chars]ах!']
First differing element 0:
'С гласа на Лазар: Божана, може би ще те любя.'
'С гласа на Почекаин: Божана, ще те любя.'
- ['С гласа на Лазар: Божана, може би ще те любя.',
? ^ ^^^ --------
+ ['С гласа на Почекаин: Божана, ще те любя.',
? ^^^^^ ^^
+ 'С гласа на Лазар: Божана, може би ще те любя.',
'С гласа на Митака: Божана, на този етап не съм сигурен дали искам да те '
'любя.',
- 'С гласа на Почекаин: Божана, ще те любя.',
'С гласа на Бай Венци: Емил, айде да играем шах!']
----------------------------------------------------------------------
Ran 5 tests in 0.002s
FAILED (failures=1)
15.03.2026 13:57
15.03.2026 13:56