mirror of
https://github.com/dtomlinson91/panaetius.git
synced 2025-12-22 04:55:44 +00:00
adding latest working
This commit is contained in:
@@ -39,10 +39,23 @@ class Config:
|
||||
# no config file, look for env vars
|
||||
return self._get_env_value(env_key, default, coerce)
|
||||
|
||||
def _get_config_value_key_split_once(self):
|
||||
def _get_config_value_key_split_once(self, key: str, mask: bool) -> Any:
|
||||
if mask:
|
||||
# TODO: write mask logic here
|
||||
pass
|
||||
else:
|
||||
name = key.lower()
|
||||
return self.config[self.header_variable][name]
|
||||
|
||||
def _get_config_value_key_split_twice(self):
|
||||
def _get_config_value_key_split_twice(self, key: str, mask: bool) -> Any:
|
||||
if mask:
|
||||
# TODO: write mask logic here
|
||||
pass
|
||||
else:
|
||||
section, name = key.lower().split(".")
|
||||
return self.config[self.header_variable][section][name]
|
||||
|
||||
def _get_config_value_missing_key_value_is_none(self, default: Any):
|
||||
pass
|
||||
|
||||
def _get_config_value(
|
||||
@@ -51,19 +64,9 @@ class Config:
|
||||
try:
|
||||
# look under top header
|
||||
if len(key.split(".")) == 1:
|
||||
if mask:
|
||||
# TODO: write mask logic here
|
||||
pass
|
||||
else:
|
||||
name = key.lower()
|
||||
value = self.config[self.header_variable][name]
|
||||
value = self._get_config_value_key_split_once(key, mask)
|
||||
elif len(key.split(".")) == 2:
|
||||
if mask:
|
||||
# TODO: write mask logic here
|
||||
pass
|
||||
else:
|
||||
section, name = key.lower().split(".")
|
||||
value = self.config[self.header_variable][section][name]
|
||||
value = self._get_config_value_key_split_twice(key, mask)
|
||||
return value
|
||||
|
||||
except (KeyError, TypeError):
|
||||
|
||||
@@ -4,6 +4,7 @@ from panaetius import Config, set_config
|
||||
|
||||
if __name__ == "__main__":
|
||||
os.environ["PANAETIUS_TEST_PATH"] = "/usr/local"
|
||||
os.environ["PANAETIUS_TEST_BOOL"] = "true"
|
||||
print(os.environ.get("PANAETIUS_TEST_PATH"))
|
||||
os.environ[
|
||||
"PANAETIUS_TEST_TOML_POINTS"
|
||||
@@ -14,19 +15,19 @@ if __name__ == "__main__":
|
||||
os.environ["PANAETIUS_TEST_NOC_EMBEDDED_BOOL"] = "true"
|
||||
|
||||
# c = Config("panaetius_test")
|
||||
c = Config("panaetius_test_noc")
|
||||
c = Config("panaetius_test")
|
||||
|
||||
# set_config(c, key="path", default="some path")
|
||||
# set_config(c, key="top", default="some top")
|
||||
# set_config(c, key="logging.path", default="some logging path")
|
||||
# set_config(c, key="nonexistent.item", default="some nonexistent item")
|
||||
# set_config(c, key="nonexistent.item")
|
||||
# set_config(c, key="toml.points", coerce=True)
|
||||
# set_config(c, key="toml.points_config")
|
||||
# set_config(c, key="float", default=2.0)
|
||||
# set_config(c, key="float_str", default="2.0")
|
||||
# set_config(c, key="bool", coerce=True)
|
||||
# set_config(c, key="noexistbool", default=False)
|
||||
set_config(c, key="path", default="some path")
|
||||
set_config(c, key="top", default="some top")
|
||||
set_config(c, key="logging.path", default="some logging path")
|
||||
set_config(c, key="nonexistent.item", default="some nonexistent item")
|
||||
set_config(c, key="nonexistent.item")
|
||||
set_config(c, key="toml.points", coerce=True)
|
||||
set_config(c, key="toml.points_config")
|
||||
set_config(c, key="float", default=2.0)
|
||||
set_config(c, key="float_str", default="2.0")
|
||||
set_config(c, key="bool", coerce=True)
|
||||
set_config(c, key="noexistbool", default=False)
|
||||
|
||||
# set_config(c, key="path")
|
||||
# set_config(c, key="float", coerce=True)
|
||||
|
||||
Reference in New Issue
Block a user