Completed
Pull Request — master (#31)
by
unknown
19:25
created

SidebarMenu   A

Complexity

Total Complexity 6

Size/Duplication

Total Lines 37
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 2

Importance

Changes 3
Bugs 0 Features 0
Metric Value
wmc 6
c 3
b 0
f 0
lcom 1
cbo 2
dl 0
loc 37
rs 10

3 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 5 1
A ensureContains() 0 12 2
A ensureDoesNotContain() 0 15 3
1
<?php
2
3
namespace hipanel\tests\_support\Page;
4
5
use hipanel\tests\_support\AcceptanceTester;
6
use yii\helpers\Url;
7
8
class SidebarMenu extends Authenticated
9
{
10
    public function __construct(AcceptanceTester $I)
11
    {
12
        parent::__construct($I);
13
        $I->amOnPage(Url::to(['/']));
14
    }
15
16
    public function ensureContains($rootMenuName, $items)
17
    {
18
        $I = $this->tester;
19
20
        $I->click($rootMenuName, '.sidebar-menu');
21
        $I->waitForElement('.menu-open');
22
        foreach ($items as $name => $url) {
23
            $I->see($name, '.menu-open');
24
            $I->seeLink('', Url::to($url));
25
        }
26
        $I->click($rootMenuName, '.sidebar-menu');
27
    }
28
29
    public function ensureDoesNotContain($rootMenuName, $items = null)
30
    {
31
        $I = $this->tester;
32
33
        if ($items === null) {
34
            $I->dontSee($rootMenuName);
35
        } else {
36
            $I->click($rootMenuName, '.sidebar-menu');
37
            $I->waitForElement('.menu-open');
38
            foreach ($items as $name) {
39
                $I->dontSee($name, '.menu-open');
40
            }
41
            $I->click($rootMenuName, '.sidebar-menu');
42
        }
43
    }
44
}
45