EventsRowTest::testGetLabel()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 7
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 7
c 0
b 0
f 0
rs 9.4285
cc 1
eloc 4
nc 1
nop 0
1
<?php
2
3
namespace Spiral\Tests\Statistics\Extract;
4
5
use Spiral\Statistics\Extract\Events\Row;
6
use Spiral\Tests\BaseTest;
7
8
class EventsRowTest extends BaseTest
9
{
10
    public function testGetLabel()
11
    {
12
        $label = 'label';
13
        $row = new Row($label, []);
14
15
        $this->assertSame($label, $row->getLabel());
16
    }
17
18
    public function testGetEvents()
19
    {
20
        $label = 'label';
21
        $row = new Row($label, []);
22
23
        $this->assertSame([], $row->getEvents());
24
25
        $label = 'label';
26
        $row = new Row($label, ['event 1', 'event 2']);
27
28
        $this->assertSame(['event 1' => 0, 'event 2' => 0], $row->getEvents());
29
    }
30
31
    /**
32
     * @expectedException \Spiral\Statistics\Exceptions\InvalidExtractEventException
33
     */
34
    public function testAddUnknownEvent()
35
    {
36
        $label = 'label';
37
        $row = new Row($label, []);
38
39
        $this->assertSame([], $row->getEvents());
40
41
        $row->addEvent('some-event', 1);
42
    }
43
44
    public function testAddEvent()
45
    {
46
        $label = 'label';
47
        $row = new Row($label, ['event 1', 'event 2']);
48
49
        $this->assertSame(['event 1' => 0, 'event 2' => 0], $row->getEvents());
50
51
        $row->addEvent('event 1', 1.1);
52
        $row->addEvent('event 2', 2.2);
53
        $row->addEvent('event 1', 3.3);
54
55
        $this->assertArrayHasKey('event 1', $row->getEvents());
56
        $this->assertArrayHasKey('event 2', $row->getEvents());
57
58
        $this->assertCount(2, $row->getEvents());
59
60
        $this->assertSame(4.4, $row->getEvents()['event 1']);
61
        $this->assertSame(2.2, $row->getEvents()['event 2']);
62
    }
63
}