Parcourir la source

Added test for json export

Vsevolod Levitan il y a 1 an
Parent
commit
19c8b259f9
1 fichiers modifiés avec 26 ajouts et 0 suppressions
  1. 26 0
      tests/test_export.py

+ 26 - 0
tests/test_export.py

@@ -1,4 +1,10 @@
+import json
 import unittest
+from src.export.strategies.json_export import json_export
+from src.models.recipe_model import recipe_model
+from src.models.nomenclature_group_model import nomenclature_group_model
+from src.models.nomenclature_model import nomenclature_model
+from src.models.ingredient_model import ingredient_model
 from src.export.strategies.csv_export import csv_export
 from src.export.exporter import exporter
 from src.models.measurement_unit_model import measurement_unit_model
@@ -30,3 +36,23 @@ class test_export(unittest.TestCase):
         # Проверки
         assert isinstance(csv, str)
         assert csv == expected
+
+    def test_json_recipe(self):
+        strg = storage()
+
+        nom = nomenclature_model(
+            "A",
+            "AA",
+            measurement_unit_model("g"),
+            nomenclature_group_model.create_group(),
+        )
+        ing = ingredient_model("AAA", nom, 10, nom.measurement_unit)
+        rec = recipe_model.create("AAAA", [ing], ["1", "2", "3"])
+
+        conv = exporter(json_export()).export_models([rec])
+
+        conv = json.loads(conv)
+
+        assert len(conv["items"][0]["ingredients"]) == 1
+        assert (conv["items"][0]["id"]) == str(rec.id)
+        assert len(conv["items"][0]["steps"]) == len(rec.steps)