Example #1
0
    def loadMachineDefinitions(self):
        dirs = Resources.getAllPathsForType(Resources.MachineDefinitions)
        for dir in dirs:
            if not os.path.isdir(dir):
                continue

            for file_name in os.listdir(dir):
                data = None
                path = os.path.join(dir, file_name)

                if os.path.isdir(path):
                    continue

                definition = MachineDefinition(self, path)
                try:
                    definition.loadMetaData()
                except Exception as e:
                    Logger.log(
                        "e",
                        "An error occurred loading Machine Definition %s: %s",
                        path, str(e))
                    continue

                # Only add the definition if it did not exist yet. This prevents duplicates.
                if not self.findMachineDefinition(definition.getId(),
                                                  definition.getVariantName()):
                    self._machine_definitions.append(definition)

        self.machineDefinitionsChanged.emit()
Example #2
0
    def loadMachineDefinitions(self):
        dirs = Resources.getAllPathsForType(Resources.MachineDefinitions)
        for dir in dirs:
            if not os.path.isdir(dir):
                continue

            for file_name in os.listdir(dir):
                data = None
                path = os.path.join(dir, file_name)

                if os.path.isdir(path):
                    continue

                definition = MachineDefinition(self, path)
                try:
                    definition.loadMetaData()
                except Exception as e:
                    Logger.log("e", "An error occurred loading Machine Definition %s: %s", path, str(e))
                    continue

                # Only add the definition if it did not exist yet. This prevents duplicates.
                if not self.findMachineDefinition(definition.getId(), definition.getVariantName()):
                    self._machine_definitions.append(definition)

        self.machineDefinitionsChanged.emit()
Example #3
0
    def test_loadAll(self, machine_manager, file_name, expected):
        definition = MachineDefinition(machine_manager, self._getFilePath(file_name))
        definition.loadAll()

        assert definition.getId() == expected["id"]
        assert len(definition.getMachineSettings()) == expected["machine_setting_count"]
        assert len(definition.getAllCategories()) == expected["category_count"]

        if "machine_settings" in expected:
            for expected_setting in expected["machine_settings"]:
                assert definition.isMachineSetting(expected_setting["id"])
                assert definition.getSetting(expected_setting["id"]).getDefaultValue(None) == expected_setting["default"]

        if "categories" in expected:
            for expected_category in expected["categories"]:
                category = definition.getSettingsCategory(expected_category["id"])
                assert category is not None
                assert category.getLabel() == expected_category["label"]
                assert category.isVisible() == expected_category["visible"]
                assert len(category.getAllSettings()) == expected_category["setting_count"]

                if "settings" in expected_category:
                    for expected_setting in expected_category["settings"]:
                        setting = category.getSetting(expected_setting["id"])
                        assert setting is not None
                        assert setting.getLabel() == expected_setting["label"]
                        assert setting.isVisible() == expected_setting["visible"]
                        assert setting.getType() == expected_setting["type"]
                        assert setting.getDefaultValue(None) == expected_setting["default"]
Example #4
0
    def test_loadMetaData(self, machine_manager, file_name, expected):
        definition = MachineDefinition(machine_manager, self._getFilePath(file_name))

        definition.loadMetaData()

        assert definition.getId() == expected["id"]
        assert definition.getName() == expected["name"]
        assert definition.isVisible() == expected["visible"]
        assert definition.getVariantName() == expected["variant_name"]
        assert definition.getManufacturer() == expected["manufacturer"]
        assert definition.getAuthor() == expected["author"]
    def test_loadMetaData(self, machine_manager, file_name, expected):
        definition = MachineDefinition(machine_manager,
                                       self._getFilePath(file_name))

        definition.loadMetaData()

        assert definition.getId() == expected["id"]
        assert definition.getName() == expected["name"]
        assert definition.isVisible() == expected["visible"]
        assert definition.getVariantName() == expected["variant_name"]
        assert definition.getManufacturer() == expected["manufacturer"]
        assert definition.getAuthor() == expected["author"]
    def test_loadAll(self, machine_manager, file_name, expected):
        definition = MachineDefinition(machine_manager,
                                       self._getFilePath(file_name))
        definition.loadAll()

        assert definition.getId() == expected["id"]
        assert len(definition.getMachineSettings()
                   ) == expected["machine_setting_count"]
        assert len(definition.getAllCategories()) == expected["category_count"]

        if "machine_settings" in expected:
            for expected_setting in expected["machine_settings"]:
                assert definition.isMachineSetting(expected_setting["id"])
                assert definition.getSetting(
                    expected_setting["id"]).getDefaultValue(
                        None) == expected_setting["default"]

        if "categories" in expected:
            for expected_category in expected["categories"]:
                category = definition.getSettingsCategory(
                    expected_category["id"])
                assert category is not None
                assert category.getLabel() == expected_category["label"]
                assert category.isVisible() == expected_category["visible"]
                assert len(category.getAllSettings()
                           ) == expected_category["setting_count"]

                if "settings" in expected_category:
                    for expected_setting in expected_category["settings"]:
                        setting = category.getSetting(expected_setting["id"])
                        assert setting is not None
                        assert setting.getLabel() == expected_setting["label"]
                        assert setting.isVisible(
                        ) == expected_setting["visible"]
                        assert setting.getType() == expected_setting["type"]
                        assert setting.getDefaultValue(
                            None) == expected_setting["default"]