Commit a469913c authored by Flavio TARSETTI's avatar Flavio TARSETTI
Browse files

[test] refactored description widget's tests

parent e0434e4d
Pipeline #27610 passed with stage
in 6 minutes and 14 seconds
......@@ -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
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment