Passed
Push — master ( 723823...a4cb74 )
by Simon
04:20
created

test_random_state_2()   A

Complexity

Conditions 1

Size

Total Lines 17
Code Lines 13

Duplication

Lines 17
Ratio 100 %

Importance

Changes 0
Metric Value
cc 1
eloc 13
nop 1
dl 17
loc 17
rs 9.75
c 0
b 0
f 0
1
import pytest
2
import time
3
import numpy as np
4
import pandas as pd
5
6
7
from ._parametrize import optimizers
8
9
10
def objective_function(para):
11
    score = -(para["x1"] * para["x1"] + para["x2"] * para["x2"])
12
    return score
13
14
15
search_space = {
16
    "x1": np.arange(-20, 200, 1),
17
    "x2": np.arange(-20, 200, 1),
18
}
19
20
err = 0.001
21
22
n_iter = 5
23
24
25 View Code Duplication
@pytest.mark.parametrize(*optimizers)
0 ignored issues
show
Duplication introduced by
This code seems to be duplicated in your project.
Loading history...
26
def test_random_state_0(Optimizer):
27
    opt0 = Optimizer(search_space, initialize={"random": 1})
28
    opt0.search(
29
        objective_function,
30
        n_iter=n_iter,
31
        random_state=1,
32
    )
33
34
    opt1 = Optimizer(search_space, initialize={"random": 1})
35
    opt1.search(
36
        objective_function,
37
        n_iter=n_iter,
38
        random_state=1,
39
    )
40
41
    assert abs(opt0.best_score - opt1.best_score) < err
42
43
44 View Code Duplication
@pytest.mark.parametrize(*optimizers)
0 ignored issues
show
Duplication introduced by
This code seems to be duplicated in your project.
Loading history...
45
def test_random_state_1(Optimizer):
46
    opt0 = Optimizer(search_space, initialize={"random": 1})
47
    opt0.search(
48
        objective_function,
49
        n_iter=n_iter,
50
        random_state=10,
51
    )
52
53
    opt1 = Optimizer(search_space, initialize={"random": 1})
54
    opt1.search(
55
        objective_function,
56
        n_iter=n_iter,
57
        random_state=10,
58
    )
59
60
    assert abs(opt0.best_score - opt1.best_score) < err
61
62
63 View Code Duplication
@pytest.mark.parametrize(*optimizers)
0 ignored issues
show
Duplication introduced by
This code seems to be duplicated in your project.
Loading history...
64
def test_random_state_2(Optimizer):
65
    opt0 = Optimizer(search_space, initialize={"random": 1})
66
    opt0.search(
67
        objective_function,
68
        n_iter=n_iter,
69
        random_state=1,
70
    )
71
72
    opt1 = Optimizer(search_space, initialize={"random": 1})
73
    opt1.search(
74
        objective_function,
75
        n_iter=n_iter,
76
        random_state=10,
77
    )
78
79
    assert abs(opt0.best_score - opt1.best_score) > err
80
81
82
@pytest.mark.parametrize(*optimizers)
83
def test_no_random_state_0(Optimizer):
84
    opt0 = Optimizer(search_space, initialize={"random": 1})
85
    opt0.search(objective_function, n_iter=n_iter)
86
87
    opt1 = Optimizer(search_space, initialize={"random": 1})
88
    opt1.search(objective_function, n_iter=n_iter)
89
90
    assert abs(opt0.best_score - opt1.best_score) > err
91