from django.test import TestCase from django.test import Client from django.contrib.auth.models import User from django.conf import settings from .forms import ITForm class LoginTestCase(TestCase): def setUp(self): self.client = Client() self.user = User.objects.create_user('vladimir', 'vladimir@reiherzehe.com', 'reiherzehe') self.client.login(username='vladimir', password='reiherzehe') self.response = self.client.get('/') def testLogin(self): self.assertContains(self.response, 'Du bist eingeloggt als vladimir@reiherzehe.com', status_code=200) def testDebugWarning(self): with self.settings(DEBUG=True): self.response = self.client.get('/') self.assertContains(self.response, "WARNUNG! Test-MODUS aktiviert. Es werden keine Mails verschickt!", status_code=200) class NoLoginTestCase(TestCase): def setUp(self): self.client = Client() def test_details(self): response = self.client.get('/') self.assertEqual(response.status_code, 302) response2 = self.client.get(response.url) self.assertContains( response2, 'Bitte via Wolke einloggen:', status_code=200) class ITFORMTestCase(TestCase): def test_mac(self): form = ITForm(data={"vendor": 'MAC', 'os': 'UBU'}) #print (form.errors) self.assertEqual(form.non_field_errors(), ['Ein MAC sollte Mac OS installiert haben']) def test_ubu(self): form = ITForm(data={"vendor": 'STANDARD', 'os': 'UBU'}) #print (form.errors) self.assertNotEqual(form.non_field_errors(), ['Ein MAC sollte Mac OS installiert haben'])