]> wagnertech.de Git - SVBaL.git/blob - python/eh_app/tests.py
Korrektur Bug 161 (EH-Meldung)
[SVBaL.git] / python / eh_app / tests.py
1 from django.test import TestCase
2 #from django.contrib.auth import authenticate, login
3 from django.contrib.auth.models import User
4
5 # Create your tests here.
6 from .AWK import config
7 from django.test import Client
8 from django.urls import reverse
9
10 class TestConfig(TestCase):
11     def test_setter(self):
12         cf = config.getInstance("svbal")
13         cf.setConfig("bla", "blub")
14         
15         val = cf.getConfig("bla")
16         assert (val == "blub")
17         
18         # change setting
19         cf.setConfig("bla", "bar")
20         val = cf.getConfig("bla")
21         assert (val == "bar")
22         
23 class TestQModel(TestCase):
24     def setUp(self):
25         cf = config.getInstance("svbal")
26         cf.setConfig("datenquelle", "TestExport.csv")
27         cf.setConfig("data_path", "/tmp/svbal")
28
29     def test_allinstances(self):
30         config.getInstance("svbal")
31         from eh_app.qmodels import Mitglied
32         mm = Mitglied.objects.all()
33         assert (len(mm) == 5)
34         gst = mm[0].VersicherteGrundstucke()
35         assert (len(gst) == 1)
36         for m in mm:
37             if m.nachname == "Wagner":
38                 gst = m.VersicherteGrundstucke()
39                 assert (len(gst) == 3)
40
41 class TestViews(TestCase):
42     def setUp(self):
43         self.user = User(username="nutzer", password="nutzer")
44         self.user.save()
45         cf = config.getInstance("svbal")
46         cf.setConfig("data_path", "/tmp/svbal")
47     def test_index(self):
48         client = Client()
49         response = client.get(reverse('index'))
50         assert(response.status_code == 200)
51         
52     def test_ehmeldung_bug_161(self):
53         client = Client()
54         client.force_login(self.user)
55         response = client.post('/eh-app/svbal/ehmeldung/', 
56             {"verein": "svbal",
57              "VorZuname": "Michael Wagner",
58              "Wohnanschrift": "Seestr 2, 12345 Ort",
59              "AnzahlWohnungen": "1"
60              })
61         assert(response.status_code == 302)
62         assert(response.url == '/eh-app/svbal/ehmeldung/erfolg')
63         
64         
65