Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
tafid committed Aug 3, 2018
2 parents 8012dec + 3976676 commit 1adc163
Show file tree
Hide file tree
Showing 6 changed files with 325 additions and 0 deletions.
52 changes: 52 additions & 0 deletions tests/acceptance/admin/TemplateCest.php
@@ -0,0 +1,52 @@
<?php

namespace hipanel\modules\ticket\tests\acceptance\admin;

use hipanel\helpers\Url;
use hipanel\tests\_support\Page\IndexPage;
use hipanel\tests\_support\Page\Widget\Input\Input;
use hipanel\tests\_support\Page\Widget\Input\Select2;
use hipanel\tests\_support\Step\Acceptance\Admin;

class TemplateCest
{
/**
* @var IndexPage
*/
private $index;

public function _before(Admin $I)
{
$this->index = new IndexPage($I);
}

public function ensureIndexPageWorks(Admin $I)
{
$I->login();
$I->needPage(Url::to('@ticket/template'));
$I->see('Answer templates', 'h1');
$I->seeLink('Create template', Url::to('create'));
$this->ensureICanSeeAdvancedSearchBox();
$this->ensureICanSeeBulkSearchBox();
}

private function ensureICanSeeAdvancedSearchBox()
{
$this->index->containsFilters([
new Input('Name'),
new Select2('Author'),
]);
}

private function ensureICanSeeBulkSearchBox()
{
$this->index->containsBulkButtons([
'Delete',
]);
$this->index->containsColumns([
'Author',
'Name',
'Is published',
]);
}
}
62 changes: 62 additions & 0 deletions tests/acceptance/admin/TicketCest.php
@@ -0,0 +1,62 @@
<?php

namespace hipanel\modules\ticket\tests\acceptance\admin;

use hipanel\helpers\Url;
use hipanel\tests\_support\Page\IndexPage;
use hipanel\tests\_support\Page\Widget\Input\Input;
use hipanel\tests\_support\Page\Widget\Input\Select2;
use hipanel\tests\_support\Step\Acceptance\Admin;

class TicketCest
{
/**
* @var IndexPage
*/
private $index;

public function _before(Admin $I)
{
$this->index = new IndexPage($I);
}

public function ensureIndexPageWorks(Admin $I)
{
$I->login();
$I->needPage(Url::to('@ticket'));
$I->see('Tickets', 'h1');
$I->seeLink('Create ticket', Url::to('@ticket/create'));
$this->ensureICanSeeAdvancedSearchBox();
$this->ensureICanSeeBulkSearchBox();
}

private function ensureICanSeeAdvancedSearchBox()
{
$this->index->containsFilters([
new Input('Subject or message'),
new Select2('Author'),
new Select2('Recipient'),
new Select2('Status'),
new Select2('Assignee'),
new Select2('Priority'),
new Select2('Watchers'),
new Input('Topics'),
]);
}

private function ensureICanSeeBulkSearchBox()
{
$this->index->containsBulkButtons([
'Subscribe',
'Unsubscribe',
'Close',
]);
$this->index->containsColumns([
'Subject',
'Author',
'Assignee',
'Recipient',
'Answers',
]);
}
}
42 changes: 42 additions & 0 deletions tests/acceptance/client/TicketCest.php
Expand Up @@ -3,9 +3,13 @@
namespace hipanel\modules\ticket\tests\acceptance\client;

use Codeception\Scenario;
use hipanel\helpers\Url;
use hipanel\modules\ticket\tests\_support\Page\ticket\Create;
use hipanel\modules\ticket\tests\_support\Page\ticket\Index;
use hipanel\modules\ticket\tests\_support\Page\ticket\View;
use hipanel\tests\_support\Page\IndexPage;
use hipanel\tests\_support\Page\Widget\Input\Input;
use hipanel\tests\_support\Page\Widget\Input\Select2;
use hipanel\tests\_support\Step\Acceptance\Client;

/**
Expand All @@ -20,11 +24,49 @@ class TicketCest
*/
protected $ticket_id;

/**
* @var IndexPage
*/
private $index;

public function _before(Client $I)
{
$this->index = new IndexPage($I);
}

public function ensureIndexPageWorks(Client $I)
{
$I->login();
$I->needPage(Url::to('@ticket'));
$I->see('Tickets', 'h1');
$I->seeLink('Create ticket', Url::to('@ticket/create'));
$this->ensureICanSeeAdvancedSearchBox();
$this->ensureICanSeeBulkSearchBox();
(new Index($I))->ensurePageWorks();
}

private function ensureICanSeeAdvancedSearchBox()
{
$this->index->containsFilters([
new Input('Subject or message'),
new Select2('Status'),
new Input('Topics'),
]);
}

private function ensureICanSeeBulkSearchBox()
{
$this->index->containsBulkButtons([
'Subscribe',
'Unsubscribe',
'Close',
]);
$this->index->containsColumns([
'Subject',
'Answers',
]);
}

public function ensureICanNavigateToCreateTicketPage(Client $I)
{
(new Index($I))->ensureThatICanNavigateToCreateTicketPage();
Expand Down
52 changes: 52 additions & 0 deletions tests/acceptance/seller/TemplateCest.php
@@ -0,0 +1,52 @@
<?php

namespace hipanel\modules\ticket\tests\acceptance\seller;

use hipanel\helpers\Url;
use hipanel\tests\_support\Page\IndexPage;
use hipanel\tests\_support\Page\Widget\Input\Input;
use hipanel\tests\_support\Page\Widget\Input\Select2;
use hipanel\tests\_support\Step\Acceptance\Seller;

class TemplateCest
{
/**
* @var IndexPage
*/
private $index;

public function _before(Seller $I)
{
$this->index = new IndexPage($I);
}

public function ensureIndexPageWorks(Seller $I)
{
$I->login();
$I->needPage(Url::to('@ticket/template'));
$I->see('Answer templates', 'h1');
$I->seeLink('Create template', Url::to('create'));
$this->ensureICanSeeAdvancedSearchBox();
$this->ensureICanSeeBulkSearchBox();
}

private function ensureICanSeeAdvancedSearchBox()
{
$this->index->containsFilters([
new Input('Name'),
new Select2('Author'),
]);
}

private function ensureICanSeeBulkSearchBox()
{
$this->index->containsBulkButtons([
'Delete',
]);
$this->index->containsColumns([
'Author',
'Name',
'Is published',
]);
}
}
62 changes: 62 additions & 0 deletions tests/acceptance/seller/TicketCest.php
@@ -0,0 +1,62 @@
<?php

namespace hipanel\modules\ticket\tests\acceptance\seller;

use hipanel\helpers\Url;
use hipanel\tests\_support\Page\IndexPage;
use hipanel\tests\_support\Page\Widget\Input\Input;
use hipanel\tests\_support\Page\Widget\Input\Select2;
use hipanel\tests\_support\Step\Acceptance\Seller;

class TicketCest
{
/**
* @var IndexPage
*/
private $index;

public function _before(Seller $I)
{
$this->index = new IndexPage($I);
}

public function ensureIndexPageWorks(Seller $I)
{
$I->login();
$I->needPage(Url::to('@ticket'));
$I->see('Tickets', 'h1');
$I->seeLink('Create ticket', Url::to('@ticket/create'));
$this->ensureICanSeeAdvancedSearchBox();
$this->ensureICanSeeBulkSearchBox();
}

private function ensureICanSeeAdvancedSearchBox()
{
$this->index->containsFilters([
new Input('Subject or message'),
new Select2('Author'),
new Select2('Recipient'),
new Select2('Status'),
new Select2('Assignee'),
new Select2('Priority'),
new Select2('Watchers'),
new Input('Topics'),
]);
}

private function ensureICanSeeBulkSearchBox()
{
$this->index->containsBulkButtons([
'Subscribe',
'Unsubscribe',
'Close',
]);
$this->index->containsColumns([
'Subject',
'Author',
'Assignee',
'Recipient',
'Answers',
]);
}
}
55 changes: 55 additions & 0 deletions tests/acceptance/seller/TicketStatisticsCest.php
@@ -0,0 +1,55 @@
<?php

namespace hipanel\modules\ticket\tests\acceptance\seller;

use hipanel\helpers\Url;
use hipanel\tests\_support\Page\IndexPage;
use hipanel\tests\_support\Page\Widget\Input\Input;
use hipanel\tests\_support\Page\Widget\Input\Select2;
use hipanel\tests\_support\Step\Acceptance\Seller;

class TicketStatisticsCest
{
/**
* @var IndexPage
*/
private $index;

public function _before(Seller $I)
{
$this->index = new IndexPage($I);
}

public function ensureIndexPageWorks(Seller $I)
{
$I->login();
$I->needPage(Url::to('/ticket/statistic'));
$I->see('Tickets statistics', 'h1');
$I->seeLink('Create ticket', Url::to('@ticket/create'));
$this->ensureICanSeeAdvancedSearchBox();
$this->ensureICanSeeBulkSearchBox();
}

private function ensureICanSeeAdvancedSearchBox()
{
$this->index->containsFilters([
new Input('Anytext'),
new Select2('Author'),
new Select2('Recipient'),
new Select2('Status'),
new Select2('Assignee'),
new Select2('Priority'),
new Select2('Watchers'),
new Input('Topics'),
]);
}

private function ensureICanSeeBulkSearchBox()
{
$this->index->containsColumns([
'Client',
'Spent',
'Tickets',
]);
}
}

0 comments on commit 1adc163

Please sign in to comment.