From ad0d0bbd9678cdb46423fc3f2178f30bd2791a9a Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 13 Mar 2017 13:49:19 +0100 Subject: [PATCH] Add test for removing settings from instance containers Currently only the happy path. I plan to add tests whether the rest of the settings are still intact. Contributes to issue CURA-3479. --- .../tests/TestVersionUpgrade24to25.py | 44 +++++++++++++++++-- 1 file changed, 40 insertions(+), 4 deletions(-) diff --git a/plugins/VersionUpgrade/VersionUpgrade24to25/tests/TestVersionUpgrade24to25.py b/plugins/VersionUpgrade/VersionUpgrade24to25/tests/TestVersionUpgrade24to25.py index 03c58bff18..8ee6f7e9f3 100644 --- a/plugins/VersionUpgrade/VersionUpgrade24to25/tests/TestVersionUpgrade24to25.py +++ b/plugins/VersionUpgrade/VersionUpgrade24to25/tests/TestVersionUpgrade24to25.py @@ -94,7 +94,7 @@ def test_cfgVersionBad(data, upgrader): with pytest.raises(data["exception"]): upgrader.getCfgVersion(data["file_data"]) -test_removed_settings_data = [ +test_upgrade_preferences_removed_settings_data = [ { "test_name": "Removed Setting", "file_data": """[general] @@ -123,14 +123,50 @@ foo = bar ## Tests whether the settings that should be removed are removed for the 2.5 # version of preferences. -@pytest.mark.parametrize("data", test_removed_settings_data) +@pytest.mark.parametrize("data", test_upgrade_preferences_removed_settings_data) def test_upgradePreferencesRemovedSettings(data, upgrader): _, upgraded_preferences = upgrader.upgradePreferences(data["file_data"], "") upgraded_preferences = upgraded_preferences[0] #Find whether the removed setting is removed from the file now. - bad_setting = "start_layers_at_same_position" + bad_setting = "start_layers_at_same_position" #One of the forbidden settings. parser = configparser.ConfigParser(interpolation = None) parser.read_string(upgraded_preferences) if parser.has_section("general") and "visible_settings" in parser["general"]: - assert bad_setting not in parser["general"]["visible_settings"] \ No newline at end of file + assert bad_setting not in parser["general"]["visible_settings"] + +test_upgrade_instance_container_removed_settings_data = [ + { + "test_name": "Removed Setting", + "file_data": """[values] +layer_height = 0.1337 +start_layers_at_same_position = True +""" + }, + { + "test_name": "No Removed Setting", + "file_data": """[values] +oceans_number = 11 +""" + }, + { + "test_name": "No Values Category", + "file_data": """[general] +type = instance_container +""" + } +] + +## Tests whether the settings that should be removed are removed for the 2.5 +# version of instance containers. +@pytest.mark.parametrize("data", test_upgrade_instance_container_removed_settings_data) +def test_upgradeInstanceContainerRemovedSettings(data, upgrader): + _, upgraded_container = upgrader.upgradeInstanceContainer(data["file_data"], "") + upgraded_container = upgraded_container[0] + + #Find whether the forbidden setting is still in the container. + bad_setting = "start_layers_at_same_position" #One of the forbidden settings. + parser = configparser.ConfigParser(interpolation = None) + parser.read_string(upgraded_container) + if parser.has_section("values"): + assert bad_setting not in parser["values"] \ No newline at end of file