StatisticsRequestTest::testConstructor()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 8
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 1
Metric Value
cc 1
eloc 5
c 1
b 0
f 1
nc 1
nop 0
dl 0
loc 8
rs 10
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