2019-09-09 10:59:28 +02:00
|
|
|
import pytest
|
|
|
|
from mixer.backend.django import mixer
|
|
|
|
|
|
|
|
from django.test import Client
|
|
|
|
|
2019-11-30 16:07:55 +01:00
|
|
|
import helper
|
2019-09-09 10:59:28 +02:00
|
|
|
|
2019-11-30 16:08:53 +01:00
|
|
|
pytestmark = pytest.mark.django_db
|
2019-09-09 10:59:28 +02:00
|
|
|
|
|
|
|
|
2019-11-30 16:36:13 +01:00
|
|
|
def test_computer_detail_view_not_logged_in():
|
|
|
|
response = Client().get('/computer/1/')
|
2019-09-09 10:59:28 +02:00
|
|
|
assert response.status_code == 302 and 'login' in response.url
|
|
|
|
|
|
|
|
|
2019-12-01 22:17:29 +01:00
|
|
|
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 helper.in_content(response, computer.name))
|
|
|
|
|
|
|
|
|
2019-11-30 16:36:13 +01:00
|
|
|
def test_computer_detail_view_not_found(create_admin_user):
|
2019-09-09 10:59:28 +02:00
|
|
|
create_admin_user()
|
|
|
|
client = Client()
|
|
|
|
client.login(username="novartis-admin", password="password")
|
2019-11-30 16:36:13 +01:00
|
|
|
response = client.get('/computer/230/')
|
2019-09-09 10:59:28 +02:00
|
|
|
assert response.status_code == 404
|
|
|
|
|
|
|
|
|
2019-11-30 16:36:13 +01:00
|
|
|
def test_computer_detail_view(create_admin_user):
|
|
|
|
create_admin_user()
|
|
|
|
computer = mixer.blend('inventory.Computer', customer=mixer.SELECT)
|
2019-09-09 10:59:28 +02:00
|
|
|
client = Client()
|
|
|
|
client.login(username="novartis-admin", password="password")
|
2019-11-30 16:36:13 +01:00
|
|
|
response = client.get('/computer/' + str(computer.id) + '/')
|
2019-09-09 10:59:28 +02:00
|
|
|
assert (response.status_code == 200
|
2019-11-30 16:36:13 +01:00
|
|
|
and helper.in_content(response, computer.name))
|
2019-09-09 10:59:28 +02:00
|
|
|
|
|
|
|
|
2019-11-30 16:36:13 +01:00
|
|
|
def test_computer_detail_view_no_permissions():
|
2019-09-09 10:59:28 +02:00
|
|
|
User = get_user_model()
|
2019-11-30 16:07:55 +01:00
|
|
|
User.objects.create_user("novartis-admin", "admin@novartis.com",
|
|
|
|
"password", is_staff=True)
|
2019-09-09 10:59:28 +02:00
|
|
|
client = Client()
|
2019-11-30 16:36:13 +01:00
|
|
|
mixer.blend('inventory.Customer')
|
|
|
|
computer = mixer.blend('inventory.Computer', customer=mixer.SELECT)
|
2019-09-09 10:59:28 +02:00
|
|
|
client.login(username="novartis-admin", password="password")
|
2019-11-30 16:36:13 +01:00
|
|
|
response = client.get('/computer/' + str(computer.id) + '/')
|
|
|
|
assert response.status_code == 403
|