mirror of
https://github.com/Akkudoktor-EOS/EOS.git
synced 2026-02-26 19:06:20 +00:00
fix: Improve provider update error handling and add VRM provider settings validation (#887)
Some checks are pending
Bump Version / Bump Version Workflow (push) Waiting to run
docker-build / platform-excludes (push) Waiting to run
docker-build / build (push) Blocked by required conditions
docker-build / merge (push) Blocked by required conditions
pre-commit / pre-commit (push) Waiting to run
Run Pytest on Pull Request / test (push) Waiting to run
Some checks are pending
Bump Version / Bump Version Workflow (push) Waiting to run
docker-build / platform-excludes (push) Waiting to run
docker-build / build (push) Blocked by required conditions
docker-build / merge (push) Blocked by required conditions
pre-commit / pre-commit (push) Waiting to run
Run Pytest on Pull Request / test (push) Waiting to run
* fix: improve error handling for provider updates Distinguishes failures of active providers from inactive ones. Propagates errors only for enabled providers, allowing execution to continue if a non-active provider fails, which avoids unnecessary interruptions and improves robustness. * fix: add provider settings validation for forecast requests Prevents potential runtime errors by checking if provider settings are configured before accessing forecast credentials. Raises a clear error when settings are missing to help with debugging misconfigurations. * refactor(load): move provider settings to top-level fields Transitions load provider settings from a nested "provider_settings" object with provider-specific keys to dedicated top-level fields.\n\nRemoves the legacy "provider_settings" mapping and updates migration logic to ensure backward compatibility with existing configurations. * docs: update version numbers and documantation --------- Co-authored-by: Normann <github@koldrack.com>
This commit is contained in:
committed by
GitHub
parent
2ca9c930e5
commit
04420e66ab
@@ -20,16 +20,14 @@ def loadakkudoktor(config_eos):
|
||||
settings = {
|
||||
"load": {
|
||||
"provider": "LoadAkkudoktor",
|
||||
"provider_settings": {
|
||||
"LoadAkkudoktor": {
|
||||
"loadakkudoktor_year_energy_kwh": "1000",
|
||||
},
|
||||
"loadakkudoktor": {
|
||||
"loadakkudoktor_year_energy_kwh": "1000",
|
||||
},
|
||||
},
|
||||
}
|
||||
config_eos.merge_settings_from_dict(settings)
|
||||
assert config_eos.load.provider == "LoadAkkudoktor"
|
||||
assert config_eos.load.provider_settings.LoadAkkudoktor.loadakkudoktor_year_energy_kwh == 1000
|
||||
assert config_eos.load.loadakkudoktor.loadakkudoktor_year_energy_kwh == 1000
|
||||
return LoadAkkudoktor()
|
||||
|
||||
@pytest.fixture
|
||||
@@ -38,10 +36,8 @@ def loadakkudoktoradjusted(config_eos):
|
||||
settings = {
|
||||
"load": {
|
||||
"provider": "LoadAkkudoktorAdjusted",
|
||||
"provider_settings": {
|
||||
"LoadAkkudoktor": {
|
||||
"loadakkudoktor_year_energy_kwh": "1000",
|
||||
},
|
||||
"loadakkudoktor": {
|
||||
"loadakkudoktor_year_energy_kwh": "1000",
|
||||
},
|
||||
},
|
||||
"measurement": {
|
||||
@@ -50,7 +46,7 @@ def loadakkudoktoradjusted(config_eos):
|
||||
}
|
||||
config_eos.merge_settings_from_dict(settings)
|
||||
assert config_eos.load.provider == "LoadAkkudoktorAdjusted"
|
||||
assert config_eos.load.provider_settings.LoadAkkudoktor.loadakkudoktor_year_energy_kwh == 1000
|
||||
assert config_eos.load.loadakkudoktor.loadakkudoktor_year_energy_kwh == 1000
|
||||
return LoadAkkudoktorAdjusted()
|
||||
|
||||
@pytest.fixture
|
||||
|
||||
Reference in New Issue
Block a user