Passed
Push — master ( 70457d...6d3d31 )
by Maksim
04:43
created

DebugBarExceptedOptionTest   A

Complexity

Total Complexity 5

Size/Duplication

Total Lines 53
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
wmc 5
eloc 23
dl 0
loc 53
rs 10
c 0
b 0
f 0

5 Methods

Rating   Name   Duplication   Size   Complexity  
A validateExcludedPage() 0 5 1
A getPackageProviders() 0 3 1
A validateExcludedPageWithSlash() 0 5 1
A getEnvironmentSetUp() 0 13 1
A validateIncludedPage() 0 5 1
1
<?php
2
3
namespace MaksimM\ConditionalDebugBar\Tests;
4
5
use Barryvdh\Debugbar\ServiceProvider;
6
use MaksimM\ConditionalDebugBar\ConditionalDebugBarServiceProvider;
7
use MaksimM\ConditionalDebugBar\DebugModeBootValidators\TestingDebugBarBootValidator;
8
use MaksimM\ConditionalDebugBar\Http\Middleware\OptionalDebugBar;
9
use Orchestra\Testbench\BrowserKit\TestCase;
10
11
class DebugBarExceptedOptionTest extends TestCase
12
{
13
    private $blank_page = '<html xmlns="http://www.w3.org/1999/html"><head></head><body</body</html>';
14
15
    /** @test */
16
    public function validateExcludedPage()
17
    {
18
        $crawler = $this->call('GET', 'excluded/page');
19
        $this->assertEquals($this->blank_page, $crawler->getContent());
20
        $this->assertNotContains('PhpDebugBar.DebugBar', $crawler->getContent());
21
    }
22
23
    /** @test */
24
    public function validateExcludedPageWithSlash()
25
    {
26
        $crawler = $this->call('GET', '/excluded/another-page');
27
        $this->assertEquals($this->blank_page, $crawler->getContent());
28
        $this->assertNotContains('PhpDebugBar.DebugBar', $crawler->getContent());
29
    }
30
31
    /** @test */
32
    public function validateIncludedPage()
33
    {
34
        $crawler = $this->call('GET', 'included/page');
35
        $this->assertNotEquals($this->blank_page, $crawler->getContent());
36
        $this->assertContains('PhpDebugBar.DebugBar', $crawler->getContent());
37
    }
38
39
    protected function getPackageProviders($app)
0 ignored issues
show
Unused Code introduced by
The parameter $app is not used and could be removed. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-unused  annotation

39
    protected function getPackageProviders(/** @scrutinizer ignore-unused */ $app)

This check looks for parameters that have been defined for a function or method, but which are not used in the method body.

Loading history...
40
    {
41
        return [ServiceProvider::class, ConditionalDebugBarServiceProvider::class];
42
    }
43
44
    /**
45
     * Define environment setup.
46
     *
47
     * @param Illuminate\Foundation\Application $app
0 ignored issues
show
Bug introduced by
The type MaksimM\ConditionalDebug...\Foundation\Application was not found. Did you mean Illuminate\Foundation\Application? If so, make sure to prefix the type with \.
Loading history...
48
     *
49
     * @return void
50
     */
51
    protected function getEnvironmentSetUp($app)
52
    {
53
        $app['config']->set('conditional-debugbar.debugbar-boot-validator', TestingDebugBarBootValidator::class);
54
        $app['config']->set('debugbar.except', ['excluded/*']);
55
        $app['router']->get('excluded/page', ['uses' => function () {
56
            return $this->blank_page;
57
        }])->middleware(OptionalDebugBar::class);
58
        $app['router']->get('/excluded/another-page', ['uses' => function () {
59
            return $this->blank_page;
60
        }])->middleware(OptionalDebugBar::class);
61
        $app['router']->get('included/page', ['uses' => function () {
62
            return $this->blank_page;
63
        }])->middleware(OptionalDebugBar::class);
64
    }
65
}
66