public function tryToTestPagePublishing(WebGuy $I, $scenario) { $I = new WebGuy\UserSteps($scenario); $I->login(\CommonPage::TEST_USER_NAME, \CommonPage::TEST_PASSWORD); $I->am('admin'); $I->amGoingTo('test publishing news...'); $I->amOnPage(\CommonPage::PANEL_URL); $I->see(\CommonPage::PANEL_LABEL, 'h1'); $I->amOnPage('/backend/news/news'); $I->see('Новости'); $I->seeLink('Вторая не опубликованная новость'); $I->amOnPage(\CommonPage::PANEL_URL . 'news/news/update/2'); $I->see('Редактирование новости'); $I->see('Вторая не опубликованная новость'); $I->fillField('News[status]', 1); $I->click('Сохранить новость и продолжить'); $I->see('Новость обновлена!', \CommonPage::SUCCESS_CSS_CLASS); $I->logout(); $I->am('anonymous user'); $I->amGoingTo('test show just published news...'); $I->amOnPage(\NewsPage::route('vtoraja-ne-opublikovannaja-novost')); $I->expectTo('see just published news...'); $I->see('Вторая не опубликованная новость', 'h4'); $I->see('Вторая не опубликованная новость текст'); $I->seeInTitle('Вторая не опубликованная новость'); }
public function tryToTestNewsPage(WebGuy $I, $scenario) { $I->am('anonymous user'); $I->amGoingTo('test show news page...'); $I->amOnPage(\NewsPage::route('pervaja-opublikovannaja-novost')); $I->expectTo('see published news...'); $I->see('Первая опубликованная новость', 'h4'); $I->see('Первая опубликованная текст'); $I->seeInTitle('Первая опубликованная новость'); $I->amGoingTo('test show not published news...'); $I->amOnPage(\NewsPage::route('vtoraja-ne-opublikovannaja-novost')); $I->expectTo(' see page not found exception...'); $I->dontSee('Вторая не опубликованная новость'); $I->dontSeeInTitle('Вторая не опубликованная новость'); $I->amGoingTo('test show protected news...'); $I->amOnPage(\NewsPage::route('tretja-novost-tolko-dlja-avtorizovannyh')); $I->expectTo(' see login page...'); $I->dontSee('Третья новость только для авторизованных'); $I->dontSee('Третья новость только для авторизованных текст'); $I->dontSeeInTitle('Третья новость только для авторизованных текст'); $I->seeInCurrentUrl('login'); $I->see('Для просмотра этой страницы Вам необходимо авторизоваться!', \CommonPage::ERROR_CSS_CLASS); $I->am('authorized user'); $I = new WebGuy\UserSteps($scenario); $I->login('*****@*****.**', 'testpassword'); $I->amGoingTo('test show protected news for authorized user...'); $I->amOnPage(\NewsPage::route('tretja-novost-tolko-dlja-avtorizovannyh')); $I->expectTo(' see protected news...'); $I->see('Третья новость только для авторизованных', 'h4'); $I->see('Третья новость только для авторизованных текст'); $I->seeInTitle('Третья новость только для авторизованных'); $I->amGoingTo('test show not published news...'); $I->amOnPage(\NewsPage::route('vtoraja-ne-opublikovannaja-novost')); $I->expectTo(' see page not found exception...'); $I->dontSee('Вторая не опубликованная новость'); $I->dontSeeInTitle('Вторая не опубликованная новость'); }
public function tryToTestNewsListPage(WebGuy $I, $scenario) { $I->am('simple user'); $I->amGoingTo('test news list page...'); $I->amOnPage(\NewsPage::URL); $I->see('Новости', 'h1'); $I->seeLink('Первая опубликованная новость'); $I->dontSeeLink('Третья новость только для авторизованных'); $I->dontSeeLink('Вторая не опубликованная новость'); $I->am('authorized user'); $I = new WebGuy\UserSteps($scenario); $I->login('*****@*****.**', 'testpassword'); $I->amGoingTo('test news list for authorized user...'); $I->amOnPage(\NewsPage::URL); $I->expectTo('see news list with protected news...'); $I->seeLink('Первая опубликованная новость'); $I->seeLink('Третья новость только для авторизованных'); $I->dontSeeLink('Вторая не опубликованная новость'); }
public function tryToTestCommentsAntispam(WebGuy $I, $scenario) { $I = new WebGuy\UserSteps($scenario); $I->login(\CommonPage::TEST_USER_NAME, \CommonPage::TEST_PASSWORD); $I->am('admin'); $I->amGoingTo('test comments antispam...'); $I->amOnPage("/blogs/public-blog"); $I->see("Оставить комментарий", "h3"); $I->fillField('Comment[text]', "Antispam Test"); $I->click("Добавить комментарий"); $I->wait(1000); $I->see("Спасибо, Ваша запись добавлена!", \CommonPage::SUCCESS_CSS_CLASS); $I->fillField('Comment[text]', "Antispam Test"); $I->click("Добавить комментарий"); $I->wait(1000); $I->see("Защита от спама", \CommonPage::ERROR_CSS_CLASS); $I->wait(15000); $I->fillField('Comment[text]', "Antispam Test"); $I->click("Добавить комментарий"); $I->wait(1000); $I->see("Спасибо, Ваша запись добавлена!", \CommonPage::SUCCESS_CSS_CLASS); }
public function tryToTestMainBackend(WebGuy $I, $scenario) { $I = new WebGuy\UserSteps($scenario); $I->am('guest user'); $I->amGoingTo('try access to admin area'); $I->amOnPage(\CommonPage::PANEL_URL . 'login'); $I->seeInCurrentUrl('/backend/login'); $I->see('Пожалуйста, авторизуйтесь'); $I->fillField('LoginForm[password]', 'wrong password'); $I->fillField('LoginForm[email]', \CommonPage::TEST_USER_NAME); $I->click('Войти'); $I->see('Email или пароль введены неверно!', \CommonPage::ERROR_CSS_CLASS); $I->fillField('LoginForm[password]', \CommonPage::TEST_PASSWORD); $I->click('Войти'); //$I->see('Вы успешно авторизовались!', \CommonPage::SUCCESS_CSS_CLASS); $I->amOnPage(\CommonPage::PANEL_URL); $I->see('Панель управления "Юпи!"', 'h1'); //simple check all modules $I->amGoingTo('simple test all modules page'); $I->amOnPage('/backend/news/news'); $I->see('Новости', 'h1'); $I->amOnPage('/backend/page/page'); $I->see('Страницы', 'h1'); $I->amOnPage('/backend/image/image'); $I->see('Изображения', 'h1'); $I->amOnPage('/backend/gallery/gallery'); $I->see('Галереи', 'h1'); $I->amOnPage('/backend/catalog/catalog'); $I->see('Товары', 'h1'); $I->amOnPage('/backend/comment/comment'); $I->see('Комментарии', 'h1'); $I->amOnPage('/backend/contentblock/contentBlock'); $I->see('Блоки контента'); $I->amOnPage('/backend/menu/menu'); $I->see('Меню', 'h1'); $I->amOnPage('/backend/menu/menuitem'); $I->see('Пункты меню'); $I->amOnPage('/backend/dictionary/dictionary'); $I->see('Справочники', 'h1'); $I->amOnPage('/backend/dictionary/dictionaryData'); $I->see('Значения справочников', 'h1'); $I->amOnPage('/backend/category/category'); $I->see('Категории', 'h1'); $I->amOnPage('/backend/queue/queue'); $I->see('Задания', 'h1'); $I->amOnPage('/backend/mail/event'); $I->see('Почтовые события', 'h1'); $I->amOnPage('/backend/mail/template'); $I->see('Почтовые шаблоны', 'h1'); $I->amOnPage('/backend/feedback/feedback'); $I->see('Сообщения', 'h1'); $I->amOnPage('/backend/user/user'); $I->see('Пользователи', 'h1'); $I->amGoingTo('change backend language'); $I->amOnPage('/en/backend'); $I->see('Control panel "Yupe!"', 'h1'); $I->amOnPage('/ru/backend'); $I->see('Панель управления "Юпи!"', 'h1'); $I->amOnPage('/en/backend'); $I->see('Control panel "Yupe!"', 'h1'); $I->amOnPage('/ru/backend'); $I->see('Панель управления "Юпи!"', 'h1'); $I->amGoingTo('change theme settings'); $I->amOnPage('/backend/themesettings'); $I->click('Сохранить настройки тем оформления'); $I->see('Настройки темы успешно сохранены!', \CommonPage::SUCCESS_CSS_CLASS); $I->amGoingTo('change module settings'); $I->amOnPage('/backend/modulesettings/yupe'); $I->fillField('siteDescription', 'Changed site description!'); $I->click('Сохранить настройки модуля "Юпи!"'); $I->see('Настройки модуля "Юпи!" сохранены!', \CommonPage::SUCCESS_CSS_CLASS); $I->seeInField('siteDescription', 'Changed site description!'); $I->amGoingTo('test modules page'); $I->amOnPage('/backend/settings'); $I->see('Настройки модулей', 'h1'); $I->see('20'); $I->see('21'); $I->see('1'); //$I->amGoingTo('disable catalog module'); //$I->clickWithRightButton("[module='catalog']"); //$I->see('Вы уверены, что хотите отключить модуль?','.modal-body'); }
public function tryToTestContactsPage(WebGuy $I, $scenario) { $I->am('simple user'); $I->amGoingTo('test contacts page'); $I->amOnPage(\FeedBackPage::CONTACTS_URL); $I->seeInTitle('Контакты'); $I->see('Контакты', 'h1'); $I->seeInField(\FeedBackPage::$nameField, ''); $I->seeInField(\FeedBackPage::$emailField, ''); $I->seeInField(\FeedBackPage::$themeField, ''); $I->seeInField(\FeedBackPage::$textField, ''); $I->see(\FeedBackPage::$buttonLabel); $I->amGoingTo('test email validation'); $I->fillField(\FeedBackPage::$nameField, 'test_name'); $I->fillField(\FeedBackPage::$emailField, 'test_email'); $I->fillField(\FeedBackPage::$themeField, 'test_theme'); $I->fillField(\FeedBackPage::$textField, 'test_text'); $I->click(\FeedBackPage::$buttonLabel); $I->see('Email не является правильным E-Mail адресом.', \CommonPage::ERROR_CSS_CLASS); $I->amGoingTo('test save feedback'); $I->fillField(\FeedBackPage::$emailField, '*****@*****.**'); $I->click(\FeedBackPage::$buttonLabel); $I->see('Ваше сообщение отправлено! Спасибо!', \CommonPage::SUCCESS_CSS_CLASS); $I->seeInDatabase('yupe_feedback_feedback', ['name' => 'test_name', 'email' => '*****@*****.**', 'theme' => 'test_theme', 'text' => 'test_text', 'is_faq' => 0, 'status' => 0]); $I->amGoingTo('check that new message is hide from public access'); $I->amOnPage(\FeedBackPage::routeFaq(1)); $I->see('Страница которую вы запросили не найдена.'); $I->amOnPage(\FeedBackPage::FAQ_URL); $I->see('Вопросы и ответы', 'h1'); $I->see('Задайте вопрос ?!', '.btn'); $I->dontSeeLink('test_theme'); $I->amGoingTo('mark feedback message as faq'); $I = new WebGuy\UserSteps($scenario); $I->loginAsAdminAndGoToThePanel(\CommonPage::TEST_USER_NAME, \CommonPage::TEST_PASSWORD); $I->amOnPage('/backend/feedback/feedback'); $I->see('test_name'); $I->amOnPage('/backend/feedback/feedback/update/1'); $I->selectOption('FeedBack[status]', 'Ответ отправлен'); $I->dontSeeCheckboxIsChecked('FeedBack[is_faq]'); $I->checkOption('FeedBack[is_faq]'); $I->executeJs('$("textarea[name^=FeedBack]").show();'); $I->fillField('FeedBack[answer]', 'test_answer'); $I->click('Сохранить сообщение и закрыть'); $I->see('Сообщение обновлено!', \CommonPage::SUCCESS_CSS_CLASS); $I->seeInCurrentUrl('/backend/feedback/feedback'); $I->seeInDatabase('yupe_feedback_feedback', ['name' => 'test_name', 'email' => '*****@*****.**', 'theme' => 'test_theme', 'answer' => 'test_answer', 'is_faq' => 1, 'status' => 3]); $I->logout(); $I->amGoingTo('test view feedback message on the public site'); $I->amOnPage(\FeedBackPage::FAQ_URL); $I->see('Вопросы и ответы', 'h1'); $I->see('Задайте вопрос ?!', '.btn'); $I->seeLink('test_theme'); $I->click('test_theme'); $I->seeLink('Подробнее...', \FeedBackPage::routeFaq(1)); $I->click('Подробнее...'); $I->see('test_theme #1', 'h1'); $I->see('Задайте вопрос ?!', '.btn'); $check = ['test_name', 'test_theme', 'test_text', 'test_answer', 'yupe']; foreach ($check as $ch) { $I->see($ch); } }