Files
igny8/backup-api-standard-v1/tests/test_integration_system.py
2025-11-16 03:28:25 +00:00

50 lines
2.3 KiB
Python

"""
Integration tests for System module endpoints
Tests settings, prompts, integrations return unified format
"""
from rest_framework import status
from igny8_core.api.tests.test_integration_base import IntegrationTestBase
class SystemIntegrationTestCase(IntegrationTestBase):
"""Integration tests for System module"""
def test_system_status_returns_unified_format(self):
"""Test GET /api/v1/system/status/ returns unified format"""
response = self.client.get('/api/v1/system/status/')
self.assertEqual(response.status_code, status.HTTP_200_OK)
self.assert_unified_response_format(response, expected_success=True)
self.assertIn('data', response.data)
def test_list_prompts_returns_unified_format(self):
"""Test GET /api/v1/system/prompts/ returns unified format"""
response = self.client.get('/api/v1/system/prompts/')
self.assertEqual(response.status_code, status.HTTP_200_OK)
self.assert_paginated_response(response)
def test_get_prompt_by_type_returns_unified_format(self):
"""Test GET /api/v1/system/prompts/by_type/{type}/ returns unified format"""
response = self.client.get('/api/v1/system/prompts/by_type/clustering/')
# May return 404 if no prompt exists, but should still be unified format
self.assertIn(response.status_code, [status.HTTP_200_OK, status.HTTP_404_NOT_FOUND])
self.assert_unified_response_format(response)
def test_list_account_settings_returns_unified_format(self):
"""Test GET /api/v1/system/settings/account/ returns unified format"""
response = self.client.get('/api/v1/system/settings/account/')
self.assertEqual(response.status_code, status.HTTP_200_OK)
self.assert_paginated_response(response)
def test_get_integration_settings_returns_unified_format(self):
"""Test GET /api/v1/system/settings/integrations/{pk}/ returns unified format"""
response = self.client.get('/api/v1/system/settings/integrations/openai/')
# May return 404 if not configured, but should still be unified format
self.assertIn(response.status_code, [status.HTTP_200_OK, status.HTTP_404_NOT_FOUND])
self.assert_unified_response_format(response)