-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathtest_Demo.py
119 lines (106 loc) · 4.94 KB
/
test_Demo.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
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
from unittest import TestCase
import cv2
from unittest.mock import Mock
from flask import request, jsonify
class TestDemo(TestCase):
def setUp(self):
self.video = cv2.VideoCapture("file/demo.mp4")
self.dummy_id = 123
self.DEFAULT_EXPIRES_IN = 900 # In sec
self.DEFAULT_POLLING_INTERVAL = 2
self.persistent_status = True
self.emo = True
self.behav = True
self.threat = True
self.form = {"emo":self.emo, "behav":self.behav, "threat":self.threat, "persistent_status":self.persistent_status,
"expires_in":self.DEFAULT_POLLING_INTERVAL}
self.files = {"video":self.video, "filename":"demo.mp4"}
self.request = Mock()
self.request.form = self.form
self.request.files = self.files
# 1
def test_annotate_errorFile(self):
from Demo import annotate
self.files = {"video":self.video, "filename":"demo.avi"}
self.request.files = self.files
response = {"error_id": "Bad Request", "error_message": "video file missing"}
out = annotate(self.request)
self.assertEqual(out, response)
# 2
def test_annotate_errorEmo(self):
from Demo import annotate
self.form = {"behav":self.behav, "threat":self.threat}
self.request.form = self.form
response = {"error_id": "Bad Request", "error_message": "parameters missing : 'emo' "}
out = annotate(self.request)
self.assertEqual(out, response)
# 3
def test_annotate_errorBehav(self):
from Demo import annotate
self.form = {"emo":self.emo, "threat":self.threat}
self.request.form = self.form
response = {"error_id": "Bad Request", "error_message": "parameters missing : 'behav' "}
out = annotate(self.request)
self.assertEqual(out, response)
# 4
def test_annotate_errorThreat(self):
from Demo import annotate
self.form = {"behav":self.behav, "emo":self.emo}
self.request.form = self.form
response = {"error_id": "Bad Request", "error_message": "parameters missing : 'threat' "}
out = annotate(self.request)
self.assertEqual(out, response)
# 5
def test_Annotate_error_Persist_Expires(self):
from Demo import annotate
self.form = {"behav": self.behav, "emo": self.emo, "threat":self.threat}
self.request.form = self.form
response = {"themobe_id": 123, "video": "demo.mp4", "video_status": "processing", "expires_in": self.DEFAULT_EXPIRES_IN,
"interval": self.DEFAULT_POLLING_INTERVAL}
out = annotate(self.request)
self.assertEqual(out, response)
# 6
def test_Annotate_error_Expires(self):
from Demo import annotate
self.form = {"behav": self.behav, "emo": self.emo, "threat":self.threat, "persistent_status":self.persistent_status}
self.request.form = self.form
response = {"themobe_id": 123, "video": "demo.mp4", "video_status": "processing", "expires_in": self.DEFAULT_EXPIRES_IN,
"interval": self.DEFAULT_POLLING_INTERVAL}
out = annotate(self.request)
self.assertEqual(out, response)
# 7
def test_Annotate_error_Expires_100(self):
from Demo import annotate
self.form['expires_in'] = 100
self.request.form = self.form
response = {"themobe_id": 123, "video": "demo.mp4", "video_status": "processing", "expires_in": 100,
"interval": self.DEFAULT_POLLING_INTERVAL}
out = annotate(self.request)
self.assertEqual(out, response)
# 8
def test_Annotate_error_Expires_1000(self):
from Demo import annotate
self.form['expires_in'] = 1000
self.request.form = self.form
response = {"themobe_id": 123, "video": "demo.mp4", "video_status": "processing", "expires_in": self.DEFAULT_EXPIRES_IN,
"interval": self.DEFAULT_POLLING_INTERVAL}
out = annotate(self.request)
self.assertEqual(out, response)
# 9
def test_Annotate_errorPersist_Expires_100(self):
from Demo import annotate
self.form = {"behav": self.behav, "emo": self.emo, "threat": self.threat, "expires_in":100}
self.request.form = self.form
response = {"themobe_id": 123, "video": "demo.mp4", "video_status": "processing", "expires_in": 100,
"interval": self.DEFAULT_POLLING_INTERVAL}
out = annotate(self.request)
self.assertEqual(out, response)
# 10
def test_Annotate_error_Expires_1000(self):
from Demo import annotate
self.form = {"behav": self.behav, "emo": self.emo, "threat": self.threat, "expires_in":1000}
self.request.form = self.form
response = {"themobe_id": 123, "video": "demo.mp4", "video_status": "processing", "expires_in": self.DEFAULT_EXPIRES_IN,
"interval": self.DEFAULT_POLLING_INTERVAL}
out = annotate(self.request)
self.assertEqual(out, response)