def test_if_object_provider_always_return_same_instance(self): provider = LazySingleInstanceProvider(TestClass1) ret1 = provider.get_instance() ret2 = provider.get_instance() assert isinstance(ret1, TestClass1) assert isinstance(ret2, TestClass1) assert ret1 is ret2
def test_if_provider_raise_error_when_initialized_with_not_callable(self): with pytest.raises(TypeError): LazySingleInstanceProvider(1)
def test_if_provider_raise_error_when_callable_requires_arguments(self): def func1(a): return a with pytest.raises(TypeError): LazySingleInstanceProvider(func1)
def test_if_object_provider_returns_instance(self): provider = LazySingleInstanceProvider(TestClass1) ret1 = provider.get_instance() assert isinstance(ret1, TestClass1)