Skip to content

Commit ed92acc

Browse files
committed
Merge branch 'codeception'
2 parents d2340b5 + b16fa4f commit ed92acc

4 files changed

Lines changed: 168 additions & 1 deletion

File tree

docker/dev/tests/RunCodeceptionTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
$argv[] = '--no-interaction';
2727
$argv[] = '--no-ansi';
2828
$argv[] = 'acceptance';
29-
$argv[] = 'DeploymentCreatePageCest.php';
29+
$argv[] = 'UserIndexPageCest.php';
3030

3131

3232

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
<?php
2+
3+
use tests\codeception\acceptance\standardPageTests;
4+
5+
class UserEditPageCest extends standardPageTests
6+
{
7+
8+
protected $page;
9+
protected $user;
10+
11+
public function _before(AcceptanceTester $I)
12+
{
13+
$this->user = factory('App\User')->create();
14+
$this->page = route( 'users.edit', [$this->user],false);
15+
}
16+
17+
public function _after()
18+
{
19+
$this->user->delete();
20+
}
21+
22+
public function see_a_link_to_the_users_list(AcceptanceTester $I)
23+
{
24+
$I->wantTo('see a link for the servers list');
25+
$I->loginAsTheTestUser();
26+
$I->amOnPage($this->page);
27+
$I->seeCurrentUrlEquals($this->page);
28+
$I->seeLink('Users', route('users', [], false));
29+
}
30+
31+
// the current setup dosnt work with js, so can test this atm
32+
// public function edit_a_user(AcceptanceTester $I)
33+
// {
34+
// $I->wantTo('edit a server');
35+
// $I->loginAsTheTestUser();
36+
// $I->amOnPage($this->page);
37+
// $I->seeCurrentUrlEquals($this->page);
38+
// $newData = [
39+
// 'name' => 'test two',
40+
// 'email' => 'test@test_two.com'
41+
// ];
42+
// foreach($newData as $key => $data){
43+
// $I->fillField('[name="'.$key.'"]', $data);
44+
// }
45+
// $I->click('button.btn-save');
46+
// $I->see('Success');
47+
// $newData['id'] = $this->user->id;
48+
// $I->seeRecord('servers',$newData);
49+
// }
50+
51+
// the current setup dosnt work with js, so can test this atm
52+
// public function change_user_password(AcceptanceTester $I)
53+
// {
54+
// }
55+
}
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
<?php
2+
3+
use tests\codeception\acceptance\standardPageTests;
4+
5+
class UserIndexPageCest extends standardPageTests
6+
{
7+
8+
protected $page;
9+
protected $user;
10+
11+
public function _before(AcceptanceTester $I)
12+
{
13+
$this->user = factory('App\User')->create();
14+
$this->page = route('users', [], false);
15+
}
16+
17+
public function _after()
18+
{
19+
$this->user->delete();
20+
}
21+
22+
public function see_users_list(AcceptanceTester $I)
23+
{
24+
$I->wantTo('see the users');
25+
$I->loginAsTheTestUser();
26+
$I->amOnPage($this->page);
27+
$I->seeCurrentUrlEquals($this->page);
28+
$I->click('ul.pagination li.page-item:nth-last-child(2) a');
29+
$I->see($this->user->email);
30+
}
31+
32+
public function see_add_users_link(AcceptanceTester $I)
33+
{
34+
$I->wantTo('see a link to add a user');
35+
$I->loginAsTheTestUser();
36+
$I->amOnPage($this->page);
37+
$I->seeCurrentUrlEquals($this->page);
38+
$I->seeElement('[href="'.route('users.create').'"]');
39+
}
40+
41+
public function see_show_edit_delete_user_links(AcceptanceTester $I)
42+
{
43+
$I->wantTo('see a link to show, edit or delete a user');
44+
$I->loginAsTheTestUser();
45+
$I->amOnPage($this->page);
46+
$I->seeCurrentUrlEquals($this->page);
47+
$I->click('ul.pagination li.page-item:nth-last-child(2) a');
48+
$I->seeElement('a[href="'.route('users.show', [$this->user]).'"]');
49+
$I->seeElement('a[href="'.route('users.edit', [$this->user]).'"]');
50+
$I->seeElement('form[action="'.route('user.destroy', [$this->user]).'"] button[data-title="Delete User"]');
51+
}
52+
53+
// the current setup dosnt work with popups, so can test this atm
54+
// public function can_delete_a_user(AcceptanceTester $I)
55+
// {
56+
// $I->wantTo('delete a user');
57+
// $I->loginAsTheTestUser();
58+
// $I->amOnPage($this->page);
59+
// $I->seeCurrentUrlEquals($this->page);
60+
// $I->click('ul.pagination li.page-item:nth-last-child(2) a');
61+
// $I->seeRecord('users', ['id' => $this->user->id]);
62+
// $I->click('form[action="'.route('user.destroy', [$this->user]).'"] button[data-title="Delete User"]');
63+
// $I->waitForElementVisible('#confirmDelete', 15);
64+
// $I->click('#confirm');
65+
// $I->waitForElementNotVisible('#confirmDelete', 15);
66+
// $I->dontSeeRecord('users', ['id' => $this->user->id]);
67+
// }
68+
69+
}
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
<?php
2+
3+
use tests\codeception\acceptance\standardPageTests;
4+
5+
class UserShowPageCest extends standardPageTests
6+
{
7+
8+
protected $page;
9+
protected $user;
10+
11+
public function _before(AcceptanceTester $I)
12+
{
13+
$this->user = factory('App\User')->create();
14+
$this->page = route('users.show', [$this->user], false);
15+
}
16+
17+
public function _after()
18+
{
19+
$this->user->delete();
20+
}
21+
22+
public function see_user_details(AcceptanceTester $I)
23+
{
24+
$I->wantTo('see the users');
25+
$I->loginAsTheTestUser();
26+
$I->amOnPage($this->page);
27+
$I->seeCurrentUrlEquals($this->page);
28+
$I->see($this->user->id);
29+
$I->see($this->user->name);
30+
$I->see($this->user->email);
31+
}
32+
33+
public function see_show_edit_delete_user_links(AcceptanceTester $I)
34+
{
35+
$I->wantTo('see a link to show, edit or delete a user');
36+
$I->loginAsTheTestUser();
37+
$I->amOnPage($this->page);
38+
$I->seeCurrentUrlEquals($this->page);
39+
$I->seeElement('a[href="'.route('users.edit', [$this->user], false).'"]');
40+
$I->seeElement('form[action="'.route('user.destroy', [$this->user]).'"] button[data-title="Delete User"]');
41+
}
42+
43+
}

0 commit comments

Comments
 (0)