1
|
|
|
|
2
|
|
|
import apoor |
3
|
|
|
import pytest |
4
|
|
|
|
5
|
|
|
|
6
|
|
|
def test_make_scale(): |
7
|
|
|
assert apoor.make_scale(0,1,0,10)(0.1) == 1 |
8
|
|
|
assert apoor.make_scale(10,0,0,1)(9) == 0.1 |
9
|
|
|
assert apoor.make_scale(0,1,0,1,True)(-1) == 0 |
10
|
|
|
assert apoor.make_scale(0,1,0,10,True)(11) == 10 |
11
|
|
|
|
12
|
|
|
def test_set_seed(): |
13
|
|
|
np = apoor.np |
14
|
|
|
n = 0 |
15
|
|
|
apoor.set_seed(n) |
16
|
|
|
a = np.random.random() |
17
|
|
|
assert a != np.random.random() or a != np.random.random() |
18
|
|
|
apoor.set_seed(n) |
19
|
|
|
b = np.random.random() |
20
|
|
|
assert a == b |
21
|
|
|
|
22
|
|
|
|
23
|
|
|
def test_train_test_split(): |
24
|
|
|
# Getting started |
25
|
|
|
np = apoor.np |
26
|
|
|
x = np.arange(10) |
27
|
|
|
y = x[::-1] |
28
|
|
|
z = np.arange(0,20,2) |
29
|
|
|
### Test 1 ### |
30
|
|
|
x_train = np.array([2,8,4,9,1,6,7,3,0]) |
31
|
|
|
x_test = np.array([5]) |
32
|
|
|
apoor.set_seed(0) |
33
|
|
|
result = apoor.train_test_split(x) |
34
|
|
|
assert ( |
35
|
|
|
(result[0] == x_train).all() and |
36
|
|
|
(result[1] == x_test).all() |
37
|
|
|
) |
38
|
|
|
### Test 2 ### |
39
|
|
|
y_train = np.array([7,1,5,0,8,3,2,6,9]) |
40
|
|
|
y_test = np.array([4]) |
41
|
|
|
apoor.set_seed(0) |
42
|
|
|
result = apoor.train_test_split(x,y) |
43
|
|
|
assert ( |
44
|
|
|
(result[0] == x_train).all() and |
45
|
|
|
(result[1] == x_test ).all() and |
46
|
|
|
(result[2] == y_train).all() and |
47
|
|
|
(result[3] == y_test ).all() |
48
|
|
|
) |
49
|
|
|
### Test 3 ### |
50
|
|
|
z_train = np.array([4,16,8,18,2,12,14,6,0]) |
51
|
|
|
z_test = np.array([10]) |
52
|
|
|
apoor.set_seed(0) |
53
|
|
|
result = apoor.train_test_split(x,y,z) |
54
|
|
|
assert ( |
55
|
|
|
(result[0] == x_train).all() and |
56
|
|
|
(result[1] == x_test ).all() and |
57
|
|
|
(result[2] == y_train).all() and |
58
|
|
|
(result[3] == y_test ).all() and |
59
|
|
|
(result[4] == z_train).all() and |
60
|
|
|
(result[5] == z_test ).all() |
61
|
|
|
) |
62
|
|
|
|
63
|
|
|
def test_ibuff(): |
64
|
|
|
assert list(apoor.ibuff(range(10))) == \ |
65
|
|
|
[[i] for i in range(10)] |
66
|
|
|
assert list(apoor.ibuff(range(10),2)) == \ |
67
|
|
|
[[i,i+1] for i in range(0,10,2)] |
68
|
|
|
with pytest.raises(TypeError) as e_info: |
69
|
|
|
apoor.ibuff(range(10),1.0) |
70
|
|
|
with pytest.raises(ValueError) as e_info: |
71
|
|
|
apoor.ibuff(range(10),0) |
72
|
|
|
|
73
|
|
|
|
74
|
|
|
|
75
|
|
|
|