endtoend-test-psl/tests/Psl/Math/MeanTest.php

90 lines
1.7 KiB
PHP
Raw Normal View History

2019-12-24 01:52:07 +01:00
<?php
declare(strict_types=1);
namespace Psl\Tests\Math;
use PHPUnit\Framework\TestCase;
2019-12-26 21:03:29 +01:00
use Psl\Arr;
use Psl\Iter;
use Psl\Math;
2019-12-24 01:52:07 +01:00
class MeanTest extends TestCase
{
2019-12-26 21:03:29 +01:00
/**
* @dataProvider provideData
*/
2020-08-27 16:44:22 +02:00
public function testMean($expected, array $numbers): void
2019-12-26 21:03:29 +01:00
{
self::assertSame($expected, Math\mean($numbers));
}
public function provideData(): array
{
return [
[
5.0,
[
10,
5,
2020-08-27 16:44:22 +02:00
0,
2,
4,
6,
8,
2019-12-26 21:03:29 +01:00
],
],
[
7.357142857142858,
[
18,
15,
2020-08-27 16:44:22 +02:00
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
2019-12-26 21:03:29 +01:00
15,
],
],
[
26.785714285714285,
[
19,
15,
2020-08-27 16:44:22 +02:00
0,
5,
10,
15,
20,
25,
30,
35,
40,
45,
2019-12-26 21:03:29 +01:00
52,
64,
],
],
[
100.0,
Arr\fill(100, 0, 100)
],
[
null,
[]
]
];
}
2019-12-24 01:52:07 +01:00
}