Browse Source

Add check for platform mesh & texture

It simply checks if the file exists
Jaime van Kessel 6 years ago
parent
commit
338f9c0052

+ 0 - 1
resources/definitions/cubicon_3dp_110f.def.json

@@ -8,7 +8,6 @@
         "manufacturer": "Cubicon",
         "visible": true,
         "file_formats": "text/x-gcode",
-        "platform": "",
         "supports_usb_connection": false,
         "machine_extruder_trains": {
             "0": "cubicon_3dp_110f_extruder_0"

+ 0 - 1
resources/definitions/cubicon_3dp_210f.def.json

@@ -8,7 +8,6 @@
         "manufacturer": "Cubicon",
         "visible": true,
         "file_formats": "text/x-gcode",
-        "platform": "",
         "supports_usb_connection": false,
         "machine_extruder_trains": {
             "0": "cubicon_3dp_210f_extruder_0"

+ 0 - 1
resources/definitions/cubicon_3dp_310f.def.json

@@ -8,7 +8,6 @@
         "manufacturer": "Cubicon",
         "visible": true,
         "file_formats": "text/x-gcode",
-        "platform": "",
         "supports_usb_connection": false,
         "machine_extruder_trains": {
             "0": "cubicon_3dp_310f_extruder_0"

+ 0 - 1
resources/definitions/delta_go.def.json

@@ -8,7 +8,6 @@
         "manufacturer": "Deltaprintr",
         "file_formats": "text/x-gcode",
         "platform_offset": [0, 0, 0],
-        "platform": "",
         "machine_extruder_trains":
         {
             "0": "delta_go_extruder_0"

+ 0 - 1
resources/definitions/printrbot_play_heated.def.json

@@ -7,7 +7,6 @@
         "author": "Chris Pearson",
         "manufacturer": "Printrbot",
         "file_formats": "text/x-gcode",
-        "platform": "",
         "machine_extruder_trains":
         {
             "0": "printrbot_play_heated_extruder_0"

+ 0 - 1
resources/definitions/ubuild-3d_mr_bot_280.def.json

@@ -9,7 +9,6 @@
         "manufacturer": "uBuild-3D",
         "category": "Other",
         "file_formats": "text/x-gcode",
-        "platform": "mr_bot_280_platform.stl",
         "has_materials": true,
         "preferred_quality_type": "draft",
         "machine_extruder_trains":

+ 10 - 1
tests/Settings/TestDefinitionContainer.py

@@ -18,7 +18,8 @@ Resources.addSearchPath(os.path.abspath(os.path.join(os.path.dirname(__file__),
 
 
 machine_filepaths = os.listdir(os.path.join(os.path.dirname(__file__), "..", "..", "resources", "definitions"))
-
+all_meshes = os.listdir(os.path.join(os.path.dirname(__file__), "..", "..", "resources", "meshes"))
+all_images = os.listdir(os.path.join(os.path.dirname(__file__), "..", "..", "resources", "images"))
 
 @pytest.fixture
 def definition_container():
@@ -44,5 +45,13 @@ def isDefinitionValid(definition_container, path, file_name):
         parser, is_valid = definition_container.readAndValidateSerialized(json)
         if not is_valid:
             print("The definition '{0}', has invalid data.".format(file_name))
+        metadata = DefinitionContainer.deserializeMetadata(json, "whatever")
+
+        # If the definition defines a platform file, it should be in /resources/meshes/
+        if "platform" in metadata[0]:
+            assert metadata[0]["platform"] in all_meshes
+
+        if "platform_texture" in metadata[0]:
+            assert metadata[0]["platform_texture"] in all_images
 
         return is_valid

+ 1 - 0
tests/Settings/TestProfiles.py

@@ -41,6 +41,7 @@ def collectAllSettingIds():
         definition_container.deserialize(data.read())
     return definition_container.getAllKeys()
 
+
 def collectAllVariants():
     result = []
     for root, directories, filenames in os.walk(os.path.abspath(os.path.join(os.path.dirname(__file__), "..", "..", "resources", "variants"))):