def test_session_factory__region_name(self): with settings.modify() as context: context.AWS_CREDENTIALS = {"default": {"region_name": "foo"}} session_factory = factory.SessionFactory("AWS_CREDENTIALS") session = session_factory.create() assert session._session_instance_vars["region"] == "foo"
def test_debug_enabled__warning_returned_if_enabled(self): with settings.modify() as patch: patch.DEBUG = True result = built_in.debug_enabled(settings) assert result == built_in.W001
def test_session_factory__credentials(self, credential, expected): with settings.modify() as context: context.AWS_CREDENTIALS = {"default": {credential: "foo"}} session_factory = factory.SessionFactory("AWS_CREDENTIALS") session = session_factory.create() assert getattr(session._credentials, expected) == "foo"
def test_checks_ignore_unknown_keys(self): with settings.modify() as patch: patch.NAMED_CONFIG = {'default': {'foo': 123, 'eek': 321}} target = helpers.NamedConfiguration('NAMED_CONFIG') actual = target.checks(settings=settings) assert len(actual) == 0
def test_checks_ignore_unknown_keys(self): with settings.modify() as patch: patch.NAMED_CONFIG = {"default": {"foo": 123, "eek": 321}} target = helpers.NamedConfiguration("NAMED_CONFIG") actual = target.checks(settings=settings) assert len(actual) == 0
def test_run_report_from_app(args, exit_code=4): with settings.modify() as patch: patch.DEBUG = True with pytest.raises(SystemExit) as ex: app.dispatch(args=args) assert ex.value.code == exit_code
def test_checks_ignore_none_settings(self): with settings.modify() as patch: patch.FACTORY = None target = conf_factory.NamedPluginFactory("FACTORY") actual = target.checks(settings=settings) assert actual is None
def test_checks__multiple_instance_messages(self): target = ProviderFactoryTest(multi_messages=True) with settings.modify() as ctx: ctx.TEST_PROVIDERS = ("tests.conf.helpers.test_providers.ProviderBaseTest",) actual = target.checks(settings=settings) assert actual == [checks.Info("foo"), checks.Warn("bar")]
def test_checks(self, provider_settings, expected): target = ProviderFactoryTest() with settings.modify() as ctx: ctx.TEST_PROVIDERS = provider_settings actual = target.checks(settings=settings) assert actual == expected
def test_checks_ignore_none_settings(self): with settings.modify() as patch: patch.NAMED_CONFIG = None target = helpers.NamedConfiguration('NAMED_CONFIG') actual = target.checks(settings=settings) assert actual is None assert actual is None
def test_resolve_from_settings(self, flag, expected): with settings.modify() as patch: patch.FEATURE_FLAGS = { "enable-a": True, "Enable b": False, } actual = feature_flags.DEFAULT._resolve_from_settings(flag) assert actual is expected
def test_checks_invalid_type(self): with settings.modify() as patch: patch.NAMED_CONFIG = [] target = helpers.NamedConfiguration('NAMED_CONFIG') actual = target.checks(settings=settings) assert isinstance(actual, checks.Critical) assert "NOT A DICT INSTANCE" in actual.msg.upper() assert actual.obj == 'settings.NAMED_CONFIG'
def test_checks_invalid_type(self): with settings.modify() as patch: patch.INVALID_SETTING = [] target = conf_factory.NamedPluginFactory("INVALID_SETTING") actual = target.checks(settings=settings) assert isinstance(actual, checks.Critical) assert "NOT A DICT INSTANCE" in actual.msg.upper() assert actual.obj == "settings.INVALID_SETTING"
def test_checks_default_not_defined(self): with settings.modify() as patch: patch.FACTORY = {} target = conf_factory.NamedPluginFactory("FACTORY") actual = target.checks(settings=settings) assert len(actual) == 1 message = actual[0] assert isinstance(message, checks.Warn) assert "DEFAULT DEFINITION NOT DEFINED" in message.msg.upper() assert message.obj == "settings.FACTORY"
def test_checks_invalid_instance_def_length(self): with settings.modify() as patch: patch.FACTORY = {"default": ("a", "b", "c")} target = conf_factory.NamedPluginFactory("FACTORY") actual = target.checks(settings=settings) assert len(actual) == 1 message = actual[0] assert isinstance(message, checks.Critical) assert "NOT A TYPE NAME, KWARG" in message.msg.upper() assert message.obj == "settings.FACTORY[default]"
def test_checks_default_not_defined(self): with settings.modify() as patch: patch.NAMED_CONFIG = {} target = helpers.NamedConfiguration('NAMED_CONFIG') actual = target.checks(settings=settings) assert len(actual) == 1 message = actual[0] assert isinstance(message, checks.Warn) assert "DEFAULT DEFINITION NOT DEFINED" in message.msg.upper() assert message.obj == 'settings.NAMED_CONFIG'
def test_checks__missing_settings(self): target = ProviderFactoryTest() with settings.modify() as ctx: del ctx.TEST_PROVIDERS actual = target.checks(settings=settings) assert actual == checks.Critical( u"Provider definitions missing from settings.", u"Add a TEST_PROVIDERS entry into settings.", u"settings.TEST_PROVIDERS")
def test_checks_invalid_instance_def_kwargs(self): with settings.modify() as patch: patch.FACTORY = {"default": ("tests.factory.IronBar", [])} target = conf_factory.NamedPluginFactory("FACTORY") actual = target.checks(settings=settings) assert len(actual) == 1 message = actual[0] assert isinstance(message, checks.Critical) assert "KWARGS IS NOT A DICT" in message.msg.upper() assert message.obj == "settings.FACTORY[default]"
def test_checks_invalid_instance_def_cannot_import(self): with settings.modify() as patch: patch.FACTORY = {"default": ("a.b.c", {})} target = conf_factory.NamedPluginFactory("FACTORY") actual = target.checks(settings=settings) assert len(actual) == 1 message = actual[0] assert isinstance(message, checks.Error) assert "UNABLE TO IMPORT TYPE" in message.msg.upper() assert message.obj == "settings.FACTORY[default]"
def test_checks_invalid_instance_def_type(self): with settings.modify() as patch: patch.FACTORY = {"default": {}} target = conf_factory.NamedPluginFactory("FACTORY") actual = target.checks(settings=settings) assert len(actual) == 1 message = actual[0] assert isinstance(message, checks.Critical) assert "DEFINITION IS NOT A LIST/TUPLE" in message.msg.upper() assert message.obj == "settings.FACTORY[default]"
def test_checks_alias_unknown_name(self): with settings.modify() as patch: patch.FACTORY = {"default": ("Alias", {"name": "foo"})} target = conf_factory.NamedPluginFactory("FACTORY") actual = target.checks(settings=settings) assert len(actual) == 1 message = actual[0] assert isinstance(message, checks.Critical) assert "Alias target not defined" in message.msg assert message.obj == "settings.FACTORY[default][foo]"
def test_checks_invalid_instance_def_type(self): with settings.modify() as patch: patch.NAMED_CONFIG = {'default': []} target = helpers.NamedConfiguration('NAMED_CONFIG') actual = target.checks(settings=settings) assert len(actual) == 1 message = actual[0] assert isinstance(message, checks.Critical) assert "DEFINITION ENTRY IS NOT A DICT" in message.msg.upper() assert message.obj == 'settings.NAMED_CONFIG[default]'
def test_run_report_from_simple_app(monkeypatch, args, exit_code=4): monkeypatch.setattr(tests.sample_app_simple.app, "application_settings", None) monkeypatch.setattr(tests.sample_app_simple.app, "application_checks", "__main__.checks") with settings.modify() as patch: patch.DEBUG = True with pytest.raises(SystemExit) as ex: tests.sample_app_simple.app.dispatch(args=args) assert ex.value.code == exit_code
def test_checks_alias(self): with settings.modify() as patch: patch.FACTORY = { "default": ("Alias", { "name": "foo" }), "foo": ("tests.factory.IronBar", {}), } target = conf_factory.NamedPluginFactory("FACTORY") actual = target.checks(settings=settings) assert len(actual) == 0
def test_resolve(self, monkeypatch, flag, expected): monkeypatch.setenv("PYAPP_FLAG_ENABLE_A", "On") monkeypatch.setenv("PYAPP_FLAG_ENABLE_B", "true") with settings.modify() as patch: patch.FEATURE_FLAGS = { "enable-b": False, "Enable_C": True, } actual = feature_flags.DEFAULT._resolve(flag, False) assert actual is expected
def test_checks_required_key_missing(self): with settings.modify() as patch: patch.NAMED_CONFIG = {'default': {}} target = helpers.NamedConfiguration('NAMED_CONFIG', required_keys=('foo', )) actual = target.checks(settings=settings) assert len(actual) == 1 message = actual[0] assert isinstance(message, checks.Critical) assert "DOES NOT CONTAIN `FOO` VALUE" in message.msg.upper() assert message.obj == 'settings.NAMED_CONFIG[default]'
def test_checks_unknown_key(self): with settings.modify() as patch: patch.NAMED_CONFIG = {"default": {"foo": 123, "eek": 321}} target = helpers.NamedConfiguration("NAMED_CONFIG", required_keys=("foo", ), optional_keys=("bar", )) actual = target.checks(settings=settings) assert len(actual) == 1 message = actual[0] assert isinstance(message, checks.Warn) assert "CONTAINS UNKNOWN VALUE `EEK`" in message.msg.upper() assert message.obj == "settings.NAMED_CONFIG[default][eek]"
def test_checks__invalid_import(self): target = ProviderFactoryTest() with settings.modify() as ctx: ctx.TEST_PROVIDERS = [ 'tests.test_conf_helpers_providers.ProviderBaseTest', 'tests.wrong.ProviderBaseTest' ] actual = target.checks(settings=settings)[0] assert isinstance(actual, checks.Critical) assert actual.msg == u"Unable to import provider type." assert actual.obj == u"settings.TEST_PROVIDERS[1]"
def test_checks_unknown_key(self): with settings.modify() as patch: patch.NAMED_CONFIG = {'default': {'foo': 123, 'eek': 321}} target = helpers.NamedConfiguration('NAMED_CONFIG', required_keys=('foo', ), optional_keys=('bar', )) actual = target.checks(settings=settings) assert len(actual) == 1 message = actual[0] assert isinstance(message, checks.Warn) assert "CONTAINS UNKNOWN VALUE `EEK`" in message.msg.upper() assert message.obj == 'settings.NAMED_CONFIG[default][eek]'
def test_checks_alias_additional_args(self): with settings.modify() as patch: patch.FACTORY = { "default": ("Alias", { "name": "foo", "bar": "123" }), "foo": ("tests.factory.IronBar", {}), } target = conf_factory.NamedPluginFactory("FACTORY") actual = target.checks(settings=settings) assert len(actual) == 1 message = actual[0] assert isinstance(message, checks.Warn) assert "Alias contains unknown arguments" in message.msg assert message.obj == "settings.FACTORY[default]"