Completed
Pull Request — master (#164)
by Alexander
01:56
created

SessionTest::testAlreadyStartedException()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 5
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 3
c 1
b 0
f 0
nc 1
nop 0
dl 0
loc 5
rs 10
1
<?php
2
3
namespace Yiisoft\Yii\Web\Tests\Session;
4
5
use Yiisoft\Yii\Web\Session\Session;
6
use PHPUnit\Framework\TestCase;
7
8
class SessionTest extends TestCase
9
{
10
    public function testGetAndSet(): void
11
    {
12
        $session = new Session();
13
        $session->set('key_get', 'value');
14
        self::assertEquals('value', $session->get('key_get'));
15
        $session->discard();
16
    }
17
18
    public function testHas(): void
19
    {
20
        $session = new Session();
21
        $session->set('key_has', 'value');
22
        self::assertTrue($session->has('key_has'));
23
        $session->discard();
24
    }
25
26
    public function testClose(): void
27
    {
28
        $session = new Session();
29
        $session->set('key_close', 'value');
30
        $session->close();
31
        self::assertEquals(PHP_SESSION_NONE, session_status());
32
    }
33
34
    public function testRegenerateID(): void
35
    {
36
        $session = new Session();
37
        $session->open();
38
        $id = $session->getId();
39
        $session->regenerateId();
40
        self::assertNotEquals($id, $session->getId());
41
        $session->discard();
42
    }
43
44
    public function testDiscard(): void
45
    {
46
        $session = new Session();
47
        $session->set('key_discard', 'value');
48
        $session->discard();
49
        self::assertEmpty($session->get('key_discard'));
50
        $session->discard();
51
    }
52
53
    public function testGetName(): void
54
    {
55
        $session = new Session();
56
        self::assertEquals($session->getName(), session_name());
57
        $session->discard();
58
    }
59
60
    public function testPull(): void
61
    {
62
        $session = new Session();
63
        $session->set('key_pull', 'value');
64
        self::assertEquals('value', $session->pull('key_pull'));
65
        self::assertEmpty($session->get('key_pull'));
66
        $session->discard();
67
    }
68
69
    public function testAll(): void
70
    {
71
        $session = new Session();
72
        $session->set('key_1', 1);
73
        $session->set('key_2', 2);
74
        self::assertEquals(['key_1' => 1, 'key_2' => 2], $session->all());
75
        $session->discard();
76
    }
77
78
    public function testClear(): void
79
    {
80
        $session = new Session();
81
        $session->set('key', 'value');
82
        $session->clear();
83
        self::assertEmpty($session->all());
84
        $session->discard();
85
    }
86
87
    public function testSetId(): void
88
    {
89
        $session = new Session();
90
        $session->setId('sessionId');
91
        $session->open();
92
        self::assertEquals(session_id(), $session->getId());
93
        $session->discard();
94
    }
95
96
    public function testGetCookieParameters(): void
97
    {
98
        $session = new Session();
99
        self::assertEquals(session_get_cookie_params(), $session->getCookieParameters());
100
    }
101
}
102