forked from CapivaraProjects/repository
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtest1_user.py
More file actions
75 lines (61 loc) · 2.22 KB
/
test1_user.py
File metadata and controls
75 lines (61 loc) · 2.22 KB
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
from UserRepository import UserRepository
import models.User
from tools.Cryptography import Crypto
userRep = UserRepository(
'capivara',
'test',
'127.0.0.1',
'5432',
'green_eyes')
crypto = Crypto()
salt = crypto.generateRandomSalt()
ciphredPassword = crypto.encrypt(salt, 'test')
def test_insert():
user = models.User.User(0,
0,
'tester@test.com',
'tester',
ciphredPassword,
salt,
'12/12/12',
'')
assert userRep.create(user).username == 'tester'
def test_search():
users = userRep.search(user=models.User.User(username='tester'))
print('return {0} lines'.format(len(users)))
assert 'tester' in users['content'][0].username
def test_authentication():
user = models.User.User(username='tester',
password='test')
authUser = userRep.authentication(user)
assert authUser.username == user.username
def test_authentication_fail():
crypto = Crypto()
salt = crypto.generateRandomSalt()
wrongPassword = crypto.encrypt(salt, 'wrong')
user = models.User.User(username='tester', salt=salt,
password=wrongPassword)
authUser = userRep.authentication(user)
assert authUser.username == ""
def test_update():
user = models.User.User(0,
0,
'tester@test.com',
'tester update',
ciphredPassword,
salt,
'12/01/18',
'13/12/18')
user = userRep.update(user)
assert user.username == 'tester update'
def test_delete():
user = models.User.User(0,
0,
'tester@test.com',
'tester update',
ciphredPassword,
salt,
'12/01/18',
'13/12/18')
result = userRep.delete(user)
assert result is True