diff options
Diffstat (limited to 'di')
-rw-r--r-- | di/core.py | 89 |
1 files changed, 0 insertions, 89 deletions
@@ -157,92 +157,3 @@ def usesclassinject(method): return call -### Unittests are defined below this point -import unittest - - -class BareFuncEnableTestCase(unittest.TestCase): - @inject(injected_func = str.lower) - def method(self, arg): - return injected_func(arg) - -class BareFuncTestCase(unittest.TestCase): - @inject(injected_func = str.lower) - def method(self, arg): - return injected_func(arg) - - @inject(injected_func = method) - def method2(self, arg): - return injected_func(self, arg) - - def test_bare_inject(self): - """Tests the injection to plain methods.""" - self.assertEqual("a", self.method("A")) - - def test_double_inject(self): - """Tests the injection to two plain methods.""" - self.assertEqual("a", self.method2("A")) - - def test_inject_global_tainting(self): - """Tests whether the global namespace is clean - after the injection is done.""" - global injected_func - injected_func = None - self.method("A") - self.assertEqual(None, injected_func) - - -@inject(injected_func = str.lower) -class Test(object): - """Test fixture for class injection.""" - @usesclassinject - def method(self, arg): - return injected_func(arg) - - -@inject(injected_func = str.lower) -class TestInit(object): - """Test fixture for injection to __init__.""" - @usesclassinject - def __init__(self, arg): - self.value = injected_func(arg) - - -@inject(injected_func = str.lower) -class TestCallable(object): - """Test fixture for callable classes.""" - @usesclassinject - def __call__(self, arg): - return injected_func(arg) - -class TestCallableSingle(object): - """Test fixture for callable classes with - simple method injection.""" - @inject(injected_func = str.lower) - def __call__(self, arg): - return injected_func(arg) - -class ClassDITestCase(unittest.TestCase): - - def test_class_inject(self): - """Test injection to instance method.""" - obj = Test() - self.assertEqual("a", obj.method("A")) - - def test_class_init_inject(self): - """Test injection to class constructor.""" - obj = TestInit("A") - self.assertEqual("a", obj.value) - - def test_callable_class(self): - """Test class injection to callable class.""" - obj = TestCallable() - self.assertEqual("a", obj("A")) - - def test_callable_class_single(self): - """Test method injection to callable class.""" - obj = TestCallableSingle() - self.assertEqual("a", obj("A")) - -if __name__ == "__main__": - unittest.main() |