add tests for all rest apis

This commit is contained in:
Andreas Zweili 2020-11-30 23:32:39 +01:00
parent a2cb35ceaa
commit 889d363c68
17 changed files with 520 additions and 1 deletions

View File

@ -0,0 +1,51 @@
from rest_framework import serializers
from .models import Warranty
from .models import WarrantyType
from .models import Device
from .models import DeviceCategory
from .models import DeviceInNet
from .models import DeviceManufacturer
from .models import HardwareModel
class WarrantySerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Warranty
fields = '__all__'
class WarrantyTypeSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = WarrantyType
fields = '__all__'
class DeviceSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Device
fields = '__all__'
class DeviceCategorySerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = DeviceCategory
fields = '__all__'
class DeviceInNetSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = DeviceInNet
fields = '__all__'
class DeviceManufacturerSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = DeviceManufacturer
fields = '__all__'
class HardwareModelSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = HardwareModel
fields = '__all__'

View File

@ -2,8 +2,26 @@ from django.urls import path, include
from rest_framework import routers
from . import views
router = routers.DefaultRouter()
router.register(r'warranties', views.WarrantyViewSet)
router.register(r'warranty-types',
views.WarrantyTypeViewSet,
'warranty-type')
router.register(r'devices', views.DeviceViewSet)
router.register(r'device-categories',
views.DeviceCategoryViewSet,
'device-category')
router.register(r'devices-in-net',
views.DeviceInNetViewSet,
'device-in-net')
router.register(r'device-manufacturers',
views.DeviceManufacturerViewSet,
'device-manufacturer')
router.register(r'hardware-models',
views.HardwareModelViewSet,
'hardware-model')
urlpatterns = [

81
backend/devices/views.py Normal file
View File

@ -0,0 +1,81 @@
from rest_framework import viewsets
from rest_framework import permissions
from .models import Warranty
from .models import WarrantyType
from .models import Device
from .models import DeviceCategory
from .models import DeviceInNet
from .models import DeviceManufacturer
from .models import HardwareModel
from .serializers import WarrantySerializer
from .serializers import WarrantyTypeSerializer
from .serializers import DeviceSerializer
from .serializers import DeviceCategorySerializer
from .serializers import DeviceInNetSerializer
from .serializers import DeviceManufacturerSerializer
from .serializers import HardwareModelSerializer
class WarrantyViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows weekdays to be viewed or edited.
"""
queryset = Warranty.objects.all()
serializer_class = WarrantySerializer
permission_classes = [permissions.IsAuthenticated]
class WarrantyTypeViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows weekdays to be viewed or edited.
"""
queryset = WarrantyType.objects.all()
serializer_class = WarrantyTypeSerializer
permission_classes = [permissions.IsAuthenticated]
class DeviceViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows weekdays to be viewed or edited.
"""
queryset = Device.objects.all()
serializer_class = DeviceSerializer
permission_classes = [permissions.IsAuthenticated]
class DeviceCategoryViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows weekdays to be viewed or edited.
"""
queryset = DeviceCategory.objects.all()
serializer_class = DeviceCategorySerializer
permission_classes = [permissions.IsAuthenticated]
class DeviceInNetViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows weekdays to be viewed or edited.
"""
queryset = DeviceInNet.objects.all()
serializer_class = DeviceInNetSerializer
permission_classes = [permissions.IsAuthenticated]
class DeviceManufacturerViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows weekdays to be viewed or edited.
"""
queryset = DeviceManufacturer.objects.all()
serializer_class = DeviceManufacturerSerializer
permission_classes = [permissions.IsAuthenticated]
class HardwareModelViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows weekdays to be viewed or edited.
"""
queryset = HardwareModel.objects.all()
serializer_class = HardwareModelSerializer
permission_classes = [permissions.IsAuthenticated]

View File

@ -0,0 +1,30 @@
from rest_framework import serializers
from .models import UserLicense
from .models import ComputerLicense
from .models import LicenseWithUser
from .models import LicenseWithComputer
class UserLicenseSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = UserLicense
fields = '__all__'
class ComputerLicenseSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = ComputerLicense
fields = '__all__'
class LicenseWithUserSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = LicenseWithUser
fields = '__all__'
class LicenseWithComputerSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = LicenseWithComputer
fields = '__all__'

View File

@ -29,4 +29,3 @@ def test_unauthorized_request_license_with_computer(api_client):
url = reverse('license-with-computer-list')
response = api_client.get(url)
assert response.status_code == 403

View File

@ -2,8 +2,21 @@ from django.urls import path, include
from rest_framework import routers
from . import views
router = routers.DefaultRouter()
router.register(r'user-licenses',
views.UserLicenseViewSet,
'user-license')
router.register(r'computer-licenses',
views.ComputerLicenseViewSet,
'computer-license')
router.register(r'licenses-with-user',
views.LicenseWithUserViewSet,
'license-with-user')
router.register(r'licenses-with-computer',
views.LicenseWithComputerViewSet,
'license-with-computer')
urlpatterns = [

48
backend/licenses/views.py Normal file
View File

@ -0,0 +1,48 @@
from rest_framework import viewsets
from rest_framework import permissions
from .models import UserLicense
from .models import ComputerLicense
from .models import LicenseWithUser
from .models import LicenseWithComputer
from .serializers import UserLicenseSerializer
from .serializers import ComputerLicenseSerializer
from .serializers import LicenseWithUserSerializer
from .serializers import LicenseWithComputerSerializer
class UserLicenseViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows weekdays to be viewed or edited.
"""
queryset = UserLicense.objects.all()
serializer_class = UserLicenseSerializer
permission_classes = [permissions.IsAuthenticated]
class ComputerLicenseViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows weekdays to be viewed or edited.
"""
queryset = ComputerLicense.objects.all()
serializer_class = ComputerLicenseSerializer
permission_classes = [permissions.IsAuthenticated]
class LicenseWithUserViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows weekdays to be viewed or edited.
"""
queryset = LicenseWithUser.objects.all()
serializer_class = LicenseWithUserSerializer
permission_classes = [permissions.IsAuthenticated]
class LicenseWithComputerViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows weekdays to be viewed or edited.
"""
queryset = LicenseWithComputer.objects.all()
serializer_class = LicenseWithComputerSerializer
permission_classes = [permissions.IsAuthenticated]

View File

@ -0,0 +1,16 @@
from rest_framework import serializers
from .models import IpStatus
from .models import Net
class IpStatusSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = IpStatus
fields = '__all__'
class NetSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Net
fields = '__all__'

View File

@ -2,8 +2,14 @@ from django.urls import path, include
from rest_framework import routers
from . import views
router = routers.DefaultRouter()
router.register(r'ip-status',
views.IpStatusViewSet,
'ip-status')
router.register(r'nets',
views.NetViewSet)
urlpatterns = [

26
backend/nets/views.py Normal file
View File

@ -0,0 +1,26 @@
from rest_framework import viewsets
from rest_framework import permissions
from .models import IpStatus
from .models import Net
from .serializers import IpStatusSerializer
from .serializers import NetSerializer
class IpStatusViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows weekdays to be viewed or edited.
"""
queryset = IpStatus.objects.all()
serializer_class = IpStatusSerializer
permission_classes = [permissions.IsAuthenticated]
class NetViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows weekdays to be viewed or edited.
"""
queryset = Net.objects.all()
serializer_class = NetSerializer
permission_classes = [permissions.IsAuthenticated]

View File

@ -26,6 +26,7 @@ urlpatterns = [
url(r'', include('devices.urls')),
url(r'', include('licenses.urls')),
url(r'', include('nets.urls')),
url(r'', include('softwares.urls')),
url(r'', include('users.urls')),
path('admin/', admin.site.urls),
url(r'^_nested_admin/', include('nested_admin.urls')),

View File

@ -0,0 +1,30 @@
from rest_framework import serializers
from .models import OperatingSystem
from .models import SoftwareArchitecture
from .models import SoftwareCategory
from .models import Software
class OperatingSystemSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = OperatingSystem
fields = '__all__'
class SoftwareArchitectureSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = SoftwareArchitecture
fields = '__all__'
class SoftwareCategorySerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = SoftwareCategory
fields = '__all__'
class SoftwareSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Software
fields = '__all__'

View File

@ -2,8 +2,19 @@ from django.urls import path, include
from rest_framework import routers
from . import views
router = routers.DefaultRouter()
router.register(r'operating-systems',
views.OperatingSystemViewSet,
'operating-system')
router.register(r'software-architectures',
views.SoftwareArchitectureViewSet,
'software-architecture')
router.register(r'software-categories',
views.SoftwareCategoryViewSet,
'software-category')
router.register(r'softwares', views.SoftwareViewSet)
urlpatterns = [

View File

@ -0,0 +1,52 @@
from rest_framework import viewsets
from rest_framework import permissions
from .models import OperatingSystem
from .models import SoftwareArchitecture
from .models import SoftwareCategory
from .models import Software
from .serializers import OperatingSystemSerializer
from .serializers import SoftwareArchitectureSerializer
from .serializers import SoftwareCategorySerializer
from .serializers import SoftwareSerializer
class OperatingSystemViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows weekdays to be viewed or edited.
"""
queryset = OperatingSystem.objects.all()
serializer_class = OperatingSystemSerializer
permission_classes = [permissions.IsAuthenticated]
class SoftwareArchitectureViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows weekdays to be viewed or edited.
"""
queryset = SoftwareArchitecture.objects.all()
serializer_class = SoftwareArchitectureSerializer
permission_classes = [permissions.IsAuthenticated]
class SoftwareCategoryViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows weekdays to be viewed or edited.
"""
queryset = SoftwareCategory.objects.all()
serializer_class = SoftwareCategorySerializer
permission_classes = [permissions.IsAuthenticated]
class SoftwareViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows weekdays to be viewed or edited.
"""
queryset = Software.objects.all()
serializer_class = SoftwareSerializer
permission_classes = [permissions.IsAuthenticated]

View File

@ -0,0 +1,50 @@
from rest_framework import serializers
from .models import User
from .models import UserInAdGroup
from .models import UserInMailGroup
from .models import AdGroup
from .models import MailGroup
from .models import MailAlias
class UserSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = User
fields = '__all__'
class UserInAdGroupSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = UserInAdGroup
fields = '__all__'
class UserInMailGroupSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = UserInMailGroup
fields = '__all__'
class AdGroupSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = AdGroup
fields = '__all__'
class MailGroupSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = MailGroup
fields = '__all__'
class MailAliasSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = MailAlias
fields = '__all__'

View File

@ -2,8 +2,25 @@ from django.urls import path, include
from rest_framework import routers
from . import views
router = routers.DefaultRouter()
router.register(r'users', views.UserViewSet)
router.register(r'users-in-ad-group',
views.UserInAdGroupViewSet,
'user-in-ad-group')
router.register(r'users-in-mail-group',
views.UserInMailGroupViewSet,
'user-in-mail-group')
router.register(r'ad-groups',
views.AdGroupViewSet,
'ad-group')
router.register(r'mail-groups',
views.MailGroupViewSet,
'mail-group')
router.register(r'mail-alias',
views.MailAliasViewSet,
'mail-alias')
urlpatterns = [

70
backend/users/views.py Normal file
View File

@ -0,0 +1,70 @@
from rest_framework import viewsets
from rest_framework import permissions
from .models import User
from .models import UserInAdGroup
from .models import UserInMailGroup
from .models import AdGroup
from .models import MailGroup
from .models import MailAlias
from .serializers import UserSerializer
from .serializers import UserInAdGroupSerializer
from .serializers import UserInMailGroupSerializer
from .serializers import AdGroupSerializer
from .serializers import MailGroupSerializer
from .serializers import MailAliasSerializer
class UserViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows weekdays to be viewed or edited.
"""
queryset = User.objects.all()
serializer_class = UserSerializer
permission_classes = [permissions.IsAuthenticated]
class UserInAdGroupViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows weekdays to be viewed or edited.
"""
queryset = UserInAdGroup.objects.all()
serializer_class = UserInAdGroupSerializer
permission_classes = [permissions.IsAuthenticated]
class UserInMailGroupViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows weekdays to be viewed or edited.
"""
queryset = UserInMailGroup.objects.all()
serializer_class = UserInMailGroupSerializer
permission_classes = [permissions.IsAuthenticated]
class AdGroupViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows weekdays to be viewed or edited.
"""
queryset = AdGroup.objects.all()
serializer_class = AdGroupSerializer
permission_classes = [permissions.IsAuthenticated]
class MailGroupViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows weekdays to be viewed or edited.
"""
queryset = MailGroup.objects.all()
serializer_class = MailGroupSerializer
permission_classes = [permissions.IsAuthenticated]
class MailAliasViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows weekdays to be viewed or edited.
"""
queryset = MailAlias.objects.all()
serializer_class = MailAliasSerializer
permission_classes = [permissions.IsAuthenticated]