Passed
Push — main ( 40d4d0...b1f2dd )
by N.
05:04
created

matriserTest   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 98
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 78
dl 0
loc 98
rs 10
c 0
b 0
f 0
wmc 1
1
<?php
2
3
/**
4
 * matriserTest.
5
 * @author Niklas Dougherty
6
 */
7
8
declare(strict_types=1);
9
10
namespace Tips\Tests\Funktioner;
11
12
use PHPUnit\Framework\TestCase;
13
use Tips\Klasser\Preludium;
14
15
/**
16
 * matriserTest.
17
 */
18
class matriserTest extends TestCase
19
{
20
	/**
21
	 * Construct object with argument and verify that the object has the expected properties.
22
	 */
23
	public function testCreateObject(): void
24
	{
25
		new Preludium();
26
27
		$odds = [
28
			[3.3, 3.6, 2.15],
29
			[2.2, 3.65, 2.55],
30
			[1.79, 4.35, 4.76],
31
			[1.74, 3.9, 3.65],
32
			[1.45, 4.4, 5.4],
33
			[2.25, 3.25, 3],
34
			[4.1, 3.45, 1.81],
35
			[7, 4.75, 1.36],
36
			[1.48, 4.6, 5.1],
37
			[1.28, 5.6, 10],
38
			[1.42, 4.75, 6.5],
39
			[4.5, 4.1, 1.67],
40
			[1.33, 5.2, 8.5]
41
		];
42
43
		$sannolikheter = [
44
			[0.28972487366647953, 0.26558113419427287, 0.4446939921392476],
45
			[0.40559973853360926, 0.2444710752805316, 0.349929186185859],
46
			[0.5594265783010788, 0.23020082187561636, 0.21037259982330483],
47
			[0.5200569925471284, 0.2320254274441035, 0.2479175800087681],
48
			[0.625757176718462, 0.20621543323676586, 0.16802739004477218],
49
			[0.4094488188976378, 0.2834645669291339, 0.30708661417322836],
50
			[0.22453749483108898, 0.26684166052390285, 0.5086208446450081],
51
			[0.13122080032500508, 0.19337802153158642, 0.6754011781434085],
52
			[0.6203723291728369, 0.19959805373386927, 0.18002961709329388],
53
			[0.7371524852569502, 0.16849199663016004, 0.09435551811288963],
54
			[0.6590181430096052, 0.19701173959445034, 0.1439701173959445],
55
			[0.20867365597951965, 0.22903206144093624, 0.5622942825795441],
56
			[0.7080950321206004, 0.1811089216769997, 0.11079604620239984]
57
		];
58
59
		$this->assertEquals(odds_till_sannolikheter($odds), $sannolikheter);
60
61
		$streck = [
62
			[30, 27, 43],
63
			[44, 27, 29],
64
			[59, 23, 18],
65
			[43, 25, 32],
66
			[70, 17, 13],
67
			[47, 27, 26],
68
			[27, 28, 45],
69
			[18, 21, 61],
70
			[55, 24, 21],
71
			[75, 15, 10],
72
			[69, 19, 12],
73
			[26, 29, 45],
74
			[76, 15, 9]
75
		];
76
77
		$streck_sannolikheter = [
78
			[0.3, 0.27, 0.43],
79
			[0.44, 0.27, 0.29],
80
			[0.59, 0.23, 0.18],
81
			[0.43, 0.25, 0.32],
82
			[0.7, 0.17, 0.13],
83
			[0.47, 0.27, 0.26],
84
			[0.27, 0.28, 0.45],
85
			[0.18, 0.21, 0.61],
86
			[0.55, 0.24, 0.21],
87
			[0.75, 0.15, 0.1],
88
			[0.69, 0.19, 0.12],
89
			[0.26, 0.29, 0.45],
90
			[0.76, 0.15, 0.09]
91
		];
92
93
		$this->assertEquals(streck_till_sannolikheter($streck), $streck_sannolikheter);
94
95
		$streckodds = [
96
			[3.3333333333333335, 3.7037037037037033, 2.3255813953488373],
97
			[2.272727272727273, 3.7037037037037033, 3.4482758620689657],
98
			[1.6949152542372883, 4.3478260869565215, 5.555555555555555],
99
			[2.3255813953488373, 4.0, 3.125],
100
			[1.4285714285714286, 5.88235294117647, 7.692307692307692],
101
			[2.127659574468085, 3.7037037037037033, 3.846153846153846],
102
			[3.7037037037037033, 3.571428571428571, 2.2222222222222223],
103
			[5.555555555555555, 4.761904761904762, 1.639344262295082],
104
			[1.8181818181818181, 4.166666666666667, 4.761904761904762],
105
			[1.3333333333333333, 6.666666666666667, 10.0],
106
			[1.4492753623188408, 5.2631578947368425, 8.333333333333334],
107
			[3.846153846153846, 3.4482758620689657, 2.2222222222222223],
108
			[1.3157894736842106, 6.666666666666667, 11.11111111111111]
109
		];
110
111
		$this->assertEquals(sannolikheter_till_odds($streck_sannolikheter), $streckodds);
112
113
		$this->assertEquals(
114
			formatera_sannolikheter(odds_till_sannolikheter($streckodds)),
115
			formatera_sannolikheter($streck_sannolikheter)
116
		);
117
	}
118
}
119