Code Duplication    Length = 61-62 lines in 3 locations

tests/acceptance/admin/MailboxesCest.php 1 location

@@ 11-72 (lines=62) @@
8
use hipanel\tests\_support\Page\Widget\Input\Select2;
9
use hipanel\tests\_support\Step\Acceptance\Admin;
10
11
class MailboxesCest
12
{
13
    /**
14
     * @var IndexPage
15
     */
16
    private $index;
17
18
    public function _before(Admin $I)
19
    {
20
        $this->index = new IndexPage($I);
21
    }
22
23
    public function ensureIndexPageWorks(Admin $I)
24
    {
25
        $I->login();
26
        $I->needPage(Url::to('@mail'));
27
        $I->see('Mailboxes', 'h1');
28
        $I->seeLink('Create mailbox', Url::to('create'));
29
        $this->ensureICanSeeAdvancedSearchBox($I);
30
        $this->ensureICanSeeLegendBox();
31
        $this->ensureICanSeeBulkSearchBox();
32
    }
33
34
    private function ensureICanSeeAdvancedSearchBox(Admin $I)
35
    {
36
        $this->index->containsFilters([
37
            Input::asAdvancedSearch($I, 'E-mail'),
38
            Select2::asAdvancedSearch($I, 'Server'),
39
            Select2::asAdvancedSearch($I, 'Status'),
40
            Select2::asAdvancedSearch($I, 'Client'),
41
            Select2::asAdvancedSearch($I, 'Reseller'),
42
            Select2::asAdvancedSearch($I, 'Type'),
43
        ]);
44
    }
45
46
    private function ensureICanSeeLegendBox()
47
    {
48
        $this->index->containsLegend([
49
            'Mail box',
50
            'Mail alias',
51
            'Mail box with aliases',
52
        ]);
53
    }
54
55
    private function ensureICanSeeBulkSearchBox()
56
    {
57
        $this->index->containsBulkButtons([
58
            'Enable',
59
            'Disable',
60
            'Delete',
61
        ]);
62
        $this->index->containsColumns( [
63
            'E-mail',
64
            'Type',
65
            'Forwarding',
66
            'Client',
67
            'Reseller',
68
            'Server',
69
            'Status',
70
        ]);
71
    }
72
}
73

tests/acceptance/client/DomainsCest.php 1 location

@@ 11-71 (lines=61) @@
8
use hipanel\tests\_support\Page\Widget\Input\Select2;
9
use hipanel\tests\_support\Step\Acceptance\Client;
10
11
class DomainsCest
12
{
13
    /**
14
     * @var IndexPage
15
     */
16
    private $index;
17
18
    public function _before(Client $I)
19
    {
20
        $this->index = new IndexPage($I);
21
    }
22
23
    public function ensureIndexPageWorks(Client $I)
24
    {
25
        $I->login();
26
        $I->needPage(Url::to('@hdomain'));
27
        $I->see('Domains', 'h1');
28
        $I->see('Create domain', 'a');
29
        $this->ensureICanSeeAdvancedSearchBox($I);
30
        $this->ensureICanSeeLegendBox();
31
        $this->ensureICanSeeBulkSearchBox();
32
    }
33
34
    private function ensureICanSeeAdvancedSearchBox(Client $I)
35
    {
36
        $this->index->containsFilters([
37
            Input::asAdvancedSearch($I, 'Domain name'),
38
            Input::asAdvancedSearch($I, 'Domain list (comma-separated)'),
39
            Input::asAdvancedSearch($I, 'IP'),
40
            Select2::asAdvancedSearch($I, 'Status'),
41
            Select2::asAdvancedSearch($I, 'Show aliases only'),
42
            Select2::asAdvancedSearch($I, 'Server'),
43
        ]);
44
    }
45
46
    private function ensureICanSeeLegendBox()
47
    {
48
        $this->index->containsLegend([
49
            'Domain',
50
            'DNS records',
51
            'Alias',
52
            'Name server',
53
            'Complex domain',
54
        ]);
55
    }
56
57
    private function ensureICanSeeBulkSearchBox()
58
    {
59
        $this->index->containsBulkButtons([
60
            'Delete',
61
        ]);
62
        $this->index->containsColumns([
63
            'Domain name',
64
            'Account',
65
            'Server',
66
            'Status',
67
            'IP',
68
            'Service',
69
        ]);
70
    }
71
}
72

tests/acceptance/seller/MailboxesCest.php 1 location

@@ 11-72 (lines=62) @@
8
use hipanel\tests\_support\Page\Widget\Input\Select2;
9
use hipanel\tests\_support\Step\Acceptance\Seller;
10
11
class MailboxesCest
12
{
13
    /**
14
     * @var IndexPage
15
     */
16
    private $index;
17
18
    public function _before(Seller $I)
19
    {
20
        $this->index = new IndexPage($I);
21
    }
22
23
    public function ensureIndexPageWorks(Seller $I)
24
    {
25
        $I->login();
26
        $I->needPage(Url::to('@mail'));
27
        $I->see('Mailboxes', 'h1');
28
        $I->seeLink('Create mailbox', Url::to('create'));
29
        $this->ensureICanSeeAdvancedSearchBox($I);
30
        $this->ensureICanSeeLegendBox();
31
        $this->ensureICanSeeBulkSearchBox();
32
    }
33
34
    private function ensureICanSeeAdvancedSearchBox(Seller $I)
35
    {
36
        $this->index->containsFilters([
37
            Input::asAdvancedSearch($I, 'E-mail'),
38
            Select2::asAdvancedSearch($I, 'Server'),
39
            Select2::asAdvancedSearch($I, 'Status'),
40
            Select2::asAdvancedSearch($I, 'Client'),
41
            Select2::asAdvancedSearch($I, 'Reseller'),
42
            Select2::asAdvancedSearch($I, 'Type'),
43
        ]);
44
    }
45
46
    private function ensureICanSeeLegendBox()
47
    {
48
        $this->index->containsLegend([
49
            'Mail box',
50
            'Mail alias',
51
            'Mail box with aliases',
52
        ]);
53
    }
54
55
    private function ensureICanSeeBulkSearchBox()
56
    {
57
        $this->index->containsBulkButtons([
58
            'Enable',
59
            'Disable',
60
            'Delete',
61
        ]);
62
        $this->index->containsColumns( [
63
            'E-mail',
64
            'Type',
65
            'Forwarding',
66
            'Client',
67
            'Reseller',
68
            'Server',
69
            'Status',
70
        ]);
71
    }
72
}
73