diff --git a/senpy/models.py b/senpy/models.py index 7f967da..250de26 100644 --- a/senpy/models.py +++ b/senpy/models.py @@ -140,7 +140,7 @@ class SenpyMixin(object): vp = item[kp] temp[kp] = ser_or_down(vp) return temp - elif isinstance(item, list): + elif isinstance(item, list) or isinstance(item, set): return list(ser_or_down(i) for i in item) else: return item @@ -184,7 +184,7 @@ class SenpyMixin(object): jsonschema.validate(obj, self.schema) def __str__(self): - return str(self.to_JSON()) + return str(self.serialize()) class BaseModel(SenpyMixin, dict): diff --git a/tests/test_plugins.py b/tests/test_plugins.py index 0108194..c7fdeab 100644 --- a/tests/test_plugins.py +++ b/tests/test_plugins.py @@ -181,6 +181,7 @@ class PluginsTest(TestCase): "centroids_direction": ["emoml:big6", "emoml:fsre-dimensions"] } c = CentroidConversion(info) + print(c.serialize()) es1 = EmotionSet() e1 = Emotion() @@ -189,6 +190,7 @@ class PluginsTest(TestCase): res = c._forward_conversion(es1) assert res["X-dimension"] == 0.5 assert res["Y-dimension"] == 0.5 + print(res) e2 = Emotion() e2.onyx__hasEmotionCategory = "c2" @@ -196,12 +198,14 @@ class PluginsTest(TestCase): res = c._forward_conversion(es1) assert res["X-dimension"] == 0 assert res["Y-dimension"] == 1 + print(res) e = Emotion() e["X-dimension"] = -0.2 e["Y-dimension"] = -0.3 res = c._backwards_conversion(e) assert res["onyx:hasEmotionCategory"] == "c3" + print(res) e = Emotion() e["X-dimension"] = -0.2