Completed
Branch develop (b42baf)
by Adrien
11:23
created

FunctionsTest::providerIsNumber()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 2
c 1
b 0
f 0
nc 1
nop 0
dl 0
loc 4
rs 10
1
<?php
2
3
namespace PhpSpreadsheetTests\Calculation;
4
5
use PhpSpreadsheet\Calculation\Functions;
6
7
class FunctionsTest extends \PHPUnit_Framework_TestCase
8
{
9
    public function setUp()
10
    {
11
        Functions::setCompatibilityMode(Functions::COMPATIBILITY_EXCEL);
12
    }
13
14
    public function testDUMMY()
15
    {
16
        $result = Functions::DUMMY();
17
        $this->assertEquals('#Not Yet Implemented', $result);
18
    }
19
20
    public function testDIV0()
21
    {
22
        $result = Functions::DIV0();
23
        $this->assertEquals('#DIV/0!', $result);
24
    }
25
26
    public function testNA()
27
    {
28
        $result = Functions::NA();
29
        $this->assertEquals('#N/A', $result);
30
    }
31
32
    public function testNAN()
33
    {
34
        $result = Functions::NAN();
35
        $this->assertEquals('#NUM!', $result);
36
    }
37
38
    public function testNAME()
39
    {
40
        $result = Functions::NAME();
41
        $this->assertEquals('#NAME?', $result);
42
    }
43
44
    public function testREF()
45
    {
46
        $result = Functions::REF();
47
        $this->assertEquals('#REF!', $result);
48
    }
49
50
    public function testNULL()
51
    {
52
        $result = Functions::null();
53
        $this->assertEquals('#NULL!', $result);
54
    }
55
56
    public function testVALUE()
57
    {
58
        $result = Functions::VALUE();
59
        $this->assertEquals('#VALUE!', $result);
60
    }
61
62
    /**
63
     * @dataProvider providerIsBlank
64
     */
65
    public function testIsBlank()
66
    {
67
        $args = func_get_args();
68
        $expectedResult = array_pop($args);
69
        $result = call_user_func_array([Functions::class, 'isBlank'], $args);
70
        $this->assertEquals($expectedResult, $result, null, 1E-8);
71
    }
72
73
    public function providerIsBlank()
74
    {
75
        return require 'data/Calculation/Functions/IS_BLANK.php';
76
    }
77
78
    /**
79
     * @dataProvider providerIsErr
80
     */
81
    public function testIsErr()
82
    {
83
        $args = func_get_args();
84
        $expectedResult = array_pop($args);
85
        $result = call_user_func_array([Functions::class, 'isErr'], $args);
86
        $this->assertEquals($expectedResult, $result, null, 1E-8);
87
    }
88
89
    public function providerIsErr()
90
    {
91
        return require 'data/Calculation/Functions/IS_ERR.php';
92
    }
93
94
    /**
95
     * @dataProvider providerIsError
96
     */
97
    public function testIsError()
98
    {
99
        $args = func_get_args();
100
        $expectedResult = array_pop($args);
101
        $result = call_user_func_array([Functions::class, 'isError'], $args);
102
        $this->assertEquals($expectedResult, $result, null, 1E-8);
103
    }
104
105
    public function providerIsError()
106
    {
107
        return require 'data/Calculation/Functions/IS_ERROR.php';
108
    }
109
110
    /**
111
     * @dataProvider providerErrorType
112
     */
113
    public function testErrorType()
114
    {
115
        $args = func_get_args();
116
        $expectedResult = array_pop($args);
117
        $result = call_user_func_array([Functions::class, 'errorType'], $args);
118
        $this->assertEquals($expectedResult, $result, null, 1E-8);
119
    }
120
121
    public function providerErrorType()
122
    {
123
        return require 'data/Calculation/Functions/ERROR_TYPE.php';
124
    }
125
126
    /**
127
     * @dataProvider providerIsLogical
128
     */
129
    public function testIsLogical()
130
    {
131
        $args = func_get_args();
132
        $expectedResult = array_pop($args);
133
        $result = call_user_func_array([Functions::class, 'isLogical'], $args);
134
        $this->assertEquals($expectedResult, $result, null, 1E-8);
135
    }
136
137
    public function providerIsLogical()
138
    {
139
        return require 'data/Calculation/Functions/IS_LOGICAL.php';
140
    }
141
142
    /**
143
     * @dataProvider providerIsNa
144
     */
145
    public function testIsNa()
146
    {
147
        $args = func_get_args();
148
        $expectedResult = array_pop($args);
149
        $result = call_user_func_array([Functions::class, 'isNa'], $args);
150
        $this->assertEquals($expectedResult, $result, null, 1E-8);
151
    }
152
153
    public function providerIsNa()
154
    {
155
        return require 'data/Calculation/Functions/IS_NA.php';
156
    }
157
158
    /**
159
     * @dataProvider providerIsNumber
160
     */
161
    public function testIsNumber()
162
    {
163
        $args = func_get_args();
164
        $expectedResult = array_pop($args);
165
        $result = call_user_func_array([Functions::class, 'isNumber'], $args);
166
        $this->assertEquals($expectedResult, $result, null, 1E-8);
167
    }
168
169
    public function providerIsNumber()
170
    {
171
        return require 'data/Calculation/Functions/IS_NUMBER.php';
172
    }
173
174
    /**
175
     * @dataProvider providerIsText
176
     */
177
    public function testIsText()
178
    {
179
        $args = func_get_args();
180
        $expectedResult = array_pop($args);
181
        $result = call_user_func_array([Functions::class, 'isText'], $args);
182
        $this->assertEquals($expectedResult, $result, null, 1E-8);
183
    }
184
185
    public function providerIsText()
186
    {
187
        return require 'data/Calculation/Functions/IS_TEXT.php';
188
    }
189
190
    /**
191
     * @dataProvider providerIsNonText
192
     */
193
    public function testIsNonText()
194
    {
195
        $args = func_get_args();
196
        $expectedResult = array_pop($args);
197
        $result = call_user_func_array([Functions::class, 'isNonText'], $args);
198
        $this->assertEquals($expectedResult, $result, null, 1E-8);
199
    }
200
201
    public function providerIsNonText()
202
    {
203
        return require 'data/Calculation/Functions/IS_NONTEXT.php';
204
    }
205
206
    /**
207
     * @dataProvider providerIsEven
208
     */
209
    public function testIsEven()
210
    {
211
        $args = func_get_args();
212
        $expectedResult = array_pop($args);
213
        $result = call_user_func_array([Functions::class, 'isEven'], $args);
214
        $this->assertEquals($expectedResult, $result, null, 1E-8);
215
    }
216
217
    public function providerIsEven()
218
    {
219
        return require 'data/Calculation/Functions/IS_EVEN.php';
220
    }
221
222
    /**
223
     * @dataProvider providerIsOdd
224
     */
225
    public function testIsOdd()
226
    {
227
        $args = func_get_args();
228
        $expectedResult = array_pop($args);
229
        $result = call_user_func_array([Functions::class, 'isOdd'], $args);
230
        $this->assertEquals($expectedResult, $result, null, 1E-8);
231
    }
232
233
    public function providerIsOdd()
234
    {
235
        return require 'data/Calculation/Functions/IS_ODD.php';
236
    }
237
238
    /**
239
     * @dataProvider providerTYPE
240
     */
241
    public function testTYPE()
242
    {
243
        $args = func_get_args();
244
        $expectedResult = array_pop($args);
245
        $result = call_user_func_array([Functions::class, 'TYPE'], $args);
246
        $this->assertEquals($expectedResult, $result, null, 1E-8);
247
    }
248
249
    public function providerTYPE()
250
    {
251
        return require 'data/Calculation/Functions/TYPE.php';
252
    }
253
254
    /**
255
     * @dataProvider providerN
256
     */
257
    public function testN()
258
    {
259
        $args = func_get_args();
260
        $expectedResult = array_pop($args);
261
        $result = call_user_func_array([Functions::class, 'n'], $args);
262
        $this->assertEquals($expectedResult, $result, null, 1E-8);
263
    }
264
265
    public function providerN()
266
    {
267
        return require 'data/Calculation/Functions/N.php';
268
    }
269
}
270