Update GPR and SAR3D processing
This commit is contained in:
@@ -110,14 +110,20 @@ class GuiProfileCodecTest(unittest.TestCase):
|
||||
with self.assertRaises(ValueError): # combos_text must be a JSON string, not a number
|
||||
GuiProfileModel.from_dict({"gui": {"switches": {"combos_text": 123}}})
|
||||
|
||||
def test_legacy_gpr_payload_migrates_selected_mode(self) -> None:
|
||||
# An old payload that selects 'gpr' but carries a legacy root gpr.mode is migrated.
|
||||
def test_obsolete_inactive_settings_are_ignored(self) -> None:
|
||||
decoded = GuiProfileModel.from_dict({
|
||||
"gui": {"processing": {"selected_mode": "gpr"}},
|
||||
"gpr": {"relative_permittivity": 4.0, "mode": "point"},
|
||||
"gui": {"processing": {"selected_mode": "gpr", "legacy_gpr": "obsolete",
|
||||
"gpr": {"algorithm": "legacy_point"}}},
|
||||
"gpr": {"relative_permittivity": "obsolete", "mode": "point"},
|
||||
})
|
||||
assert decoded.gui is not None
|
||||
self.assertEqual(decoded.gui.processing.selected_mode, "legacy_gpr")
|
||||
self.assertEqual(decoded.gui.processing.selected_mode, "gpr")
|
||||
self.assertNotIn("legacy_gpr", decoded.to_dict()["gui"]["processing"])
|
||||
self.assertNotIn("relative_permittivity", decoded.to_dict()["gpr"])
|
||||
|
||||
def test_removed_processing_mode_is_rejected(self) -> None:
|
||||
with self.assertRaisesRegex(ValueError, "selected_mode must be one of"):
|
||||
GuiProfileModel.from_dict({"gui": {"processing": {"selected_mode": "legacy_gpr"}}})
|
||||
|
||||
def test_modern_gpr_selection_is_not_migrated(self) -> None:
|
||||
decoded = GuiProfileModel.from_dict({"gui": {"processing": {"selected_mode": "gpr"}}})
|
||||
|
||||
Reference in New Issue
Block a user