-
Notifications
You must be signed in to change notification settings - Fork 2k
/
test_user.py
82 lines (70 loc) · 2.39 KB
/
test_user.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
from nose.tools import assert_equal
import ckan.logic as logic
from ckan import model
from ckan.lib.create_test_data import CreateTestData
from ckan.tests import TestController as ControllerTestCase
from ckan.tests import url_for
class TestUserApi(ControllerTestCase):
@classmethod
def setup_class(cls):
CreateTestData.create()
@classmethod
def teardown_class(cls):
model.repo.rebuild_db()
def test_autocomplete(self):
response = self.app.get(
url=url_for(controller='api', action='user_autocomplete', ver=2),
params={
'q': u'sysadmin',
},
status=200,
)
print response.json
assert set(response.json[0].keys()) == set(['id', 'name', 'fullname'])
assert_equal(response.json[0]['name'], u'testsysadmin')
assert_equal(response.header('Content-Type'), 'application/json;charset=utf-8')
def test_autocomplete_multiple(self):
response = self.app.get(
url=url_for(controller='api', action='user_autocomplete', ver=2),
params={
'q': u'tes',
},
status=200,
)
print response.json
assert_equal(len(response.json), 2)
def test_autocomplete_limit(self):
response = self.app.get(
url=url_for(controller='api', action='user_autocomplete', ver=2),
params={
'q': u'tes',
'limit': 1
},
status=200,
)
print response.json
assert_equal(len(response.json), 1)
class TestUserActions(object):
@classmethod
def setup_class(cls):
CreateTestData.create()
@classmethod
def teardown_class(cls):
model.repo.rebuild_db()
def test_user_create_simple(self):
'''Simple creation of a new user by a non-sysadmin user.'''
context = {
'model': model,
'session': model.Session,
'user': 'tester'
}
data_dict = {
'name': 'a-new-user',
'email': 'a.person@example.com',
'password': 'supersecret',
}
user_dict = logic.get_action('user_create')(context, data_dict)
assert_equal(user_dict['name'], 'a-new-user')
assert 'email' in user_dict
assert 'apikey' in user_dict
assert 'password' not in user_dict