def test_uses_passed_container(): """should create new container and use it""" container = get_container() new_container = Container() with use_container(new_container) as actual: assert actual == new_container assert get_container() == actual assert get_container() == container
def test_creates_container(): """should create new container and use it""" container = get_container() with use_container() as actual: assert actual is not None assert actual != container assert get_container() == actual assert get_container() == container
def test_get_set_container(): """get should return current container""" container = Container() set_container(container) actual = get_container() assert container == actual
def add_function_resolver(dependency: Union[str, Callable], resolve_: Callable[[Container, Any], Any]): """Adds function resolver to current container""" get_container().set(dependency, FunctionResolver(resolve_))
def add_singleton(dependency: Union[str, Callable], value: Any): """Adds singleton value to current container""" get_container().set(dependency, SingletonResolver(value))
def add_resolver(dependency: Union[str, Callable], resolver: Resolver): """Adds resolver to current container""" get_container().set(dependency, resolver)