<?php use Codeception\Util\Fixtures; /** @type \Codeception\Scenario $scenario */ $scenario->groups('front', 'user-management'); \Yii::app()->fixtureManager->prepare(); $I = new TestGuy($scenario); $I->wantTo('Delete my account'); $I->expectTo('Lose ability to sign in under my regular account and all my posts'); $login = Fixtures::get('data:users[0]:login'); $password = Fixtures::get('data:users[0]:password'); $I->amOnPage(\AuthorFeedPage::route(1)); // confirming that test landed on required page $I->see($login, \AuthorFeedPage::$postSelector); $I->amOnPage(\LoginPage::$url); $I->submitForm(\LoginPage::$formSelector, array(\LoginPage::$loginField => $login, \LoginPage::$passwordField => $password)); $I->amOnPage(\SuicideBoothPage::$url); $I->click(\SuicideBoothPage::$benderButtonXPath); $I->seeCurrentUrlEquals('/'); $I->amOnPage(\LoginPage::$url); $I->submitForm(\LoginPage::$formSelector, array(\LoginPage::$loginField => $login, \LoginPage::$passwordField => $password)); $I->see('auth.login.fail'); $I->amOnPage(\AuthorFeedPage::route(1)); $I->see('pageTitle.site.error', \AuthorFeedPage::$pageHeaderSelector); $I->seeResponseCodeIs(404); $h = fopen(\Yii::getPathOfAlias('application.runtime.login'), 'a'); fwrite($h, $login . PHP_EOL); fclose($h); $I->assertNull(\User::findByUsername($login, false)); $I->assertEmpty(\Post::model()->with(array('author' => array('condition' => 'author.username = :login', 'params' => array(':login' => $login))))->findAll());
<?php // Most idiotic cept ever // Checks that every page has correct translation and correct access control // That means that it has to be updated nearly on every sneeze use Codeception\Util\Fixtures; /** @type \Codeception\Scenario $scenario */ $scenario->groups('front'); \Yii::app()->fixtureManager->prepare(); $I = new TestGuy($scenario); $I->am('A superpedantic person'); $I->wantTo('Find translation error or improper "back to" link'); $I->expectTo('Fail in my quest'); $languages = array('en', 'ru'); $basePath = \Yii::getPathOfAlias('application.tests._data.pageData'); $privatePages = (require $basePath . '/pages-auth.php'); $publicPages = (require $basePath . '/pages-public.php'); $I->amOnPage(\LoginPage::$url); $I->submitForm(\LoginPage::$formSelector, array(\LoginPage::$loginField => Fixtures::get('data:users[0]:login'), \LoginPage::$passwordField => Fixtures::get('data:users[0]:password'))); foreach ($languages as $language) { \Yii::app()->language = $language; $I->setCookie('language', $language); $path = $basePath . '/language-' . $language . '.php'; $data = (require $path); foreach ($data as $url => $details) { $I->amOnPage($url); if (isset($details['title'])) { $I->seeInTitle($details['title']); } if (isset($details['nav'])) { foreach ($details['nav'] as $navItem) {