diff --git a/beat/editor/test/test_editors.py b/beat/editor/test/test_editors.py index 058b137991f52bef30806f04b1fd8d5468d07b93..74d190e2922874bbaee26e9fa5128e67bfccac74 100644 --- a/beat/editor/test/test_editors.py +++ b/beat/editor/test/test_editors.py @@ -58,39 +58,33 @@ class MockAssetEditor(AbstractAssetEditor): def set_dataformat_model(self, model): self.dataformat_model = model - def load_json(self, json_object): + def load_json(self, json_object, widget_type): """Load the json object passed as parameter""" - for name, type_ in json_object.items(): - field = FieldWidget(self.dataformat_model) - field.format_name = name - field.format_type = type_ - self.layout().addWidget(field) - - def dump_json(self): + if widget_type == "field": + for name, type_ in json_object.items(): + field = FieldWidget(self.dataformat_model) + field.format_name = name + field.format_type = type_ + self.layout().addWidget(field) + elif widget_type == "description": + short_text = json_object["short_description"] + self.description.form_description.setText(short_text) + + def dump_json(self, widget_type): """Returns the json representation of the asset""" - field_list = self.findChildren(FieldWidget) - json_data = {} - for field in field_list: - json_data[field.format_name] = field.format_type + if widget_type == "field": + field_list = self.findChildren(FieldWidget) + for field in field_list: + json_data[field.format_name] = field.format_type + elif widget_type == "description": + json_data["short_description"] = self.description.short_description() return json_data - def set_description(self, desc): - """Sets the text description of the asset""" - - self.description.short_description = desc - - def get_description(self): - """Returns the text description of the asset""" - - text_data = self.description.short_description - - return text_data - @pytest.fixture() def dataformat_model(): @@ -100,16 +94,16 @@ def dataformat_model(): class TestMockEditor: """Test that the mock editor works correctly""" - def test_json_load_and_dump(self, qtbot, dataformat_model): + def test_json_load_and_dump_field_widget(self, qtbot, dataformat_model): json_reference = {"value32": "float32", "value64": "float64"} widget = MockAssetEditor() widget.set_dataformat_model(dataformat_model) - widget.load_json(json_reference) + widget.load_json(json_reference, "field") - assert widget.dump_json() == json_reference + assert widget.dump_json("field") == json_reference - def test_dataformat_creation(self, qtbot, dataformat_model): + def test_dataformat_creation_field_widget(self, qtbot, dataformat_model): widget = MockAssetEditor() widget.set_dataformat_model(dataformat_model) @@ -123,7 +117,7 @@ class TestMockEditor: field.format_name = "value32" field.format_type = "float32" - assert widget.dump_json() == {"value32": "float32"} + assert widget.dump_json("field") == {"value32": "float32"} qtbot.mouseClick(widget.add_field_button, QtCore.Qt.LeftButton) fields = widget.findChildren(FieldWidget) @@ -135,13 +129,13 @@ class TestMockEditor: field.format_name = "value64" field.format_type = "float64" - assert widget.dump_json() == {"value32": "float32", "value64": "float64"} + assert widget.dump_json("field") == {"value32": "float32", "value64": "float64"} - def test_description_set_and_get(self, qtbot, dataformat_model): - text_reference = "short descr1iption of a beat object" + def test_json_load_and_dump_description_widget(self, qtbot): + json_reference = {"short_description": "Short description test"} widget = MockAssetEditor() widget.set_dataformat_model(dataformat_model) - widget.set_description(text_reference) + widget.load_json(json_reference, "description") - assert widget.get_description() == text_reference + assert widget.dump_json("description") == json_reference