Passed
Push — master ( 7d2c3d...b4b259 )
by Simon
01:56 queued 11s
created

test_streamlit_backend_5()   A

Complexity

Conditions 1

Size

Total Lines 12
Code Lines 8

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 8
nop 0
dl 0
loc 12
rs 10
c 0
b 0
f 0
1
import os
2
import numpy as np
3
import pandas as pd
4
from hyperactive import Hyperactive
5
from hyperactive.dashboards import ProgressBoard
6
from hyperactive.dashboards.progress_board.streamlit_backend import StreamlitBackend
7
from hyperactive.dashboards.progress_board.progress_io import ProgressIO
8
9
10
def test_progress_io_0():
11
    search_id = "test_model"
12
13
    _io_ = ProgressIO("./")
14
    _io_.get_filter_file_path(search_id)
15
16
17
def test_progress_io_1():
18
    search_id = "test_model"
19
20
    _io_ = ProgressIO("./")
21
    _io_.get_progress_data_path(search_id)
22
23
24
def test_progress_io_2():
25
    search_id = "test_model"
26
27
    _io_ = ProgressIO("./")
28
    _io_.remove_filter(search_id)
29
    filter_ = _io_.load_filter(search_id)
30
31
    assert filter_ is None
32
33
34
def test_progress_io_3():
35
    search_id = "test_model"
36
37
    _io_ = ProgressIO("./")
38
    _io_.remove_progress(search_id)
39
    progress_ = _io_.load_progress(search_id)
40
41
    assert progress_ is None
42
43
44
def test_progress_io_4():
45
    search_id = "test_model"
46
47
    search_space = {
48
        "x1": np.arange(-100, 101, 1),
49
    }
50
51
    _io_ = ProgressIO("./")
52
    _io_.remove_progress(search_id)
53
    _io_.create_filter(search_id, search_space)
54
55
    progress_ = _io_.load_filter(search_id)
56
57
    assert progress_ is not None
58
59
60
def test_filter_data_0():
61
    search_id1 = "test_model1"
62
    search_id2 = "test_model2"
63
    search_id3 = "test_model3"
64
    search_ids = [search_id1, search_id2, search_id3]
65
66
    def objective_function(opt):
67
        score = -opt["x1"] * opt["x1"]
68
        return score
69
70
    search_space = {
71
        "x1": np.arange(-100, 101, 1),
72
    }
73
74
    hyper = Hyperactive()
75
    hyper.add_search(objective_function, search_space, n_iter=200)
76
    hyper.run()
77
    search_data = hyper.results(objective_function)
78
79
    indices = list(search_space.keys()) + ["score"]
80
    filter_dict = {
81
        "parameter": indices,
82
        "lower bound": "---",
83
        "upper bound": "---",
84
    }
85
    filter_df = pd.DataFrame(filter_dict)
86
    threshold = -1000
87
    filter_df["lower bound"].iloc[1] = threshold
88
89
    board = StreamlitBackend(search_ids)
90
    progress_data = board.filter_data(search_data, filter_df)
91
92
    assert not np.all(search_data["score"].values >= threshold)
93
    assert np.all(progress_data["score"].values >= threshold)
94
95
96
def test_streamlit_backend_0():
97
    search_id1 = "test_model1"
98
    search_id2 = "test_model2"
99
    search_id3 = "test_model3"
100
101
    search_ids = [search_id1, search_id2, search_id3]
102
103
    board = StreamlitBackend(search_ids)
104
    progress_data = board.get_progress_data(search_id1)
105
106
    assert progress_data is None
107
108
109 View Code Duplication
def test_streamlit_backend_1():
0 ignored issues
show
Duplication introduced by
This code seems to be duplicated in your project.
Loading history...
110
    search_id1 = "test_model1"
111
    search_id2 = "test_model2"
112
    search_id3 = "test_model3"
113
114
    search_ids = [search_id1, search_id2, search_id3]
115
116
    board = StreamlitBackend(search_ids)
117
118
    def objective_function(opt):
119
        score = -opt["x1"] * opt["x1"]
120
        return score
121
122
    search_space = {
123
        "x1": np.arange(-100, 101, 1),
124
    }
125
126
    hyper = Hyperactive()
127
    hyper.add_search(objective_function, search_space, n_iter=200)
128
    hyper.run()
129
    search_data = hyper.results(objective_function)
130
    search_data["nth_iter"] = 0
131
    search_data["score_best"] = 0
132
    search_data["nth_process"] = 0
133
134
    pyplot_fig = board.pyplot(search_data)
135
136
    assert pyplot_fig is not None
137
138
139 View Code Duplication
def test_streamlit_backend_2():
0 ignored issues
show
Duplication introduced by
This code seems to be duplicated in your project.
Loading history...
140
    search_id1 = "test_model1"
141
    search_id2 = "test_model2"
142
    search_id3 = "test_model3"
143
144
    search_ids = [search_id1, search_id2, search_id3]
145
146
    board = StreamlitBackend(search_ids)
147
148
    def objective_function(opt):
149
        score = -opt["x1"] * opt["x1"]
150
        return score
151
152
    search_space = {
153
        "x1": np.arange(-100, 101, 1),
154
    }
155
156
    hyper = Hyperactive()
157
    hyper.add_search(objective_function, search_space, n_iter=200)
158
    hyper.run()
159
    search_data = hyper.results(objective_function)
160
    search_data["nth_iter"] = 0
161
    search_data["score_best"] = 0
162
    search_data["nth_process"] = 0
163
    search_data["best"] = 0
164
165
    plotly_fig = board.plotly(search_data, search_id1)
166
167
    assert plotly_fig is not None
168
169
170
def test_streamlit_backend_3():
171
    search_id1 = "test_model1"
172
    search_id2 = "test_model2"
173
    search_id3 = "test_model3"
174
175
    search_ids = [search_id1, search_id2, search_id3]
176
177
    board = StreamlitBackend(search_ids)
178
179
    df_empty = pd.DataFrame()
180
181
    board.pyplot(df_empty)
182
183
184
def test_streamlit_backend_4():
185
    search_id1 = "test_model1"
186
    search_id2 = "test_model2"
187
    search_id3 = "test_model3"
188
189
    search_ids = [search_id1, search_id2, search_id3]
190
191
    board = StreamlitBackend(search_ids)
192
193
    df_empty = pd.DataFrame([], columns=["nth_iter", "score_best", "nth_process"])
194
195
    board.pyplot(df_empty)
196
197
198
def test_streamlit_backend_5():
199
    search_id1 = "test_model1"
200
    search_id2 = "test_model2"
201
    search_id3 = "test_model3"
202
203
    search_ids = [search_id1, search_id2, search_id3]
204
205
    board = StreamlitBackend(search_ids)
206
207
    df_empty = pd.DataFrame()
208
209
    board.plotly(df_empty, search_id1)
210
211
212
def test_streamlit_backend_6():
213
    search_id1 = "test_model1"
214
    search_id2 = "test_model2"
215
    search_id3 = "test_model3"
216
217
    search_ids = [search_id1, search_id2, search_id3]
218
219
    board = StreamlitBackend(search_ids)
220
221
    df_empty = pd.DataFrame([], columns=["nth_iter", "score_best", "nth_process"])
222
223
    board.plotly(df_empty, search_id1)
224