From 3e13ba5f8fd6e06ec7a6abc7ae6d6b9c37c9738c Mon Sep 17 00:00:00 2001
From: goerch <jhr.walter@t-online.de>
Date: Fri, 10 Nov 2023 12:28:51 +0100
Subject: [PATCH] Another try to fix CI tests

---
 tests/fixtures/data_models.py | 11 +++++------
 tests/test_api.py             |  9 ++++-----
 2 files changed, 9 insertions(+), 11 deletions(-)

diff --git a/tests/fixtures/data_models.py b/tests/fixtures/data_models.py
index 1a9aca6b0..3059332df 100644
--- a/tests/fixtures/data_models.py
+++ b/tests/fixtures/data_models.py
@@ -37,7 +37,11 @@ def insert_model1_data(session: Session, count: int) -> List[Model1]:
 
 
 @contextmanager
-def model1_data(session: Session, count: int = MODEL1_DATA_SIZE) -> List[Model1]:
+def model1_data(session: Session, count: int = MODEL1_DATA_SIZE, delete: bool = False) -> List[Model1]:
+    if delete:
+        session.query(Model1).delete()
+        session.commit()
+
     model1_collection = insert_model1_data(session, count)
     model_ids = [model.id for model in model1_collection]
 
@@ -49,11 +53,6 @@ def model1_data(session: Session, count: int = MODEL1_DATA_SIZE) -> List[Model1]
             if model:
                 session.delete(model)
         session.commit()
-        models = session.query(Model1).all()
-        if models:
-            # raise RuntimeError(f"model data contains {models}")
-            session.query(Model1).delete()
-            session.commit()
 
 
 def insert_model2_data(session: Session, count: int) -> List[Model2]:
diff --git a/tests/test_api.py b/tests/test_api.py
index ee013a624..a73d673db 100644
--- a/tests/test_api.py
+++ b/tests/test_api.py
@@ -960,9 +960,8 @@ def test_get_item_not_found(self):
         """
         client = self.app.test_client()
         token = self.login(client, USERNAME_ADMIN, PASSWORD_ADMIN)
-        with model1_data(self.appbuilder.session, 1) as models:
+        with model1_data(self.appbuilder.session, 1, True):
             model_id = MODEL1_DATA_SIZE + 1
-            self.assertTrue(model_id not in [model.id for model in models])
             rv = self.auth_client_get(client, token, f"api/v1/model1api/{model_id}")
             self.assertEqual(rv.status_code, 404)
 
@@ -2512,9 +2511,9 @@ def test_create_item(self):
             self.assertEqual(model.field_integer, 4)
             self.assertEqual(model.field_float, 4.0)
 
-            # Revert data changes
-            self.appbuilder.session.delete(model)
-            self.appbuilder.session.commit()
+        # Revert data changes
+        self.appbuilder.session.delete(model)
+        self.appbuilder.session.commit()
 
     def test_create_item_bad_request(self):
         """