123456789101112131415161718192021222324252627282930313233 |
- """
- Tests for salt.loader_context
- """
- import salt.loader
- import salt.loader_context
- def test_named_loader_context():
- loader_context = salt.loader_context.LoaderContext()
- named_context = salt.loader_context.NamedLoaderContext("__test__", loader_context)
- test_dunder = {"foo": "bar"}
- lazy_loader = salt.loader.LazyLoader(["/foo"], pack={"__test__": test_dunder})
- assert named_context.loader() is None
- token = salt.loader_context.loader_ctxvar.set(lazy_loader)
- try:
- assert named_context.loader() == lazy_loader
- # The loader's value is the same object as test_dunder
- assert named_context.value() is test_dunder
- assert named_context["foo"] == "bar"
- finally:
- salt.loader_context.loader_ctxvar.reset(token)
- def test_named_loader_default():
- loader_context = salt.loader_context.LoaderContext()
- default = {"foo": "bar"}
- named_context = salt.loader_context.NamedLoaderContext(
- "__test__", loader_context, default=default
- )
- assert named_context.loader() is None
- # The loader's value is the same object as default
- assert named_context.value() is default
- assert named_context["foo"] == "bar"
|