-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathAnalysisResultRepository_test.py
107 lines (85 loc) · 3.09 KB
/
AnalysisResultRepository_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
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
from repository.AnalysisResultRepository import AnalysisResultRepository
from repository.AnalysisRepository import AnalysisRepository
from repository.UserRepository import UserRepository
import models.AnalysisResult
import models.Analysis
import models.Plant
import models.Disease
import models.Image
import models.Classifier
analysisResultRep = AnalysisResultRepository(
'capivara',
'test',
'127.0.0.1',
'5432',
'green_eyes')
analysisRep = AnalysisRepository(
'capivara',
'test',
'127.0.0.1',
'5432',
'green_eyes')
userRep = UserRepository(
'capivara',
'test',
'127.0.0.1',
'5432',
'green_eyes')
plantModelTest = models.Plant.Plant(
24,
'Lycopersicum esculentum',
'Tomato')
diseaseModelTest = models.Disease.Disease(
53,
plantModelTest,
'<i>Alternaria solani</i>',
'Early blight')
imageModelTest = models.Image.Image(
1,
diseaseModelTest,
'test',
'',
'',
1)
# already exists a classifier with id 1 in the database
classifierModelTest = models.Classifier.Classifier(
1,
plantModelTest,
'1',
'gykernel/saved_models')
# already exists an analysis with id 1 in the database
analysisModelTest = models.Analysis.Analysis(
id=1,
image=imageModelTest,
classifier=classifierModelTest,
user=userRep.create(models.User.User(id=0)))
analysisResultModelTest = models.AnalysisResult.AnalysisResult(
1,
analysisRep.create(analysisModelTest),
diseaseModelTest,
0.98,
'100,100,128,128')
def test_insert():
assert analysisResultRep.create(analysisResultModelTest).score == 0.98
def test_search_by_id():
analysisResult = analysisResultRep.searchByID(1)
assert analysisResult.score == 0.98
def test_search():
analysisResults = analysisResultRep.search(analysisResultModelTest)
print('return {0} lines'.format(analysisResults['total']))
assert analysisResults['content'][0].score == 0.98
def test_update():
analysisResultModelTest.score = 0.87
analysisResult = analysisResultRep.update(analysisResultModelTest)
assert analysisResult.score == 0.87
def test_delete():
result = analysisResultRep.delete(analysisResultModelTest)
assert result
def test_insert_list():
r1 = analysisResultModelTest
r2 = analysisResultModelTest
r1.score = 20
r2.score = 30
r1.id = None
r2.id = None
assert analysisResultRep.create_using_list([r1, r2])