def test_default_var_format(self):
        os.environ["TEST"] = "test"
        config = Environment()

        self.assertIn("test", config)
        self.assertEqual("test", config["test"])

        del os.environ["TEST"]
Exemple #2
0
def test_default_var_format():
    os.environ["TEST"] = "test"
    config = Environment()

    assert "test" in config
    assert "test" == config["test"]

    del os.environ["TEST"]
Exemple #3
0
def test_basic_config():
    os.environ["TEST"] = "test"
    config = Environment()

    assert "TEST" in config
    assert "test" == config["TEST"]
    assert repr(config).startswith('Environment(var_format=')

    del os.environ["TEST"]
    def test_basic_config(self):
        os.environ["TEST"] = "test"
        config = Environment()

        self.assertIn("TEST", config)
        self.assertEqual("test", config["TEST"])
        self.assertTrue(repr(config).startswith('Environment(var_format='))

        del os.environ["TEST"]
Exemple #5
0
def test_custom_var_format():
    def formatter(x):
        return '_{}'.format(x)

    os.environ["_TEST"] = "test"
    config = Environment(var_format=formatter)

    assert "TEST" in config
    assert "test" == config["TEST"]

    del os.environ["_TEST"]
    def test_custom_var_format(self):
        def formatter(x):
            return '_{}'.format(x)

        os.environ["_TEST"] = "test"
        config = Environment(var_format=formatter)

        self.assertIn("TEST", config)
        self.assertEqual("test", config["TEST"])

        del os.environ["_TEST"]
Exemple #7
0
 def test_customized_loaders(self):
     os.environ["ENVVAR"] = "Environment Variable Value"
     os.environ["ENVVAR2"] = "Foo"
     loaders = [EnvFile(self.envfile), Environment(), IniFile(self.inifile)]
     config = Configuration(loaders=loaders)
     self.assertEqual(config("ENVVAR"), "Must be overrided")
     self.assertEqual(config("ENVVAR2"), "Foo")
     self.assertEqual(config("ENVFILE"), "Environment File Value")
     self.assertEqual(config("INIFILE"), "INI File Value")
     self.assertEqual(len(config.loaders), 3)
     del os.environ["ENVVAR"]
     del os.environ["ENVVAR2"]
Exemple #8
0
def test_customized_loaders(env_config, ini_config):
    os.environ["ENVVAR"] = "Environment Variable Value"
    os.environ["ENVVAR2"] = "Foo"
    loaders = [EnvFile(env_config), Environment(), IniFile(ini_config)]
    config = Configuration(loaders=loaders)
    assert config("ENVVAR") == "Must be overrided"
    assert config("ENVVAR2") == "Foo"
    assert config("ENVFILE") == "Environment File Value"
    assert config("INIFILE") == "INI File Value"
    assert len(config.loaders) == 3
    del os.environ["ENVVAR"]
    del os.environ["ENVVAR2"]
Exemple #9
0
def test_fail_missing_config():
    config = Environment()

    assert "UNKNOWN" not in config
    with pytest.raises(KeyError):
        _ = config["UNKNOWN"]
Exemple #10
0
from os import getcwd

from prettyconf import Configuration
from prettyconf.loaders import EnvFile, Environment

env_file = f"{getcwd()}/.env"
config = Configuration(loaders=[Environment(), EnvFile(filename=env_file)])


class Config:
    """Config class for variables."""

    TOKEN = config("TOKEN")
    APP_ID = int(config("APP_ID"))
    API_HASH = config("API_HASH")
    OWNER_ID = int(config("OWNER_ID"))
    PREFIX_HANDLER = config("PREFIX_HANDLER", default="/ !").split()
    NO_LOAD = config("NO_LOAD", default=[])
    WORKERS = int(config("WORKERS", default=8))


class Development:
    """Development class for variables."""

    # Fill in these vars if you want to use Traditional method of deploying
    TOKEN = "YOUR TOKEN"
    APP_ID = 12345  # Your APP_ID from Telegram
    API_HASH = "YOUR TOKEN"  # Your APP_HASH from Telegram
    OWNER_ID = "YOUR TOKEN"
    PREFIX_HANDLER = ["!", "/"]
    NO_LOAD = []
    def test_fail_missing_config(self):
        config = Environment()

        self.assertNotIn("UNKNOWN", config)
        with self.assertRaises(KeyError):
            _ = config["UNKNOWN"]