Bladeren bron

Add test for if model_delete is invoked on a model: delete folder recursively

Yentl Van Tendeloo 7 jaren geleden
bovenliggende
commit
a036d1c5d8
1 gewijzigde bestanden met toevoegingen van 22 en 0 verwijderingen
  1. 22 0
      unit/test_all.py

+ 22 - 0
unit/test_all.py

@@ -467,6 +467,28 @@ class TestModelverse(unittest.TestCase):
         except WritePermissionDenied:
             pass
 
+        # Try delete of a folder
+        folder_create("users/user/test/b/c/d")
+        model_add("users/user/test/b/c/d/e", "formalisms/SimpleClassDiagrams")
+        assert model_list("users/user/test") == set(["b/"])
+        assert model_list("users/user/test/b") == set(["c/"])
+        assert model_list("users/user/test/b/c") == set(["d/"])
+        assert model_list("users/user/test/b/c/d") == set(["e"])
+        assert model_delete("users/user/test/b/c") == None
+        # Removes recursively all subfolders and containing models
+        assert model_list("users/user/test") == set(["b/"])
+        assert model_list("users/user/test/b") == set([])
+        try:
+            model_list("users/user/test/b/c")
+            self.fail()
+        except UnknownLocation:
+            pass
+        try:
+            element_list("users/user/test/b/c/d/e")
+            self.fail()
+        except UnknownModel:
+            pass
+
     def test_op_model_overwrite(self):
         # Test overwrite of simple model
         assert model_list_full("users/user/test") == set([])