Importieren Sie nur eine statische Klassenmethode
Ich habe den folgenden Dekorateur in einer Basisklasse:
class BaseTests(TestCase):
@staticmethod
def check_time(self, fn):
@wraps(fn)
def test_wrapper(*args,**kwargs):
# do checks ...
return test_wrapper
Und die folgende Klasse, die von BaseTests erbt:
from path.base_posting import BaseTests
from path.base_posting.BaseTests import check_time # THIS LINE DOES NOT WORK!
class SpecificTest(BaseTests):
@check_time # use the decorator
def test_post(self):
# do testing ...
Ich möchte den Dekorator in SpecificTest wie oben verwenden, ohne BaseTests.check_time verwenden zu müssen, da er im Originalcode lange Namen hat und ich ihn an vielen Stellen verwenden muss. Irgendwelche Ideen?
BEARBEITEN: Ich habe mich entschieden, check_time als unabhängige Funktion in die BaseTests-Datei aufzunehmen und einfach zu importieren
from path.base_posting import BaseTests, check_time