-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdatabase_test.py
77 lines (58 loc) · 2.35 KB
/
database_test.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
import mongomock
from database import *
def test_add_history():
db = mongomock.MongoClient().db
username = 'test_user'
history = {"history": [{"native_language": 'en',
"target_language": 'fr',
"native": 'potato',
"translated": 'pomme de terre'}]}
create_user(db, username, 'test_password')
add_history(db, username, 'en', 'fr', 'potato', 'pomme de terre')
assert history == get_history(db, username)
print("Add history PASSED :)")
def test_remove_history():
db = mongomock.MongoClient().db
username = 'test_user'
history = {"history": [{"native_language": 'en',
"target_language": 'fr',
"native": 'potato',
"translated": 'pomme de terre'}]}
create_user(db, username, 'test_password')
add_history(db, username, 'en', 'fr', 'potato', 'pomme de terre')
remove_history(db, username, 'en', 'fr', 'potato', 'pomme de terre')
assert {"history": []} == get_history(db, username)
print("Remove history PASSED :)")
def test_create_user():
db = mongomock.MongoClient().db
user1 = 'test_user1'
user2 = 'test_user2'
pw = 'test_password'
create_user(db, user1, pw)
assert '\"INCORRECT_PASSWORD\"' == find_user(db, user1, 'wrong_password')
assert '\"USER_DNE\"' == find_user(db, user2, pw)
print("Authenticate user PASSED :)")
assert '\"INCORRECT_PASSWORD\"' != find_user(db, user1, pw)
assert '\"USER_DNE\"' != find_user(db, user1, pw)
print("Create user PASSED :)")
def test_remove_user():
db = mongomock.MongoClient().db
user1 = 'test_user1'
user2 = 'test_user2'
pw = 'test_password'
create_user(db, user1, pw)
create_user(db, user2, pw)
assert '\"USER_DNE\"' != find_user(db, user1, pw)
assert '\"USER_DNE\"' != find_user(db, user2, pw)
remove_user(db, user1, pw)
assert '\"USER_DNE\"' == find_user(db, user1, pw)
assert '\"USER_DNE\"' != find_user(db, user2, pw)
print("User removal PASSED :)")
if __name__ == "__main__":
test_add_history()
test_remove_history()
test_create_user()
test_remove_user()
# If any test fails, the assert statement in that test
# will prevent this final print statement from executing
print("\nALL TESTS PASSED !!! :3\n")