wcs/tests/test_role.py

39 lines
1012 B
Python

import cPickle
from utilities import create_temporary_pub, clean_temporary_pub
from qommon.storage import StorableObject
from wcs.roles import Role
def setup_module(module):
pub = create_temporary_pub()
pub.cfg['language'] = {'language': 'en'}
def teardown_module(module):
clean_temporary_pub()
def test_slug():
Role.wipe()
role = Role(name='Hello world')
role.store()
assert role.slug == 'hello-world'
def test_duplicated_name():
Role.wipe()
role = Role(name='Hello world')
role.store()
assert role.slug == 'hello-world'
role = Role(name='Hello world')
role.store()
assert role.slug == 'hello-world-1'
def test_migrate():
Role.wipe()
role = Role(name='Hello world')
role.store()
obj = cPickle.load(open(role.get_object_filename()))
del obj.slug
cPickle.dump(obj, open(role.get_object_filename(), 'w'))
assert cPickle.load(open(role.get_object_filename())).slug is None
assert Role.get(role.id).slug == 'hello-world'