This commit is contained in:
2019-02-23 22:52:06 +01:00
parent e6f58153ef
commit b5497ab517
7 changed files with 51 additions and 109 deletions

View File

@ -5,10 +5,9 @@ do_autopath()
from py.test import raises
from tiramisu.error import ConfigError
from tiramisu import Config
from tiramisu.option import BoolOption, OptionDescription, Leadership
from tiramisu import Config, BoolOption, OptionDescription, Leadership, \
list_sessions, delete_session, default_storage
from tiramisu.setting import groups, owners
from tiramisu.storage import list_sessions, delete_session
def teardown_function(function):
@ -31,13 +30,10 @@ def test_list():
assert 'test_non_persistent' not in list_sessions()
def test_delete_not_persisten():
def test_delete_not_persistent():
b = BoolOption('b', '')
o = OptionDescription('od', '', [b])
try:
Config(o, session_id='test_persistent', persistent=True)
delete_session('test_persistent')
except:
if not default_storage.is_persistent():
c = Config(o, session_id='not_test_persistent')
assert 'not_test_persistent' in list_sessions()
del c
@ -50,34 +46,24 @@ def test_delete_not_persisten():
def test_create_persistent():
b = BoolOption('b', '')
o = OptionDescription('od', '', [b])
try:
if default_storage.is_persistent():
Config(o, session_id='test_persistent', persistent=True)
delete_session('test_persistent')
except ValueError:
# storage is not persistent
pass
def test_create_delete_not_persistent():
b = BoolOption('b', '')
o = OptionDescription('od', '', [b])
try:
Config(o, session_id='test_persistent', persistent=True)
delete_session('test_persistent')
except ValueError:
if not default_storage.is_persistent():
raises(ValueError, "delete_session('test_persistent')")
def test_list_sessions_persistent():
b = BoolOption('b', '')
o = OptionDescription('od', '', [b])
try:
if default_storage.is_persistent():
c = Config(o, session_id='test_persistent', persistent=True)
c.option('b').value.set(True)
except ValueError:
# storage is not persistent
pass
else:
assert 'test_persistent' in list_sessions()
delete_session('test_persistent')
@ -85,12 +71,8 @@ def test_list_sessions_persistent():
def test_delete_session_persistent():
b = BoolOption('b', '')
o = OptionDescription('od', '', [b])
try:
if default_storage.is_persistent():
Config(o, session_id='test_persistent', persistent=True)
except ValueError:
# storage is not persistent
pass
else:
assert 'test_persistent' in list_sessions()
delete_session('test_persistent')
assert 'test_persistent' not in list_sessions()
@ -99,12 +81,8 @@ def test_delete_session_persistent():
def test_create_persistent_retrieve():
b = BoolOption('b', '')
o = OptionDescription('od', '', [b])
try:
if default_storage.is_persistent():
c = Config(o, session_id='test_persistent', persistent=True)
except ValueError:
# storage is not persistent
pass
else:
assert c.option('b').value.get() is None
c.option('b').value.set(True)
assert c.option('b').value.get() is True
@ -123,12 +101,8 @@ def test_create_persistent_retrieve():
def test_two_persistent():
b = BoolOption('b', '')
o = OptionDescription('od', '', [b])
try:
if default_storage.is_persistent():
c = Config(o, session_id='test_persistent', persistent=True)
except ValueError:
# storage is not persistent
pass
else:
c2 = Config(o, session_id='test_persistent', persistent=True)
c2.property.pop('cache')
assert c.option('b').value.get() is None
@ -147,12 +121,8 @@ def test_two_persistent():
def test_create_persistent_retrieve_owner():
b = BoolOption('b', '')
o = OptionDescription('od', '', [b])
try:
if default_storage.is_persistent():
c = Config(o, session_id='test_persistent', persistent=True)
except ValueError:
# storage is not persistent
pass
else:
assert c.option('b').owner.isdefault()
c.option('b').value.set(True)
assert c.option('b').value.get()
@ -179,12 +149,8 @@ def test_create_persistent_retrieve_owner_leadership():
b = BoolOption('b', '', multi=True)
o = Leadership('a', '', [a, b])
o1 = OptionDescription('a', '', [o])
try:
if default_storage.is_persistent():
c = Config(o1, session_id='test_persistent', persistent=True)
except ValueError:
# storage is not persistent
pass
else:
assert c.option('a.a').owner.isdefault()
c.option('a.a').value.set([True, False])
c.option('a.b', 1).value.set(True)
@ -215,13 +181,9 @@ def test_create_persistent_retrieve_owner_leadership():
def test_two_persistent_owner():
b = BoolOption('b', '')
o = OptionDescription('od', '', [b])
try:
if default_storage.is_persistent():
c = Config(o, session_id='test_persistent', persistent=True)
c.property.pop('cache')
except ValueError:
# storage is not persistent
pass
else:
c2 = Config(o, session_id='test_persistent', persistent=True)
c2.property.pop('cache')
assert c.option('b').owner.isdefault()
@ -238,12 +200,8 @@ def test_two_persistent_owner():
def test_create_persistent_retrieve_information():
b = BoolOption('b', '')
o = OptionDescription('od', '', [b])
try:
if default_storage.is_persistent():
c = Config(o, session_id='test_persistent', persistent=True)
except ValueError:
# storage is not persistent
pass
else:
c.information.set('info', 'string')
assert c.information.get('info') == 'string'
del c
@ -262,13 +220,9 @@ def test_create_persistent_retrieve_information():
def test_two_persistent_information():
b = BoolOption('b', '')
o = OptionDescription('od', '', [b])
try:
if default_storage.is_persistent():
c = Config(o, session_id='test_persistent', persistent=True)
c.property.pop('cache')
except ValueError:
# storage is not persistent
pass
else:
c.information.set('info', 'string')
assert c.information.get('info') == 'string'
c2 = Config(o, session_id='test_persistent', persistent=True)
@ -280,15 +234,11 @@ def test_two_persistent_information():
def test_two_different_persistents():
b = BoolOption('b', '')
o = OptionDescription('od', '', [b])
try:
if default_storage.is_persistent():
c = Config(o, session_id='test_persistent', persistent=True)
c.property.pop('cache')
d = Config(o, session_id='test_persistent2', persistent=True)
d.property.pop('cache')
except ValueError:
# storage is not persistent
pass
else:
c.option('b').property.add('test')
assert c.option('b').property.get() == {'test'}
assert d.option('b').property.get() == set()
@ -305,15 +255,11 @@ def test_two_different_persistents():
def test_two_different_information():
b = BoolOption('b', '')
o = OptionDescription('od', '', [b])
try:
if default_storage.is_persistent():
c = Config(o, session_id='test_persistent', persistent=True)
c.information.set('a', 'a')
d = Config(o, session_id='test_persistent2', persistent=True)
d.information.set('a', 'b')
except ValueError:
# storage is not persistent
pass
else:
assert c.information.get('a') == 'a'
assert d.information.get('a') == 'b'
@ -324,14 +270,10 @@ def test_two_different_information():
def test_exportation_importation():
b = BoolOption('b', '')
o = OptionDescription('od', '', [b])
try:
if default_storage.is_persistent():
c = Config(o, session_id='test_persistent', persistent=True)
d = Config(o, session_id='test_persistent2', persistent=True)
e = Config(o, session_id='test_persistent3', persistent=True)
except ValueError:
# storage is not persistent
pass
else:
c.owner.set('export')
assert c.option('b').value.get() is None
c.option('b').value.set(True)