tests: add tests for anonymise and remove items
This commit is contained in:
parent
9b4ed2819c
commit
cf2ade70c6
|
@ -5,21 +5,26 @@ from quixote import cleanup
|
|||
from quixote.http_request import HTTPRequest
|
||||
|
||||
from wcs.formdef import FormDef
|
||||
from wcs.qommon import sessions
|
||||
from wcs.roles import Role
|
||||
from wcs.workflows import WorkflowStatusItem
|
||||
from wcs.wf.anonymise import AnonymiseWorkflowStatusItem
|
||||
from wcs.wf.dispatch import DispatchWorkflowStatusItem
|
||||
from wcs.wf.jump import JumpWorkflowStatusItem
|
||||
from wcs.wf.remove import RemoveWorkflowStatusItem
|
||||
from wcs.wf.roles import AddRoleWorkflowStatusItem, RemoveRoleWorkflowStatusItem
|
||||
|
||||
from utilities import create_temporary_pub
|
||||
|
||||
def setup_module(module):
|
||||
cleanup()
|
||||
global pub
|
||||
global pub, req
|
||||
pub = create_temporary_pub()
|
||||
req = HTTPRequest(None, {})
|
||||
req = HTTPRequest(None, {'SERVER_NAME': 'example.net', 'SCRIPT_NAME': ''})
|
||||
req.response.filter = {}
|
||||
req.user = None
|
||||
pub._set_request(req)
|
||||
req.session = sessions.Session(id=1)
|
||||
|
||||
def teardown_module(module):
|
||||
global pub
|
||||
|
@ -156,3 +161,43 @@ def test_roles():
|
|||
user.store()
|
||||
item.perform(formdata)
|
||||
assert pub.user_class.get(user.id).roles == ['2']
|
||||
|
||||
def test_anonymise():
|
||||
formdef = FormDef()
|
||||
formdef.name = 'baz'
|
||||
formdef.fields = []
|
||||
formdef.store()
|
||||
|
||||
formdata = formdef.data_class()()
|
||||
formdata.just_created()
|
||||
formdata.user_id = '1'
|
||||
formdata.store()
|
||||
|
||||
item = AnonymiseWorkflowStatusItem()
|
||||
item.perform(formdata)
|
||||
assert formdef.data_class().get(formdata.id).user_id is None
|
||||
assert formdef.data_class().get(formdata.id).anonymised
|
||||
|
||||
def test_remove():
|
||||
formdef = FormDef()
|
||||
formdef.name = 'baz'
|
||||
formdef.store()
|
||||
|
||||
formdata = formdef.data_class()()
|
||||
formdata.store()
|
||||
|
||||
item = RemoveWorkflowStatusItem()
|
||||
assert formdef.data_class().has_key(formdata.id)
|
||||
assert item.perform(formdata) == 'http://example.net'
|
||||
assert not formdef.data_class().has_key(formdata.id)
|
||||
|
||||
formdata = formdef.data_class()()
|
||||
formdata.store()
|
||||
|
||||
item = RemoveWorkflowStatusItem()
|
||||
req.response.filter['in_backoffice'] = True
|
||||
assert formdef.data_class().has_key(formdata.id)
|
||||
assert item.perform(formdata) == '..'
|
||||
assert not formdef.data_class().has_key(formdata.id)
|
||||
req.response.filter = {}
|
||||
assert req.session.message
|
||||
|
|
Loading…
Reference in New Issue