/**
  * @test
  */
 public function frontEndSingleArticleState_ChangeArticleState_ArticleStateChanged()
 {
     $salt = rand();
     $articleName = 'Test Article ' . $salt;
     $cfg = new SeleniumConfig();
     $urlHome = $this->cfg->host . $this->cfg->path . 'index.php';
     $homePage = $this->getPageObject('SiteContentFeaturedPage', true, $urlHome);
     $articleUrl = $this->cfg->host . $this->cfg->path . 'index.php/test-article-' . $salt;
     $this->doAdminLogin();
     $articleManager = 'administrator/index.php?option=com_content';
     $this->driver->get($cfg->host . $cfg->path . $articleManager);
     $this->articleManagerPage = $this->getPageObject('ArticleManagerPage');
     $this->articleManagerPage->addArticle($articleName, 'Uncategorised', array('text' => '<p>This is a test.</p>'));
     $articleId = $this->articleManagerPage->getFieldValues('ArticleEditPage', $articleName, array('ID'));
     $articleUrl = $this->cfg->host . $this->cfg->path . 'index.php/' . $articleId[0] . '-test-article-' . $salt;
     $this->driver->get($articleUrl);
     $singleArticlePage = $this->getPageObject('SiteSingleArticlePage', true, $articleUrl);
     $this->assertTrue($singleArticlePage->isArticlePresent($articleName), 'Test Article Must be Present');
     $this->doAdminLogin();
     $articleManager = 'administrator/index.php?option=com_content';
     $this->driver->get($cfg->host . $cfg->path . $articleManager);
     $this->articleManagerPage = $this->getPageObject('ArticleManagerPage');
     $this->articleManagerPage->changeArticleState($articleName, 'unpublished');
     $this->assertEquals('unpublished', $this->articleManagerPage->getState($articleName), 'Test Article should be unpublished');
     $this->driver->get($articleUrl);
     $singleArticlePage = $this->getPageObject('SiteSingleArticlePage', true, $articleUrl);
     $this->assertFalse($singleArticlePage->isArticlePresent($articleName), 'Test Article Must not be Present');
     $this->doSiteLogin();
     $this->driver->get($articleUrl);
     $singleArticlePage = $this->getPageObject('SiteSingleArticlePage', true, $articleUrl);
     $this->assertTrue($singleArticlePage->isEditPresent(), 'Edit Icons Must be Present');
     $this->doSiteLogout();
     $cpPage = $this->doAdminLogin();
     $this->articleManagerPage = $cpPage->clickMenu('Article Manager', 'ArticleManagerPage');
     $this->articleManagerPage = $this->getPageObject('ArticleManagerPage');
     $this->articleManagerPage->changeArticleState($articleName, 'published');
     $this->assertEquals('published', $this->articleManagerPage->getState($articleName), 'Test Article should be published');
     $this->driver->get($articleUrl);
     $singleArticlePage = $this->getPageObject('SiteSingleArticlePage', true, $articleUrl);
     $this->assertTrue($singleArticlePage->isArticlePresent($articleName), 'Test Article Must be Present');
     $this->driver->get($cfg->host . $cfg->path . $articleManager);
     $this->articleManagerPage = $this->getPageObject('ArticleManagerPage');
     $this->articleManagerPage->changeArticleState($articleName, 'archived');
     $this->assertEquals('archived', $this->articleManagerPage->getState($articleName), 'Test Article should be archived');
     $this->driver->get($articleUrl);
     $singleArticlePage = $this->getPageObject('SiteSingleArticlePage', true, $articleUrl);
     $this->assertTrue($singleArticlePage->isArticlePresent($articleName), 'Test Article Must be Present');
     $this->driver->get($cfg->host . $cfg->path . $articleManager);
     $this->articleManagerPage = $this->getPageObject('ArticleManagerPage');
     $this->articleManagerPage->trashAndDelete($articleName);
     $this->driver->get($articleUrl);
     $singleArticlePage = $this->getPageObject('SiteSingleArticlePage', true, $articleUrl);
     $this->assertFalse($singleArticlePage->isArticlePresent($articleName), 'Test Article Must not be Present');
 }
Exemplo n.º 2
0
 /**
  * @test
  */
 public function editArticle_ChangeFields_FieldsChanged()
 {
     $salt = rand();
     $articleName = 'ABC' . $salt;
     $category = 'Joomla!';
     $caption = 'Testing';
     $alt_text = 'Alternate Testing';
     $this->articleManagerPage = $this->getPageObject('ArticleManagerPage');
     $this->assertFalse($this->articleManagerPage->getRowNumber($articleName), 'Test Article should not be present');
     $this->articleManagerPage->addArticle($articleName);
     $this->articleManagerPage->editArticle($articleName, array('Category' => $category, 'Alt text' => $alt_text, 'Caption' => $caption));
     $values = $this->articleManagerPage->getFieldValues('ArticleEditPage', $articleName, array('Caption', 'Alt text'));
     $this->assertEquals(array($caption, $alt_text), $values, 'Actual values should match expected');
     $this->articleManagerPage->trashAndDelete($articleName);
 }