Minor refactors:
- Renames s_assemble to s_brief - Link s_local to s_brief
This commit is contained in:
52
apps/cic-ussd/tests/cic_ussd/menu/test_ussd_menu.py
Normal file
52
apps/cic-ussd/tests/cic_ussd/menu/test_ussd_menu.py
Normal file
@@ -0,0 +1,52 @@
|
||||
# standard imports
|
||||
import os
|
||||
|
||||
# third party imports
|
||||
import pytest
|
||||
|
||||
# local imports
|
||||
from cic_ussd.files.local_files import create_local_file_data_stores
|
||||
from cic_ussd.menu.ussd_menu import UssdMenu
|
||||
from tests.helpers.tmp_files import create_tmp_file
|
||||
|
||||
|
||||
@pytest.mark.parametrize('menu_name, expected_parent_menu_name', [
|
||||
('initial_language_selection', None),
|
||||
('account_management', 'start'),
|
||||
('enter_current_pin', 'account_management')
|
||||
])
|
||||
def test_ussd_menu(load_ussd_menu, menu_name, expected_parent_menu_name):
|
||||
ussd_menu = UssdMenu.find_by_name(name=menu_name)
|
||||
assert ussd_menu.get('parent') == expected_parent_menu_name
|
||||
|
||||
|
||||
def test_create_ussd_menu():
|
||||
descriptor, tmp_file = create_tmp_file()
|
||||
ussd_menu_db = create_local_file_data_stores(file_location=tmp_file, table_name="ussd_menu")
|
||||
UssdMenu.ussd_menu_db = ussd_menu_db
|
||||
UssdMenu(name='foo', description='foo-bar', parent=None)
|
||||
assert UssdMenu.find_by_name(name='foo')['description'] == 'foo-bar'
|
||||
UssdMenu.set_description(name='foo', description='bar')
|
||||
assert UssdMenu.find_by_name(name='foo')['description'] == 'bar'
|
||||
menu2 = UssdMenu(name='fizz', description='buzz', parent='foo')
|
||||
assert UssdMenu.parent_menu(menu2.name)['description'] == 'bar'
|
||||
os.close(descriptor)
|
||||
os.remove(tmp_file)
|
||||
|
||||
|
||||
def test_failed_create_ussd_menu():
|
||||
descriptor, tmp_file = create_tmp_file()
|
||||
ussd_menu_db = create_local_file_data_stores(file_location=tmp_file, table_name="ussd_menu")
|
||||
UssdMenu.ussd_menu_db = ussd_menu_db
|
||||
UssdMenu(name='foo', description='foo-bar', parent=None)
|
||||
assert UssdMenu.find_by_name(name='foo')['description'] == 'foo-bar'
|
||||
UssdMenu.set_description(name='foo', description='bar')
|
||||
assert UssdMenu.find_by_name(name='foo')['description'] == 'bar'
|
||||
|
||||
with pytest.raises(ValueError) as error:
|
||||
UssdMenu(name='foo', description='foo-bar', parent=None)
|
||||
|
||||
assert str(error.value) == "Menu already exists!"
|
||||
os.close(descriptor)
|
||||
os.remove(tmp_file)
|
||||
|
||||
Reference in New Issue
Block a user