from django.urls import reverse from rest_framework.test import APITestCase class AccountURLResolutionTests(APITestCase): """ Test suite to ensure all account, registration, login, profile, and notification API endpoints resolve and execute cleanly. """ def setUp(self): from dj_language.models import Language Language.objects.get_or_create(id=69, defaults={'code': 'fa', 'name': 'Persian', 'status': True, 'countries': []}) def test_location_info_endpoint(self): """Test location-info endpoint is accessible""" url = reverse('location-info') response = self.client.get(url) self.assertLess(response.status_code, 500) def test_reverse_location_info_endpoint(self): """Test reverse-location-info endpoint is accessible""" url = reverse('reverse-location-info') response = self.client.get(url) self.assertLess(response.status_code, 500) def test_region_info_endpoint(self): """Test region-info endpoint is accessible""" url = reverse('region-info') response = self.client.get(url) self.assertLess(response.status_code, 500) def test_user_register_endpoint(self): """Test register endpoint is accessible (POST)""" url = reverse('user-register') response = self.client.post(url) self.assertLess(response.status_code, 500) def test_web_user_register_endpoint(self): """Test web register endpoint is accessible (POST)""" url = reverse('web-user-register') response = self.client.post(url) self.assertLess(response.status_code, 500) def test_user_verify_endpoint(self): """Test verify endpoint is accessible (POST)""" url = reverse('user-verify') response = self.client.post(url) self.assertLess(response.status_code, 500) def test_user_login_endpoint(self): """Test login endpoint is accessible (POST)""" url = reverse('user-login') response = self.client.post(url) self.assertLess(response.status_code, 500) def test_user_guest_endpoint(self): """Test guest endpoint is accessible (POST)""" url = reverse('user-guest') response = self.client.post(url) self.assertLess(response.status_code, 500) def test_exchange_token_endpoint(self): """Test exchange token endpoint is accessible (POST)""" url = reverse('exchange-token') response = self.client.post(url) self.assertLess(response.status_code, 500) def test_user_location_history_endpoint(self): """Test location update endpoint is accessible (POST)""" url = reverse('user-location-history') response = self.client.post(url) self.assertLess(response.status_code, 500) def test_location_info_by_coordinates_endpoint(self): """Test location-info by coordinates endpoint is accessible""" url = reverse('location-info-by-coordinates') response = self.client.get(url) self.assertLess(response.status_code, 500) def test_user_profile_endpoint(self): """Test user profile endpoint is accessible""" url = reverse('user-profile') response = self.client.get(url) self.assertLess(response.status_code, 500) def test_user_recover_endpoint(self): """Test recover password endpoint is accessible (POST)""" url = reverse('user-recover') response = self.client.post(url) self.assertLess(response.status_code, 500) def test_user_reset_endpoint(self): """Test reset password endpoint is accessible (POST)""" url = reverse('user-reset') response = self.client.post(url) self.assertLess(response.status_code, 500) def test_user_notif_endpoint(self): """Test user notification list endpoint is accessible""" url = reverse('user-notif') response = self.client.get(url) self.assertLess(response.status_code, 500) def test_user_notif_read_all_endpoint(self): """Test notifications read-all endpoint is accessible (POST)""" url = reverse('user-notif-read-all') response = self.client.post(url) self.assertLess(response.status_code, 500) def test_user_send_notif_endpoint(self): """Test send notification endpoint is accessible (POST)""" url = reverse('user-send-notif') response = self.client.post(url) self.assertLess(response.status_code, 500) def test_user_update_endpoint(self): """Test user profile update endpoint is accessible (PUT)""" url = reverse('user-update') response = self.client.put(url) self.assertLess(response.status_code, 500) def test_user_delete_endpoint(self): """Test user delete endpoint is accessible (DELETE)""" url = reverse('user-delete') response = self.client.delete(url) self.assertLess(response.status_code, 500) def test_update_fcm_endpoint(self): """Test update FCM endpoint is accessible (POST)""" url = reverse('update-fcm') response = self.client.post(url) self.assertLess(response.status_code, 500)