Пример #1
0
    class Config(Constants):
        # exists
        A = const('a')
        # default
        B = const('b', default=b)
        # nothing
        C = const('c')
        # different error
        D = const('d', default='x')

        def provide_const(self, name, arg):
            if arg == 'd':
                raise Exception()
            return dict(a=a)[arg]
Пример #2
0
        class Conf(Constants):
            TEST = const('1')

            def provide_const(self,
                              key,
                              arg,
                              service: Provide[MyService] = None):
                assert isinstance(service, MyService)
                return key
Пример #3
0
    class Config(Constants):
        # with str/int/float, the type hint is enforced. Can be removed or extend to
        # support Enums.
        IMDB_HOST = const[str]('imdb.host')
        IMDB_PORT = const[int]('imdb.port')
        IMDB_API_KEY = const('imdb.api_key')

        def __init__(self):
            self._raw_conf = {
                'imdb': {
                    'host': 'dummy_host',
                    'api_key': 'dummy_api_key',
                    'port': '80'
                }
            }

        def provide_const(self, name: str, arg: str):
            root, key = arg.split('.')
            return self._raw_conf[root][key]
Пример #4
0
        class Conf(Constants):
            TEST = const('1')

            def provide_const(self, key, arg):
                return key
Пример #5
0
    class Config(Constants):
        A = const('a')
        B = const('b')

        def provide_const(self, name, arg):
            return arg * 2
Пример #6
0
 class Config(Constants):
     A = const('a')
Пример #7
0
 class Config(Constants):
     NOTHING = const()
     B = const("B")
Пример #8
0
    class Config(Constants):
        A = const()
        B = const()

        def provide_const(self, name, arg):
            return name
Пример #9
0
 class Config(Constants):
     DB_HOST = const('localhost:5432')