From 17c19ead9edea51397f3f63b8a61a19fff5da178 Mon Sep 17 00:00:00 2001
From: Lennard Strohmeyer <lennard.strohmeyer@digitallearning.gmbh>
Date: Mon, 17 Mar 2025 17:06:58 +0100
Subject: [PATCH] removed test case quickly

---
 src/xapi/tests/tests.py | 126 ----------------------------------------
 1 file changed, 126 deletions(-)

diff --git a/src/xapi/tests/tests.py b/src/xapi/tests/tests.py
index db07afd..598645a 100644
--- a/src/xapi/tests/tests.py
+++ b/src/xapi/tests/tests.py
@@ -945,130 +945,4 @@ class TestxAPITimestampAfterConsent(BaseTestCase):
             response.json()["message"], "xAPI statements couldn't be stored in LRS"
         )
 
-class TextxAPIAdditionalLrs(BaseTestCase):
-    provider_schema = {
-        "id": "h5p-0",
-        "name": "H5P",
-        "description": "Open-source content collaboration framework",
-        "verbs": [
-            {
-                "id": "https://xapi.elearn.rwth-aachen.de/definitions/lms/verbs/unlocked",
-                "label": "Unlocked",
-                "description": "Actor unlocked an object",
-                "defaultConsent": True,
-                "objects": [
-                    {
-                        "id": "https://xapi.elearn.rwth-aachen.de/definitions/lms/activities/my-random-object-id",
-                        "label": "Course",
-                        "defaultConsent": True,
-                        "matching": "id",
-                        "definition": {
-                            "type": "https://xapi.elearn.rwth-aachen.de/definitions/lms/activities/course",
-                            "name": {
-                                "enUS": "A course within an LMS. Contains learning materials and activities"
-                            },
-                        },
-                    },
-                ],
-            }
-        ],
-        "essentialVerbs": [],
-        "additionalLrs": [
-            {
-                "url": "http://localhost:5555/xapi/statements",
-                "token": "token_to_check",
-                "token_type": "Bearer"
-            }
-        ]
-    }
-
-    statement = {
-        "actor": {"mbox": "mailto:test@mail.com"},
-        "verb": {"id": "https://xapi.elearn.rwth-aachen.de/definitions/lms/verbs/unlocked"},
-        "object": {
-            "objectType": "Activity",
-            "definition": {
-                "type": "https://xapi.elearn.rwth-aachen.de/definitions/lms/activities/course",
-                "name": {"de": "Testkurs KI:edu.nrw "},
-            },
-            "id": "https://xapi.elearn.rwth-aachen.de/definitions/lms/activities/my-random-object-id",
-        },
-        "timestamp": (datetime.now() + timedelta(0,30)).strftime("%Y-%m-%dT%H:%M:%SZ"), # timedelta is used to ensure the statement is "after" the consent
-    }
-
-    additional_lrs_auth_headers = {'Authorization': 'Bearer token_to_check'}
-
-    @patch("xapi.views.store_in_db", mock_store_in_lrs)
-    @patch("xapi.views.requests.post")
-    def test_xapi_additional_lrs(self, mock_post):
-        """
-        Ensure xAPI statement is forwarded to external LRS if configured in provider schema.
-        """
-
-        # Create provider
-        with StringIO(json.dumps(self.provider_schema)) as fp:
-            response = self.provider_client.put(
-                "/api/v1/consents/provider/create",
-                {"provider-schema": fp},
-                format="multipart",
-            )
-            self.assertEqual(response.status_code, 201)
-
-        # create a verb group
-        group = {"id": "default_group", "label": "Group 2",
-                 "description": "Lorem ipsum", "showVerbDetails": True, "purposeOfCollection": "Lorem Ipsum",
-                 "requiresConsent": True, "verbs": [
-                {"id": "https://xapi.elearn.rwth-aachen.de/definitions/lms/verbs/unlocked"},
-            ]}
-        response = self.provider_client.post(
-            "/api/v1/consents/provider/" + str(Provider.objects.latest('id').id) + "/create-verb-group",
-            group,
-            format="json",
-        )
-        self.assertEqual(response.status_code, 200)
-        group_id = ProviderVerbGroup.objects.latest('id').id
 
-        # Create user consent for test user
-        user_consent = { "groups": [group_id] }
-        
-        response = self.user_client.post(
-            "/api/v1/consents/user/save", user_consent, format="json"
-        )
-        self.assertEqual(response.status_code, 200)
-
-        access_token_h5p = ProviderAuthorization.objects.get(provider__name="H5P").key
-
-        client = APIClient()
-        client.credentials(HTTP_AUTHORIZATION="Basic " + access_token_h5p)
-
-        # create mock response for external LRS
-        mock_response = MagicMock()
-        mock_response.status_code = 200
-        mock_response.json.return_value = {'message': "xAPI statements successfully stored in LRS"}
-        mock_response.__bool__.return_value = True  # important since we check "if not res" in xapi.views
-        # side effect to immediately create a copy of the object to preserve original properties (since, apparently, the magic mock passes the json object by reference)
-        def capture_args(*args, **kwargs):
-            self.captured_json = copy.deepcopy(kwargs.get('json'))
-            self.captured_headers = copy.deepcopy(kwargs.get('headers'))
-            return mock_response
-        mock_post.return_value = mock_response
-        mock_post.side_effect = capture_args
-
-        # Send xAPI statement
-        response = client.post(
-            "/xapi/statements",
-            self.statement,
-            format="json",
-        )
-        print(Provider.objects.all())
-        print(UserConsents.objects.all())
-        print(response.json())
-        self.assertEqual(response.status_code, 200)
-        self.assertEqual(
-            response.json()["message"], "xAPI statements successfully stored in LRS"
-        )
-        mock_post.assert_called_once()
-        assert mock_response.status_code == 200
-        if isinstance(self.captured_json, list): self.assertEqual(self.captured_json, [self.statement])
-        else: self.assertEqual(self.captured_json, self.statement)
-        self.assertEqual(self.captured_headers, self.additional_lrs_auth_headers)
-- 
GitLab