Beispiel #1
0
        async def _test():
            os.environ[
                fastapi_plugins.
                DEFAULT_CONFIG_ENVVAR] = fastapi_plugins.CONFIG_NAME_LOCAL  # noqa E501
            try:

                @fastapi_plugins.registered_configuration
                class MyConfigDocker(fastapi_plugins.PluginSettings):
                    api_name: str = 'docker'

                @fastapi_plugins.registered_configuration_local
                class MyConfigLocal(fastapi_plugins.PluginSettings):
                    api_name: str = 'local'

                app = fastapi.FastAPI()
                config = fastapi_plugins.get_config()

                await fastapi_plugins.config_plugin.init_app(app=app,
                                                             config=config
                                                             )  # noqa E501
                await fastapi_plugins.config_plugin.init()

                try:
                    c = await fastapi_plugins.config_plugin()
                    exp = d2json(MyConfigLocal().dict())
                    res = d2json(c.dict())
                    self.assertTrue(res == exp,
                                    'get configuration failed: %s != %s' %
                                    (exp, res))  # noqa E501
                finally:
                    await fastapi_plugins.config_plugin.terminate()
            finally:
                os.environ.pop(fastapi_plugins.DEFAULT_CONFIG_ENVVAR)
                fastapi_plugins.reset_config()
Beispiel #2
0
    def test_decorator_register_config_test(self):
        try:

            @fastapi_plugins.registered_configuration_test
            class MyConfig(fastapi_plugins.PluginSettings):
                api_name: str = 'API name'

            #
            exp = d2json(MyConfig().dict())
            res = d2json(
                fastapi_plugins.get_config(
                    fastapi_plugins.CONFIG_NAME_TEST).dict())  # noqa E501
            self.assertTrue(res == exp, 'get configuration failed')
            #
            os.environ[
                fastapi_plugins.
                DEFAULT_CONFIG_ENVVAR] = fastapi_plugins.CONFIG_NAME_TEST  # noqa E501
            try:
                exp = d2json(MyConfig().dict())
                res = d2json(fastapi_plugins.get_config().dict())
                self.assertTrue(res == exp, 'get configuration failed')
            finally:
                os.environ.pop(fastapi_plugins.DEFAULT_CONFIG_ENVVAR)
        finally:
            fastapi_plugins.reset_config()
Beispiel #3
0
        async def _test():
            @fastapi_plugins.registered_configuration
            class MyConfigDocker(fastapi_plugins.PluginSettings):
                api_name: str = 'docker'

            @fastapi_plugins.registered_configuration_local
            class MyConfigLocal(fastapi_plugins.PluginSettings):
                api_name: str = 'local'

            app = fastapi.FastAPI()
            config = fastapi_plugins.get_config()

            await fastapi_plugins.config_plugin.init_app(app=app,
                                                         config=config
                                                         )  # noqa E501
            await fastapi_plugins.config_plugin.init()

            try:
                c = await fastapi_plugins.config_plugin()
                exp = d2json(MyConfigDocker().dict())
                res = d2json(c.dict())
                self.assertTrue(res == exp, 'get configuration failed')
            finally:
                await fastapi_plugins.config_plugin.terminate()
                fastapi_plugins.reset_config()
Beispiel #4
0
    def test_wrap_reset_config(self):
        try:

            class MyConfig(fastapi_plugins.PluginSettings):
                api_name: str = 'API name'

            from fastapi_plugins.settings import _manager

            exp = {}
            res = _manager._settings_map
            self.assertTrue(res == exp, 'reset init failed')

            fastapi_plugins.register_config(MyConfig)

            exp = {fastapi_plugins.CONFIG_NAME_DOCKER: MyConfig}
            res = _manager._settings_map
            self.assertTrue(res == exp, 'reset register failed')

            fastapi_plugins.reset_config()

            exp = {}
            res = _manager._settings_map
            self.assertTrue(res == exp, 'reset failed')
        finally:
            fastapi_plugins.reset_config()
Beispiel #5
0
    def test_wrap_register_config_local(self):
        try:

            class MyConfig(fastapi_plugins.PluginSettings):
                api_name: str = 'API name'

            #
            fastapi_plugins.register_config_local(MyConfig)
            exp = d2json(MyConfig().dict())
            res = d2json(
                fastapi_plugins.get_config(
                    fastapi_plugins.CONFIG_NAME_LOCAL).dict())  # noqa E501
            self.assertTrue(res == exp, 'get configuration failed')
            #
            os.environ[
                fastapi_plugins.
                DEFAULT_CONFIG_ENVVAR] = fastapi_plugins.CONFIG_NAME_LOCAL  # noqa E501
            try:
                exp = d2json(MyConfig().dict())
                res = d2json(fastapi_plugins.get_config().dict())
                self.assertTrue(res == exp, 'get configuration failed')
            finally:
                os.environ.pop(fastapi_plugins.DEFAULT_CONFIG_ENVVAR)
        finally:
            fastapi_plugins.reset_config()
Beispiel #6
0
    def test_wrap_get_config(self):
        try:

            class MyConfig(fastapi_plugins.PluginSettings):
                api_name: str = 'API name'

            fastapi_plugins.register_config(MyConfig)
            exp = d2json(MyConfig().dict())
            res = d2json(fastapi_plugins.get_config().dict())
            self.assertTrue(res == exp, 'get configuration failed')
        finally:
            fastapi_plugins.reset_config()
Beispiel #7
0
    def test_decorator_register_config_by_name(self):
        try:
            name = 'myconfig'

            @fastapi_plugins.registered_configuration(name=name)
            class MyConfig(fastapi_plugins.PluginSettings):
                api_name: str = 'API name'

            exp = d2json(MyConfig().dict())
            res = d2json(fastapi_plugins.get_config(name).dict())
            self.assertTrue(res == exp, 'get configuration failed')
        finally:
            fastapi_plugins.reset_config()
Beispiel #8
0
    def test_decorator_register_config(self):
        try:

            @fastapi_plugins.registered_configuration
            class MyConfig(fastapi_plugins.PluginSettings):
                api_name: str = 'API name'

            exp = d2json(MyConfig().dict())
            res = d2json(fastapi_plugins.get_config().dict())
            self.assertTrue(res == exp, 'get configuration failed: %s != %s' %
                            (exp, res))  # noqa E501
        finally:
            fastapi_plugins.reset_config()
Beispiel #9
0
    def test_decorator_register_config_docker(self):
        try:

            @fastapi_plugins.registered_configuration_docker
            class MyConfig(fastapi_plugins.PluginSettings):
                api_name: str = 'API name'

            # docker is default
            exp = d2json(MyConfig().dict())
            res = d2json(fastapi_plugins.get_config().dict())
            self.assertTrue(res == exp, 'get configuration failed')
            #
            exp = d2json(MyConfig().dict())
            res = d2json(
                fastapi_plugins.get_config(
                    fastapi_plugins.CONFIG_NAME_DOCKER).dict())  # noqa E501
            self.assertTrue(res == exp, 'get configuration failed')
        finally:
            fastapi_plugins.reset_config()
Beispiel #10
0
 def tearDown(self):
     fastapi_plugins.reset_config()
     fastapi_plugins.get_config.cache_clear()
Beispiel #11
0
 def setUp(self):
     fastapi_plugins.reset_config()
     fastapi_plugins.get_config.cache_clear()