1
1
Prechádzať zdrojové kódy

Added test_create() to test_factory.py, added storing of munits and nomgroups, minor bugfixes

Vsevolod Levitan 1 rok pred
rodič
commit
dc591ae125

+ 6 - 1
src/logic/start_factory.py

@@ -80,7 +80,12 @@ class start_factory:
             
             # Формируем и зпоминаем номеклатуру
             result = start_factory.create_nomenclature_list()
-            self.__save(storage.nomenclature_key(), result )
+            nomenclatures = result.copy()
+            munits = set([x.measurement_unit for x in result])
+            nomgroups = set([x.nomenclature_group for x in result])
+            self.__save(storage.nomenclature_key(), nomenclatures )
+            self.__save(storage.measurement_unit_key(), munits)
+            self.__save(storage.nomenclature_group_key(), nomgroups)
 
         return result
 

+ 2 - 2
src/storage/storage.py

@@ -32,7 +32,7 @@ class storage:
 
   
     @staticmethod
-    def group_key():
+    def nomenclature_group_key():
         """
             Списк номенклатурных групп
         Returns:
@@ -43,7 +43,7 @@ class storage:
       
 
     @staticmethod  
-    def unit_key():
+    def measurement_unit_key():
         """
               Список единиц измерения
         Returns:

+ 22 - 2
tests/test_factory.py

@@ -1,6 +1,7 @@
 from src.models.measurement_unit_model import measurement_unit_model
 from src.logic.start_factory import start_factory
 from src.settings.settings_manager import settings_manager
+import os
 
 import unittest
 
@@ -27,7 +28,7 @@ class factory_test(unittest.TestCase):
     # 
     # Проверка создание начальной номенклатуры
     #    
-    def test_create_nomenclature(self):
+    def test_create_nomenclature_list(self):
         # Подготовка
         items = start_factory.create_nomenclature_list()
         
@@ -36,11 +37,30 @@ class factory_test(unittest.TestCase):
         # Прверки
         assert len(items) > 0 
         
+    #
+    # Проверка создания и записи списка номенклатур
+    #
+    def test_create(self):
+        # Подготовка
+        stor = storage()
+
+        setman = settings_manager()
+        setman.open(f"{os.path.dirname(__file__) + '/..'}/config/settings.json")
+        st = setman.settings
+
+        start_factory(st, stor).create()
         
+        # Действие
+
+        # Проверка
+        assert len(stor.data[storage.nomenclature_key()])
+        assert len(stor.data[storage.measurement_unit_key()])
+        assert len(stor.data[storage.nomenclature_group_key()])
+
     #      
     # Проверка работы класса start_factory
     #
-    def test_start_factor(self):
+    def test_start_factory(self):
         # Подготовка
         manager = settings_manager()
         strg = storage()