summaryrefslogtreecommitdiff
path: root/_test/tests/test/globals.test.php
blob: 180fd0d0d77f53be676aadc43ac0724c7063a957 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<?php

/**
 * @group integration
 */
class InttestsGlobalsTest extends DokuWikiTest {

    /**
     * every request should be with its own variables
     */
    function testFirstRun() {
        global $EVENT_HANDLER;

        $request = new TestRequest();
        $request->setServer('testvar', true);

        $self = $this;
        $EVENT_HANDLER->register_hook('TPL_CONTENT_DISPLAY', 'AFTER', null,
            function() use ($self) {
                $self->assertTrue($_SERVER['testvar'], 'Server variable not set correctly: testvar');
                $self->assertEquals('87.142.120.6', $_SERVER['REMOTE_ADDR'], 'Server variable not set correctly: REMOTE_ADDR');
                $_SERVER['tmpvar'] = true;
            }
        );

        $request->execute();
    }

    /**
     * @depends testFirstRun
     */
    function testSecondRun() {
        global $EVENT_HANDLER;

        $request = new TestRequest();
        $request->setServer('testvar', false);

        $self = $this;
        $EVENT_HANDLER->register_hook('TPL_CONTENT_DISPLAY', 'AFTER', null,
            function() use ($self) {
                $self->assertFalse($_SERVER['testvar'], 'Server variable not set correctly: testvar');
                $self->assertEquals('87.142.120.6', $_SERVER['REMOTE_ADDR'], 'Server variable not set correctly: REMOTE_ADDR');
                $self->assertFalse(isset($_SERVER['tmpvar']));
            }
        );

        $request->execute();
    }
}