Made test_wrregioncache_table independent of wrregioncache.id.
[philipp/winterrodeln/wrpylib.git] / tests / test_wrmwmarkup.py
index 70cc665302958c473fbe916fdfeaaed5405dac78..9d1a74874395f5d5d88c3d935842c34403d65495 100644 (file)
@@ -141,15 +141,15 @@ class TestInn(unittest.TestCase):
         gasthausbox['Höhe'] = 2145
         gasthausbox['Betreiber'] = 'Max Mustermann'
         gasthausbox['Sitzplätze'] = 30
-        gasthausbox['Übernachtung'] = (False, None)
+        gasthausbox['Übernachtung'] = (True, '2 Zimmer')
         gasthausbox['Rauchfrei'] = 0.5
         gasthausbox['Rodelverleih'] = (True, '6 Euro')
-        gasthausbox['Handyempfang'] = []
+        gasthausbox['Handyempfang'] = [('A1', None), ('Drei', 'schlecht')]
         gasthausbox['Homepage'] = (True, 'http://www.graf-ferdinand.at/')
-        gasthausbox['E-Mail'] = [(('max.mustermann@graf-ferdinand.at', False), None)]
+        gasthausbox['E-Mail'] = [(('max.mustermann@graf-ferdinand.at', False), None), (('ich@example.com', True), 'privat')]
         gasthausbox['Telefon'] = [('+43-5039-21666', None), ('+43-686-4134880', 'Sommer')]
         gasthausbox['Bild'] = 'Gasthaus_Graf_Ferdinand_Haus_01.jpg'
-        gasthausbox['Rodelbahnen'] = ['[[Finstertaler Speicher]]']
+        gasthausbox['Rodelbahnen'] = ['[[Finstertaler Speicher]]', '[[Birgitzer Alm]]']
         inn = Inn()
         inn_from_gasthausbox(gasthausbox, inn)
         self.assertEqual(inn.position_latitude, 9.876000)
@@ -157,19 +157,18 @@ class TestInn(unittest.TestCase):
         self.assertEqual(inn.position_elevation, 2145)
         self.assertEqual(inn.operator, 'Max Mustermann')
         self.assertEqual(inn.seats, 30)
-        self.assertEqual(inn.overnight, False)
-        self.assertEqual(inn.overnight_comment, None)
+        self.assertEqual(inn.overnight, True)
+        self.assertEqual(inn.overnight_comment, '2 Zimmer')
         self.assertEqual(inn.smoker_area, True)
         self.assertEqual(inn.nonsmoker_area, True)
         self.assertEqual(inn.sled_rental, True)
         self.assertEqual(inn.sled_rental_comment, '6 Euro')
-        self.assertEqual(inn.mobile_provider, 'Nein')
+        self.assertEqual(inn.mobile_provider, 'A1; Drei (schlecht)')
         self.assertEqual(inn.homepage, 'http://www.graf-ferdinand.at/')
-        self.assertEqual(inn.email_list, 'max.mustermann@graf-ferdinand.at')
+        self.assertEqual(inn.email_list, 'max.mustermann@graf-ferdinand.at; ich(at)example.com (privat)')
         self.assertEqual(inn.phone_list, '+43-5039-21666; +43-686-4134880 (Sommer)')
         self.assertEqual(inn.image, 'Gasthaus_Graf_Ferdinand_Haus_01.jpg')
-        self.assertEqual(inn.sledding_list, '[[Finstertaler Speicher]]')
-
+        self.assertEqual(inn.sledding_list, '[[Finstertaler Speicher]]; [[Birgitzer Alm]]')
 
     def test_inn_to_gasthausbox(self):
         class Inn:
@@ -180,32 +179,105 @@ class TestInn(unittest.TestCase):
         inn.position_elevation = 2145
         inn.operator = 'Max Mustermann'
         inn.seats = 30
-        inn.overnight = False
-        inn.overnight_comment = None
+        inn.overnight = True
+        inn.overnight_comment = '2 Zimmer'
         inn.smoker_area = True
         inn.nonsmoker_area = True
         inn.sled_rental = True
         inn.sled_rental_comment = '6 Euro'
-        inn.mobile_provider = 'Nein'
+        inn.mobile_provider = 'A1; Drei (schlecht)'
         inn.homepage = 'http://www.graf-ferdinand.at/'
-        inn.email_list = 'max.mustermann@graf-ferdinand.at'
+        inn.email_list = 'max.mustermann@graf-ferdinand.at; ich(at)example.com (privat)'
         inn.phone_list = '+43-5039-21666; +43-686-4134880 (Sommer)'
         inn.image = 'Gasthaus_Graf_Ferdinand_Haus_01.jpg'
-        inn.sledding_list = '[[Finstertaler Speicher]]'
+        inn.sledding_list = '[[Finstertaler Speicher]]; [[Birgitzer Alm]]'
         gasthausbox = inn_to_gasthausbox(inn)
         self.assertEqual(gasthausbox['Position'], LonLat(11.015883, 9.876000))
         self.assertEqual(gasthausbox['Höhe'], 2145)
         self.assertEqual(gasthausbox['Betreiber'], 'Max Mustermann')
         self.assertEqual(gasthausbox['Sitzplätze'], 30)
-        self.assertEqual(gasthausbox['Übernachtung'], (False, None))
+        self.assertEqual(gasthausbox['Übernachtung'], (True, '2 Zimmer'))
         self.assertEqual(gasthausbox['Rauchfrei'], 0.5)
         self.assertEqual(gasthausbox['Rodelverleih'], (True, '6 Euro'))
-        self.assertEqual(gasthausbox['Handyempfang'], [])
+        self.assertEqual(gasthausbox['Handyempfang'], [('A1', None), ('Drei', 'schlecht')])
         self.assertEqual(gasthausbox['Homepage'], (True, 'http://www.graf-ferdinand.at/'))
-        self.assertEqual(gasthausbox['E-Mail'], [(('max.mustermann@graf-ferdinand.at', False), None)])
+        self.assertEqual(gasthausbox['E-Mail'], [(('max.mustermann@graf-ferdinand.at', False), None), (('ich@example.com', True), 'privat')])
         self.assertEqual(gasthausbox['Telefon'], [('+43-5039-21666', None), ('+43-686-4134880', 'Sommer')])
         self.assertEqual(gasthausbox['Bild'], 'Gasthaus_Graf_Ferdinand_Haus_01.jpg')
-        self.assertEqual(gasthausbox['Rodelbahnen'], ['[[Finstertaler Speicher]]'])
+        self.assertEqual(gasthausbox['Rodelbahnen'], ['[[Finstertaler Speicher]]', '[[Birgitzer Alm]]'])
+
+    def test_inn_from_gasthausbox_no(self):
+        class Inn:
+            pass
+        gasthausbox = collections.OrderedDict()
+        gasthausbox['Position'] = LonLat(None, None)
+        gasthausbox['Höhe'] = None
+        gasthausbox['Betreiber'] = None
+        gasthausbox['Sitzplätze'] = None
+        gasthausbox['Übernachtung'] = (False, None)
+        gasthausbox['Rauchfrei'] = 0.0
+        gasthausbox['Rodelverleih'] = (False, None)
+        gasthausbox['Handyempfang'] = []
+        gasthausbox['Homepage'] = (False, None)
+        gasthausbox['E-Mail'] = []
+        gasthausbox['Telefon'] = []
+        gasthausbox['Bild'] = None
+        gasthausbox['Rodelbahnen'] = []
+        inn = Inn()
+        inn_from_gasthausbox(gasthausbox, inn)
+        self.assertEqual(inn.position_latitude, None)
+        self.assertEqual(inn.position_longitude, None)
+        self.assertEqual(inn.position_elevation, None)
+        self.assertEqual(inn.operator, None)
+        self.assertEqual(inn.seats, None)
+        self.assertEqual(inn.overnight, False)
+        self.assertEqual(inn.overnight_comment, None)
+        self.assertEqual(inn.smoker_area, True)
+        self.assertEqual(inn.nonsmoker_area, False)
+        self.assertEqual(inn.sled_rental, False)
+        self.assertEqual(inn.sled_rental_comment, None)
+        self.assertEqual(inn.mobile_provider, 'Nein')
+        self.assertEqual(inn.homepage, 'Nein')
+        self.assertEqual(inn.email_list, 'Nein')
+        self.assertEqual(inn.phone_list, 'Nein')
+        self.assertEqual(inn.image, None)
+        self.assertEqual(inn.sledding_list, 'Nein')
+
+    def test_inn_to_gasthausbox_no(self):
+        class Inn:
+            pass
+        inn = Inn()
+        inn.position_latitude = None
+        inn.position_longitude = None
+        inn.position_elevation = None
+        inn.operator = None
+        inn.seats = None
+        inn.overnight = False
+        inn.overnight_comment = None
+        inn.smoker_area = True
+        inn.nonsmoker_area = False
+        inn.sled_rental = False
+        inn.sled_rental_comment = None
+        inn.mobile_provider = 'Nein'
+        inn.homepage = 'Nein'
+        inn.email_list = 'Nein'
+        inn.phone_list = 'Nein'
+        inn.image = None
+        inn.sledding_list = 'Nein'
+        gasthausbox = inn_to_gasthausbox(inn)
+        self.assertEqual(gasthausbox['Position'], LonLat(None, None))
+        self.assertEqual(gasthausbox['Höhe'], None)
+        self.assertEqual(gasthausbox['Betreiber'], None)
+        self.assertEqual(gasthausbox['Sitzplätze'], None)
+        self.assertEqual(gasthausbox['Übernachtung'], (False, None))
+        self.assertEqual(gasthausbox['Rauchfrei'], 0.0)
+        self.assertEqual(gasthausbox['Rodelverleih'], (False, None))
+        self.assertEqual(gasthausbox['Handyempfang'], [])
+        self.assertEqual(gasthausbox['Homepage'], (False, None))
+        self.assertEqual(gasthausbox['E-Mail'], [])
+        self.assertEqual(gasthausbox['Telefon'], [])
+        self.assertEqual(gasthausbox['Bild'], None)
+        self.assertEqual(gasthausbox['Rodelbahnen'], [])
 
     def test_inn_from_gasthausbox_none(self):
         class Inn: