]> ToastFreeware Gitweb - philipp/winterrodeln/wrfeed.git/blobdiff - tests/test_wrfeed.py
Add comment about how to execute the tests.
[philipp/winterrodeln/wrfeed.git] / tests / test_wrfeed.py
index 6397208ec4546aac3433652dc90d678d5362280b..64978095d482244d43badd8e65d700ee8cc7de27 100644 (file)
@@ -1,3 +1,7 @@
+"""How to test wrfeed:
+
+WRFEED_SETTINGS=../wrfeed/test.cfg python3 -m unittest tests/test_wrfeed.py
+"""
 import unittest
 import xml.etree.ElementTree as et
 import sqlalchemy
@@ -69,11 +73,12 @@ class TestDbWrfeed(WrfeedTestBase):
             'birgitzer_alm_(vom_adelshof)': 1,
         }
         for bahn, count in bahn_count.items():
-            result = self.app.get('/berichte/bahn/{}'.format(bahn))
-            self.assertTrue(result.data.startswith(b'<?xml'))
-            root = et.fromstring(result.data)
-            self.assertIn('Rodelbahnberichte', root.find('{http://www.w3.org/2005/Atom}title').text)
-            self.assertEqual(len(root.findall('{http://www.w3.org/2005/Atom}entry')), count, '"{}" not found {} times'.format(bahn, count))
+            with self.subTest(bahn=bahn):
+                result = self.app.get('/berichte/bahn/{}'.format(bahn))
+                self.assertTrue(result.data.startswith(b'<?xml'))
+                root = et.fromstring(result.data)
+                self.assertIn('Rodelbahnberichte', root.find('{http://www.w3.org/2005/Atom}title').text)
+                self.assertEqual(len(root.findall('{http://www.w3.org/2005/Atom}entry')), count, '"{}" not found {} times'.format(bahn, count))
 
     def test_bahnen(self):
         bahnen_count = {
@@ -87,11 +92,12 @@ class TestDbWrfeed(WrfeedTestBase):
             '761+1417+5+228': 5,
         }
         for bahnen, count in bahnen_count.items():
-            result = self.app.get('/berichte/bahnen/{}'.format(bahnen))
-            self.assertTrue(result.data.startswith(b'<?xml'))
-            root = et.fromstring(result.data)
-            self.assertIn('Rodelbahnberichte', root.find('{http://www.w3.org/2005/Atom}title').text)
-            self.assertEqual(len(root.findall('{http://www.w3.org/2005/Atom}entry')), count, 'bahnen "{}" not found {} times'.format(bahnen, count))
+            with self.subTest(bahnen=bahnen):
+                result = self.app.get('/berichte/bahnen/{}'.format(bahnen))
+                self.assertTrue(result.data.startswith(b'<?xml'))
+                root = et.fromstring(result.data)
+                self.assertIn('Rodelbahnberichte', root.find('{http://www.w3.org/2005/Atom}title').text)
+                self.assertEqual(len(root.findall('{http://www.w3.org/2005/Atom}entry')), count, 'bahnen "{}" not found {} times'.format(bahnen, count))
 
     def test_region(self):
         region_count = {
@@ -100,8 +106,9 @@ class TestDbWrfeed(WrfeedTestBase):
             'innsbruck': 3,
         }
         for region, count in region_count.items():
-            result = self.app.get('/berichte/region/{}'.format(region))
-            self.assertTrue(result.data.startswith(b'<?xml'))
-            root = et.fromstring(result.data)
-            self.assertIn('Rodelbahnberichte', root.find('{http://www.w3.org/2005/Atom}title').text)
-            self.assertEqual(len(root.findall('{http://www.w3.org/2005/Atom}entry')), count, '"{}" not found {} times'.format(region, count))
+            with self.subTest(region=region):
+                result = self.app.get('/berichte/region/{}'.format(region))
+                self.assertTrue(result.data.startswith(b'<?xml'))
+                root = et.fromstring(result.data)
+                self.assertIn('Rodelbahnberichte', root.find('{http://www.w3.org/2005/Atom}title').text)
+                self.assertEqual(len(root.findall('{http://www.w3.org/2005/Atom}entry')), count, '"{}" not found {} times'.format(region, count))