vpn integration

This commit is contained in:
2026-04-11 22:07:59 +02:00
parent c4d27e9842
commit 00ac38d126
47 changed files with 945 additions and 749 deletions
-2
View File
@@ -1,3 +1 @@
from django.contrib import admin
# Register your models here.
+2 -2
View File
@@ -2,5 +2,5 @@ from django.apps import AppConfig
class ApiConfig(AppConfig):
default_auto_field = 'django.db.models.BigAutoField'
name = 'api'
default_auto_field = "django.db.models.BigAutoField"
name = "api"
-2
View File
@@ -1,3 +1 @@
from django.db import models
# Create your models here.
+7 -7
View File
@@ -1,10 +1,10 @@
from rest_framework.routers import DefaultRouter
from user.views import UserViewSet
from torrent.views import TorrentViewSet, FileViewSet
from user.views import FriendRequestViewSet
from torrent.views import FileViewSet, TorrentViewSet
from user.views import FriendRequestViewSet, UserViewSet
router = DefaultRouter()
router.register(r'users', UserViewSet, basename='user')
router.register(r'torrents', TorrentViewSet, basename='torrent')
router.register(r'torrent/files', FileViewSet, basename='file')
router.register(r'friend_requests', FriendRequestViewSet, basename='friend-request')
router.register(r"users", UserViewSet, basename="user")
router.register(r"torrents", TorrentViewSet, basename="torrent")
router.register(r"torrent/files", FileViewSet, basename="file")
router.register(r"friend_requests", FriendRequestViewSet, basename="friend-request")
+10 -10
View File
@@ -1,7 +1,7 @@
from django.test import TestCase
from django.urls import reverse
from rest_framework.test import APITestCase, APIClient
from rest_framework import status
from rest_framework.test import APIClient, APITestCase
from .routers import router
@@ -12,8 +12,10 @@ class RouterTestCase(TestCase):
url_patterns = router.urls
# Check that all expected viewsets are registered
expected_basenames = ['user', 'torrent', 'file', 'friend-request']
registered_basenames = [url.name.split('-')[0] for url in url_patterns if '-list' in url.name]
expected_basenames = ["user", "torrent", "file", "friend-request"]
registered_basenames = [
url.name.split("-")[0] for url in url_patterns if "-list" in url.name
]
for basename in expected_basenames:
self.assertIn(basename, registered_basenames)
@@ -33,9 +35,7 @@ class APIEndpointsTestCase(APITestCase):
# Create a test user
self.user = User.objects.create_user(
username='testuser',
email='test@example.com',
password='testpassword'
username="testuser", email="test@example.com", password="testpassword"
)
# Authenticate the client
@@ -44,24 +44,24 @@ class APIEndpointsTestCase(APITestCase):
def test_user_endpoint(self):
"""Test that the users endpoint is accessible"""
url = reverse('user-list')
url = reverse("user-list")
response = self.client.get(url)
self.assertEqual(response.status_code, status.HTTP_200_OK)
def test_torrent_endpoint(self):
"""Test that the torrents endpoint is accessible"""
url = reverse('torrent-list')
url = reverse("torrent-list")
response = self.client.get(url)
self.assertEqual(response.status_code, status.HTTP_200_OK)
def test_file_endpoint(self):
"""Test that the files endpoint is accessible"""
url = reverse('file-list')
url = reverse("file-list")
response = self.client.get(url)
self.assertEqual(response.status_code, status.HTTP_200_OK)
def test_friend_request_endpoint(self):
"""Test that the friend requests endpoint is accessible"""
url = reverse('friendrequest-list')
url = reverse("friendrequest-list")
response = self.client.get(url)
self.assertEqual(response.status_code, status.HTTP_200_OK)
+3 -5
View File
@@ -1,5 +1,4 @@
from django.urls import path, include
from django.urls import include, path
# Ajout du package manquant dans requirements.txt ou installez-le avec:
# pip install djangorestframework-simplejwt
@@ -8,12 +7,11 @@ from rest_framework_simplejwt.views import (
TokenRefreshView,
)
from .routers import router
app_name = "api"
urlpatterns = [
path("", include(router.urls)),
path('api/token/', TokenObtainPairView.as_view(), name='token_obtain_pair'),
path('api/token/refresh/', TokenRefreshView.as_view(), name='token_refresh'),
path("api/token/", TokenObtainPairView.as_view(), name="token_obtain_pair"),
path("api/token/refresh/", TokenRefreshView.as_view(), name="token_refresh"),
]
-2
View File
@@ -1,3 +1 @@
from django.shortcuts import render
# Create your views here.