Completed
Push — develop ( 242ad3...dfae94 )
by Mathieu
01:47
created

FlashTest   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 52
Duplicated Lines 0 %

Importance

Changes 2
Bugs 1 Features 0
Metric Value
eloc 31
dl 0
loc 52
rs 10
c 2
b 1
f 0
wmc 4

4 Methods

Rating   Name   Duplication   Size   Complexity  
A testReadWithoutSession() 0 5 1
A testData() 0 10 1
A testRenderMessages() 0 13 1
A testReadWithSession() 0 16 1
1
<?php
2
3
use \Suricate\Flash;
4
5
/**
6
 * @SuppressWarnings("StaticAccess")
7
 */
8
class FlashTest extends \PHPUnit\Framework\TestCase
9
{
10
    public function testReadWithoutSession()
11
    {
12
        new \Suricate\Suricate();
13
        $this->expectException(\Exception::class);
14
        Flash::read();
15
    }
16
    
17
    public function testReadWithSession()
18
    {
19
        new \Suricate\Suricate([], './tests/stubs/session.ini');
20
21
        $this->assertEquals(0, count(Flash::getMessages(Flash::TYPE_SUCCESS)));
22
        $this->assertEquals(0, count(Flash::getMessages(Flash::TYPE_INFO)));
23
        $this->assertEquals(0, count(Flash::getMessages(Flash::TYPE_ERROR)));
24
        
25
        Flash::writeMessage(Flash::TYPE_SUCCESS, "OK !");
26
27
        $this->assertEquals(1, count(Flash::getMessages(Flash::TYPE_SUCCESS)));
28
        Flash::writeMessage(Flash::TYPE_SUCCESS, "OK2 !");
29
        Flash::writeMessage(Flash::TYPE_SUCCESS, "OK3 !");
30
        $this->assertEquals(2, count(Flash::getMessages(Flash::TYPE_SUCCESS)));
31
        $this->assertEquals(0, count(Flash::getMessages(Flash::TYPE_SUCCESS)));
32
        $this->assertEquals(0, count(Flash::getMessages(Flash::TYPE_INFO)));
33
    }
34
35
    public function testRenderMessages()
36
    {
37
        new \Suricate\Suricate([], './tests/stubs/session.ini');
38
        Flash::writeMessage(Flash::TYPE_SUCCESS, "OK !");
39
40
        $this->assertEquals('<div class="alert alert-success">OK !</div>', Flash::renderMessages());
41
        $this->assertEquals('', Flash::renderMessages());
42
        Flash::writeMessage(Flash::TYPE_SUCCESS, "OK 1");
43
        Flash::writeMessage(Flash::TYPE_SUCCESS, "OK 2");
44
        $this->assertEquals('<div class="alert alert-success">OK 1<br/>OK 2</div>', Flash::renderMessages());
45
        Flash::writeMessage(Flash::TYPE_SUCCESS, "OK 1");
46
        Flash::writeMessage(Flash::TYPE_INFO, "INFO 2");
47
        $this->assertEquals('<div class="alert alert-success">OK 1</div><div class="alert alert-info">INFO 2</div>', Flash::renderMessages());
48
    }
49
50
    public function testData()
51
    {
52
        new \Suricate\Suricate([], './tests/stubs/session.ini');
53
        $myObj = new \stdClass();
54
        $myObj->property = 1;
55
        $myObj->otherProperty = "1";
56
57
58
        Flash::writeData('myKey', $myObj);
59
        $this->assertEquals($myObj, Flash::getData('myKey'));
60
    }
61
}
62