public function testBothButtonsAvailability()
 {
     // Verify buttons availability on 'Welcome to MediaWiki' page
     parent::navigateWelcometoMediaWikiPage();
     $this->assertTrue($this->isElementPresent("submit-back"));
     $this->assertTrue($this->isElementPresent("submit-continue"));
     parent::restartInstallation();
     // Verify buttons availability on 'Connect to Database' page
     parent::navigateConnetToDatabasePage();
     $this->assertTrue($this->isElementPresent("submit-back"));
     $this->assertTrue($this->isElementPresent("submit-continue"));
     parent::restartInstallation();
     // Verify buttons availability on 'Database settings' page
     $databaseName = DB_NAME_PREFIX . "_db_settings";
     parent::navigateDatabaseSettingsPage($databaseName);
     $this->assertTrue($this->isElementPresent("submit-back"));
     $this->assertTrue($this->isElementPresent("submit-continue"));
     parent::restartInstallation();
     // Verify buttons availability on 'Name' page
     $databaseName = DB_NAME_PREFIX . "_name";
     parent::navigateNamePage($databaseName);
     $this->assertTrue($this->isElementPresent("submit-back"));
     $this->assertTrue($this->isElementPresent("submit-continue"));
     parent::restartInstallation();
     // Verify buttons availability on 'Options' page
     $databaseName = DB_NAME_PREFIX . "_options";
     parent::navigateOptionsPage($databaseName);
     $this->assertTrue($this->isElementPresent("submit-back"));
     $this->assertTrue($this->isElementPresent("submit-continue"));
     parent::restartInstallation();
     // Verify buttons availability on 'Install' page
     $databaseName = DB_NAME_PREFIX . "_install";
     parent::navigateInstallPage($databaseName);
     $this->assertTrue($this->isElementPresent("submit-back"));
     $this->assertTrue($this->isElementPresent("submit-continue"));
 }
 public function testOptionPageUI()
 {
     $databaseName = DB_NAME_PREFIX . "_options_UI";
     parent::navigateOptionsPage($databaseName);
     // 'Options' label available
     $this->assertEquals("Options", $this->getText(LINK_DIV . "h2"));
     // 'Return e-mail address' label available
     $this->assertEquals("Return e-mail address:", $this->getText("//div[@id='emailwrapper']/div[1]/div[1]/label"));
     //    'Return e-mail address' text box available
     $this->assertTrue($this->isElementPresent("config_wgPasswordSender"));
     // Text 'apache@localhost' is default value of the 'Return e-mail address' text box
     $this->assertEquals("apache@localhost", $this->getValue("config_wgPasswordSender"));
     // 'Logo URL' label available
     $this->assertEquals("Logo URL:", $this->getText(LINK_FORM . "fieldset[2]/div[3]/div[1]/label"));
     // 'Logo URL' text box available
     $this->assertTrue($this->isElementPresent("config_wgLogo"));
     // Correct path available in the 'Logo URL' text box
     $this->assertEquals("/wiki/skins/common/images/wiki.png", $this->getValue("config_wgLogo"));
     // 'Enable file uploads' radio button available
     $this->assertTrue($this->isElementPresent("config_wgEnableUploads"));
     // 'Enable file uploads' label available
     $this->assertEquals("Enable file uploads", $this->getText(LINK_FORM . "fieldset[2]/div[1]/label"));
     // 'Enable file uploads' check box is not selected
     $this->assertEquals("off", $this->getValue("config_wgEnableUploads"));
     $this->click("config_wgEnableUploads");
     // 'Directory for deleted files' label available
     $this->assertEquals("Directory for deleted files:", $this->getText("//div[@id='uploadwrapper']/div/div[1]/label"));
     // 'Directory for deleted files' text box available
     $this->assertTrue($this->isElementPresent("config_wgDeletedDirectory"));
     // Correct path available in the 'Directory for deleted files' text box
     $this->assertEquals("C:\\wamp\\www\\" . DIRECTORY_NAME . "/images/deleted", $this->getValue("config_wgDeletedDirectory"));
 }