Skip to content
Snippets Groups Projects
Commit 61ad143c authored by Sebastian Lobinger's avatar Sebastian Lobinger
Browse files

update test_sams_app.py to reflect szenario in issue #14

parent 6296b974
No related branches found
No related tags found
1 merge request!8Resolve "Ändern der Sprache in ExampleApp muss in beiden Sprachen funtkionieren"
This commit is part of merge request !8. Comments created here will be created in the context of that merge request.
...@@ -9,6 +9,7 @@ from sams_classes.exceptions import ( ...@@ -9,6 +9,7 @@ from sams_classes.exceptions import (
from flask import Blueprint, Flask from flask import Blueprint, Flask
from .helper_classes import FlaskInThread from .helper_classes import FlaskInThread
import requests import requests
import copy
def eprint(*args, **kwargs): def eprint(*args, **kwargs):
print(*args, file=sys.stderr, **kwargs) print(*args, file=sys.stderr, **kwargs)
...@@ -89,7 +90,8 @@ class TestSAMSApp(unittest.TestCase): ...@@ -89,7 +90,8 @@ class TestSAMSApp(unittest.TestCase):
'overwritten': 'Will overwrite default if requested' 'overwritten': 'Will overwrite default if requested'
} }
app = SAMSApp(name = 'test', manifest = manifest app = SAMSApp(name = 'test', manifest = manifest
, langDict = {'de': default_lang, 'en': request_lang}) , langDict = {
'de': copy.deepcopy(default_lang), 'en': copy.deepcopy(request_lang)})
self.assertEqual(app.lang('en')['overwritten'], request_lang['overwritten']) self.assertEqual(app.lang('en')['overwritten'], request_lang['overwritten'])
self.assertEqual(app.lang('en')['fallback'], default_lang['fallback']) self.assertEqual(app.lang('en')['fallback'], default_lang['fallback'])
self.assertEqual(app.lang('fr')['overwritten'], default_lang['overwritten']) self.assertEqual(app.lang('fr')['overwritten'], default_lang['overwritten'])
...@@ -102,35 +104,43 @@ class TestSAMSApp(unittest.TestCase): ...@@ -102,35 +104,43 @@ class TestSAMSApp(unittest.TestCase):
manifest = { manifest = {
'default_language': 'de', 'default_language': 'de',
'menu':[ 'menu':[
{'url': expected_urls[0], 'name_string': name_strings[0]}, {'url': copy.copy(expected_urls[0]),
{'url': expected_urls[1], 'name_string': name_strings[1], 'name_string': copy.copy(name_strings[0])},
{'url': copy.copy(expected_urls[1]), 'name_string': copy.copy(name_strings[1]),
'menu':[ 'menu':[
{'url': expected_urls[2], 'name_string': name_strings[2]}, {'url': copy.copy(expected_urls[2]),
{'url': expected_urls[3], 'name_string': name_strings[3]} 'name_string': copy.copy(name_strings[2])},
{'url': copy.copy(expected_urls[3]),
'name_string': copy.copy(name_strings[3])}
]} ]}
] ]
} }
default_lang = { langDicts = {
'de': {
name_strings[0]: '1 überschrieben', name_strings[0]: '1 überschrieben',
name_strings[1]: '2 verwendet', name_strings[1]: '2 verwendet',
name_strings[2]: '2.1 verwendet', name_strings[2]: '2.1 verwendet',
name_strings[3]: '2.2 überschrieben' name_strings[3]: '2.2 überschrieben'
} },
request_lang = { 'en': {
name_strings[0]: '1 used', name_strings[0]: '1 used',
name_strings[3]: '2.2 used' name_strings[3]: '2.2 used'
} }
}
app = SAMSApp(name = 'test', manifest = manifest app = SAMSApp(name = 'test', manifest = manifest
, langDict = {'de': default_lang, 'en': request_lang}) , langDict = copy.deepcopy(langDicts))
menu = app.menu('en') menu = app.menu('en')
self.assertEqual(menu[0]['url'], expected_urls[0]) self.assertEqual(menu[0]['url'], expected_urls[0])
self.assertEqual(menu[1]['url'], expected_urls[1]) self.assertEqual(menu[1]['url'], expected_urls[1])
self.assertEqual(menu[1]['menu'][0]['url'], expected_urls[2]) self.assertEqual(menu[1]['menu'][0]['url'], expected_urls[2])
self.assertEqual(menu[1]['menu'][1]['url'], expected_urls[3]) self.assertEqual(menu[1]['menu'][1]['url'], expected_urls[3])
self.assertEqual(menu[0]['name'], request_lang[name_strings[0]]) self.assertEqual(menu[1]['name'], langDicts['de'][name_strings[1]])
self.assertEqual(menu[1]['name'], default_lang[name_strings[1]]) self.assertEqual(menu[0]['name'], langDicts['en'][name_strings[0]])
self.assertEqual(menu[1]['menu'][0]['name'], default_lang[name_strings[2]]) self.assertEqual(menu[1]['menu'][1]['name'], langDicts['en'][name_strings[3]])
self.assertEqual(menu[1]['menu'][1]['name'], request_lang[name_strings[3]]) self.assertEqual(menu[1]['menu'][0]['name'], langDicts['de'][name_strings[2]])
menu = app.menu('de')
self.assertEqual(menu[0]['name'], langDicts['de'][name_strings[0]])
self.assertEqual(menu[1]['menu'][1]['name'], langDicts['en'][name_strings[3]])
def test_app_menu_prefix(self): def test_app_menu_prefix(self):
"""app.menu(lanCode, prefix) returns the app menu with prefixed urls""" """app.menu(lanCode, prefix) returns the app menu with prefixed urls"""
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment