StatisticsRequestTest   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 32
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 1
Metric Value
eloc 11
c 1
b 0
f 1
dl 0
loc 32
rs 10
wmc 2

2 Methods

Rating   Name   Duplication   Size   Complexity  
A testConstructor() 0 8 1
A testTimeFrame() 0 9 1
1
<?php
2
3
namespace Jalle19\StatusManager\Test\Message\Request;
4
5
use Jalle19\StatusManager\Exception\MalformedRequestException;
6
use Jalle19\StatusManager\Message\Request\PopularChannelsRequest;
7
use Jalle19\StatusManager\TimeFrame;
8
use PHPUnit\Framework\TestCase;
9
10
/**
11
 * Class StatisticsRequestTest
12
 * @package   Jalle19\StatusManager\Test\Message\Request
13
 * @copyright Copyright &copy; Sam Stenvall 2016-
14
 * @license   https://www.gnu.org/licenses/gpl.html The GNU General Public License v2.0
15
 */
16
class StatisticsRequestTest extends TestCase
17
{
18
19
	/**
20
	 * Tests that the constructor validation is working (instance name must be defined)
21
	 *
22
	 *
23
	 *
24
	 */
25
	public function testConstructor()
26
	{
27
		$this->expectExceptionMessageMatches("*instanceName*");
28
		$this->expectException(MalformedRequestException::class);
29
		$parameters            = new \stdClass();
30
		$parameters->timeFrame = TimeFrame::TIME_FRAME_ALL_TIME;
31
32
		new PopularChannelsRequest($parameters);
33
	}
34
35
36
	/**
37
	 *
38
	 */
39
	public function testTimeFrame()
40
	{
41
		$parameters               = new \stdClass();
42
		$parameters->instanceName = 'foo';
43
		$parameters->timeFrame    = TimeFrame::TIME_FRAME_ALL_TIME;
44
45
		$request = new PopularChannelsRequest($parameters);
46
47
		$this->assertEquals(TimeFrame::TIME_FRAME_ALL_TIME, $request->getTimeFrame()->getType());
48
	}
49
50
}
51