split the view tests into multiple files

This commit is contained in:
Andreas Zweili 2019-09-09 10:59:28 +02:00
parent 53289a58f6
commit ba20a056c3
10 changed files with 301 additions and 257 deletions

View File

@ -1,257 +0,0 @@
import pytest
from mixer.backend.django import mixer
from django.urls import resolve
from django.test import Client
from django.contrib.auth import get_user_model
from django.contrib.auth.models import Group
from inventory.models import (Backup, Device, Customer, Computer, Net,
Ram, ComputerRamRelation,
RaidType, RaidInComputer, DisksInRaid, Disk,
Cpu, ComputerCpuRelation, DeviceInNet)
from helper import in_content, not_in_content
pytestmark=pytest.mark.django_db
def test_customer_list_view_not_logged_in():
response = Client().get('/')
assert response.status_code == 302 and 'login' in response.url
def test_customer_list_view_no_customer():
User = get_user_model()
admin = User.objects.create_user("novartis-admin", "admin@novartis.com",
"password", is_staff=True)
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/')
assert response.status_code == 200
def test_customer_list_view(create_admin_user):
fixture = create_admin_user()
customer = fixture['customer']
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/')
assert (response.status_code == 200
and in_content(response, customer.name))
def test_customer_detail_view_not_logged_in():
response = Client().get('/customer/1/')
assert response.status_code == 302 and 'login' in response.url
def test_customer_detail_view_not_found(create_admin_user):
create_admin_user()
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/customer/230/')
assert response.status_code == 404
def test_customer_detail_view(create_admin_user):
fixture = create_admin_user()
customer = fixture['customer']
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/customer/' + str(customer.id) + '/')
assert (response.status_code == 200
and in_content(response, customer.name))
def test_customer_detail_view_no_permissions():
User = get_user_model()
admin = User.objects.create_user("novartis-admin", "admin@novartis.com",
"password", is_staff=True)
client = Client()
customer = mixer.blend('inventory.Customer')
client.login(username="novartis-admin", password="password")
response = client.get('/customer/' + str(customer.id) + '/')
assert response.status_code == 302 and 'login' in response.url
def test_customer_computer_table_not_logged_in():
response = Client().get('/customer/1/computers/')
assert response.status_code == 302 and 'login' in response.url
def test_customer_computer_table(create_admin_user):
fixture = create_admin_user()
customer = fixture['customer']
client = Client()
client.login(username="novartis-admin", password="password")
computer = mixer.blend('inventory.Computer', customer=mixer.SELECT)
response = client.get('/customer/' + str(customer.id) + '/computers/')
assert response.status_code == 200 and in_content(response, computer.name)
def test_customer_computer_table_no_computer(create_admin_user):
fixture = create_admin_user()
customer = fixture['customer']
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/customer/' + str(customer.id) + '/computers/')
assert response.status_code == 200 and not_in_content(response, "Novartis PC")
def test_customer_device_table_not_logged_in():
response = Client().get('/customer/1/devices/')
assert response.status_code == 302 and 'login' in response.url
def test_computer_detail_view_not_logged_in():
response = Client().get('/computer/1/')
assert response.status_code == 302 and 'login' in response.url
def test_computer_detail_view(create_admin_user):
create_admin_user()
computer = mixer.blend('inventory.Computer', customer=mixer.SELECT)
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/computer/' + str(computer.id) + '/')
assert response.status_code == 200 and in_content(response, computer.name)
def test_computer_detail_view_not_found(create_admin_user):
create_admin_user()
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/computer/100/')
assert response.status_code == 404
def test_computer_detail_view_ram_relation(create_admin_user):
create_admin_user()
computer = mixer.blend('inventory.Computer', customer=mixer.SELECT)
ram_type = mixer.blend('inventory.RamType')
ram = mixer.blend('inventory.Ram', ram_type=ram_type)
mixer.blend('inventory.ComputerRamRelation', computer=computer, ram=ram)
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/computer/' + str(computer.id) + '/')
assert response.status_code == 200 and in_content(response, "RAM Modules:")
def test_computer_detail_view_raid_relation(create_admin_user):
create_admin_user()
computer = mixer.blend('inventory.Computer', customer=mixer.SELECT)
raid = mixer.blend('inventory.RaidType')
disk = mixer.blend('inventory.Disk')
disks = mixer.blend('inventory.DisksInRaid', raid=raid, disk=disk)
mixer.blend('inventory.RaidInComputer', computer=computer, raid=disks)
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/computer/' + str(computer.id) + '/')
assert response.status_code == 200 and in_content(response, "RAID")
def test_computer_detail_view_cpu_relation(create_admin_user):
create_admin_user()
computer = mixer.blend('inventory.Computer', customer=mixer.SELECT)
cpu = mixer.blend('inventory.Cpu', cpu_typ=mixer.SELECT)
mixer.blend('inventory.ComputerCpuRelation', cpu=cpu, computer=computer)
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/computer/' + str(computer.id) + '/')
assert response.status_code == 200 and in_content(response, cpu.name)
def test_device_detail_view_not_logged_in():
response = Client().get('/device/1/')
assert response.status_code == 302 and 'login' in response.url
def test_device_detail_view(create_admin_user):
create_admin_user()
device = mixer.blend('inventory.Device', customer=mixer.SELECT)
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/device/' + str(device.id) + '/')
assert response.status_code == 200 and in_content(response, device.name)
def test_device_detail_view_not_found(create_admin_user):
create_admin_user()
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/device/100/')
assert response.status_code == 404
def test_net_detail_view_not_logged_in():
response = Client().get('/net/1/')
assert response.status_code == 302 and 'login' in response.url
def test_net_detail_view(create_admin_user):
create_admin_user()
net = mixer.blend('inventory.Net')
device = mixer.blend('inventory.Computer')
device_in_net = DeviceInNet(device=device, net=net, ip='10.7.89.101')
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/net/' + str(net.id) + '/')
assert (response.status_code == 200
and in_content(response, net.name)
and in_content(response, device_in_net.ip))
def test_net_detail_view_not_found(create_admin_user):
create_admin_user()
net = mixer.blend('inventory.Net')
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/net/100/')
assert response.status_code == 404
def test_backup_detail_view_not_logged_in():
response = Client().get('/backup/1/')
assert response.status_code == 302 and 'login' in response.url
def test_backup_detail_view(create_admin_user):
create_admin_user()
mixer.blend('inventory.Computer')
backup = mixer.blend('inventory.Backup', computer=mixer.SELECT)
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/backup/' + str(backup.id) + '/')
assert response.status_code == 200 and in_content(response, backup.name)
def test_backup_detail_view_not_found(create_admin_user):
create_admin_user()
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/backup/100/')
assert response.status_code == 200
def test_computer_list_view_not_logged_in():
response = Client().get('/computers/all/')
assert response.status_code == 302 and 'login' in response.url
def test_computer_list_view_no_computers(create_admin_user):
create_admin_user()
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/computers/all/')
assert response.status_code == 200
def test_computer_list_view(create_admin_user):
fixture = create_admin_user()
computer = mixer.blend('inventory.Computer',
customer=fixture['customer'])
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/computers/all/')
assert response.status_code == 200 and in_content(response, computer.name)

View File

@ -0,0 +1,30 @@
import pytest
from mixer.backend.django import mixer
from django.test import Client
from helper import in_content, not_in_content
pytestmark=pytest.mark.django_db
def test_backup_detail_view_not_logged_in():
response = Client().get('/backup/1/')
assert response.status_code == 302 and 'login' in response.url
def test_backup_detail_view(create_admin_user):
create_admin_user()
mixer.blend('inventory.Computer')
backup = mixer.blend('inventory.Backup', computer=mixer.SELECT)
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/backup/' + str(backup.id) + '/')
assert response.status_code == 200 and in_content(response, backup.name)
def test_backup_detail_view_not_found(create_admin_user):
create_admin_user()
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/backup/100/')
assert response.status_code == 200

View File

@ -0,0 +1,43 @@
import pytest
from mixer.backend.django import mixer
from django.test import Client
from django.contrib.auth import get_user_model
from helper import in_content, not_in_content
pytestmark=pytest.mark.django_db
def test_customer_detail_view_not_logged_in():
response = Client().get('/customer/1/')
assert response.status_code == 302 and 'login' in response.url
def test_customer_detail_view_not_found(create_admin_user):
create_admin_user()
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/customer/230/')
assert response.status_code == 404
def test_customer_detail_view(create_admin_user):
fixture = create_admin_user()
customer = fixture['customer']
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/customer/' + str(customer.id) + '/')
assert (response.status_code == 200
and in_content(response, customer.name))
def test_customer_detail_view_no_permissions():
User = get_user_model()
admin = User.objects.create_user("novartis-admin", "admin@novartis.com",
"password", is_staff=True)
client = Client()
customer = mixer.blend('inventory.Customer')
client.login(username="novartis-admin", password="password")
response = client.get('/customer/' + str(customer.id) + '/')
assert response.status_code == 302 and 'login' in response.url

View File

@ -0,0 +1,31 @@
import pytest
from mixer.backend.django import mixer
from django.test import Client
from helper import in_content, not_in_content
pytestmark=pytest.mark.django_db
def test_computer_list_view_not_logged_in():
response = Client().get('/computers/all/')
assert response.status_code == 302 and 'login' in response.url
def test_computer_list_view_no_computers(create_admin_user):
create_admin_user()
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/computers/all/')
assert response.status_code == 200
def test_computer_list_view(create_admin_user):
fixture = create_admin_user()
computer = mixer.blend('inventory.Computer',
customer=fixture['customer'])
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/computers/all/')
assert response.status_code == 200 and in_content(response, computer.name)

View File

@ -0,0 +1,31 @@
import pytest
from mixer.backend.django import mixer
from django.test import Client
from helper import in_content, not_in_content
pytestmark=pytest.mark.django_db
def test_customer_computer_table_not_logged_in():
response = Client().get('/customer/1/computers/')
assert response.status_code == 302 and 'login' in response.url
def test_customer_computer_table(create_admin_user):
fixture = create_admin_user()
customer = fixture['customer']
client = Client()
client.login(username="novartis-admin", password="password")
computer = mixer.blend('inventory.Computer', customer=mixer.SELECT)
response = client.get('/customer/' + str(customer.id) + '/computers/')
assert response.status_code == 200 and in_content(response, computer.name)
def test_customer_computer_table_no_computer(create_admin_user):
fixture = create_admin_user()
customer = fixture['customer']
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/customer/' + str(customer.id) + '/computers/')
assert response.status_code == 200 and not_in_content(response, "Novartis PC")

View File

@ -0,0 +1,43 @@
import pytest
from mixer.backend.django import mixer
from django.test import Client
from django.contrib.auth import get_user_model
from helper import in_content, not_in_content
pytestmark=pytest.mark.django_db
def test_customer_detail_view_not_logged_in():
response = Client().get('/customer/1/')
assert response.status_code == 302 and 'login' in response.url
def test_customer_detail_view_not_found(create_admin_user):
create_admin_user()
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/customer/230/')
assert response.status_code == 404
def test_customer_detail_view(create_admin_user):
fixture = create_admin_user()
customer = fixture['customer']
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/customer/' + str(customer.id) + '/')
assert (response.status_code == 200
and in_content(response, customer.name))
def test_customer_detail_view_no_permissions():
User = get_user_model()
admin = User.objects.create_user("novartis-admin", "admin@novartis.com",
"password", is_staff=True)
client = Client()
customer = mixer.blend('inventory.Customer')
client.login(username="novartis-admin", password="password")
response = client.get('/customer/' + str(customer.id) + '/')
assert response.status_code == 302 and 'login' in response.url

View File

@ -0,0 +1,13 @@
import pytest
from mixer.backend.django import mixer
from django.test import Client
from helper import in_content, not_in_content
pytestmark=pytest.mark.django_db
def test_customer_device_table_not_logged_in():
response = Client().get('/customer/1/devices/')
assert response.status_code == 302 and 'login' in response.url

View File

@ -0,0 +1,34 @@
import pytest
from mixer.backend.django import mixer
from django.test import Client
from django.contrib.auth import get_user_model
from helper import in_content, not_in_content
pytestmark=pytest.mark.django_db
def test_customer_list_view_not_logged_in():
response = Client().get('/')
assert response.status_code == 302 and 'login' in response.url
def test_customer_list_view_no_customer():
User = get_user_model()
admin = User.objects.create_user("novartis-admin", "admin@novartis.com",
"password", is_staff=True)
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/')
assert response.status_code == 200
def test_customer_list_view(create_admin_user):
fixture = create_admin_user()
customer = fixture['customer']
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/')
assert (response.status_code == 200
and in_content(response, customer.name))

View File

@ -0,0 +1,30 @@
import pytest
from mixer.backend.django import mixer
from django.test import Client
from helper import in_content, not_in_content
pytestmark=pytest.mark.django_db
def test_device_detail_view_not_logged_in():
response = Client().get('/device/1/')
assert response.status_code == 302 and 'login' in response.url
def test_device_detail_view(create_admin_user):
create_admin_user()
device = mixer.blend('inventory.Device', customer=mixer.SELECT)
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/device/' + str(device.id) + '/')
assert response.status_code == 200 and in_content(response, device.name)
def test_device_detail_view_not_found(create_admin_user):
create_admin_user()
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/device/100/')
assert response.status_code == 404

View File

@ -0,0 +1,46 @@
import pytest
from mixer.backend.django import mixer
from django.test import Client
from django.contrib.auth import get_user_model
from inventory.models import DeviceInNet
from helper import in_content, not_in_content
pytestmark=pytest.mark.django_db
def test_net_detail_view_no_permission(create_admin_user):
create_admin_user()
net = mixer.blend('inventory.Net')
device = mixer.blend('inventory.Computer')
device_in_net = DeviceInNet(device=device, net=net, ip='10.7.89.101')
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/net/' + str(net.id) + '/')
assert (response.status_code == 200
and in_content(response, net.name)
and not_in_content(response, device_in_net.ip))
def test_net_detail_view(create_admin_user):
fixture = create_admin_user()
net = mixer.blend('inventory.Net')
device = mixer.blend('inventory.Computer', customer=fixture['customer'])
device_in_net = DeviceInNet(device=device, net=net, ip='10.7.89.101')
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/net/' + str(net.id) + '/')
print(device_in_net.ip)
assert (response.status_code == 200
and in_content(response, net.name)
and in_content(response, device_in_net.ip))
def test_net_detail_view_not_found(create_admin_user):
create_admin_user()
net = mixer.blend('inventory.Net')
client = Client()
client.login(username="novartis-admin", password="password")
response = client.get('/net/100/')
assert response.status_code == 404