From: nadeesha Date: Thu, 30 Dec 2010 09:10:46 +0000 (+0000) Subject: Replace the common xpaths with the 'LINK_DIV', 'LINK_FORM', 'LINK_RIGHT_FRAMEWORK... X-Git-Tag: 1.31.0-rc.0~32984 X-Git-Url: http://git.cyclocoop.org/fichier?a=commitdiff_plain;h=ec9d18def90a7d93041a42c103b0555a498670fa;p=lhc%2Fweb%2Fwiklou.git Replace the common xpaths with the 'LINK_DIV', 'LINK_FORM', 'LINK_RIGHT_FRAMEWORK' variables --- diff --git a/tests/selenium/installer/MediaWikiDifferentDatabaseAccountTestCase.php b/tests/selenium/installer/MediaWikiDifferentDatabaseAccountTestCase.php index 4ef9e4ac27..8643528a2f 100644 --- a/tests/selenium/installer/MediaWikiDifferentDatabaseAccountTestCase.php +++ b/tests/selenium/installer/MediaWikiDifferentDatabaseAccountTestCase.php @@ -72,7 +72,7 @@ class MediaWikiDifferentDatabaseAccountTestCase extends MediaWikiInstallationCom // 'Install' page $this->assertEquals("Creating database user... done", - $this->getText("//div[@id='bodyContent']/div/div/div[2]/form/ul/li[3]")); + $this->getText( LINK_FORM."ul/li[3]")); parent::clickContinueButton(); // 'Complete' page diff --git a/tests/selenium/installer/MediaWikiDifferntDatabasePrefixTestCase.php b/tests/selenium/installer/MediaWikiDifferntDatabasePrefixTestCase.php index d7b8e8d141..7d06690fb7 100644 --- a/tests/selenium/installer/MediaWikiDifferntDatabasePrefixTestCase.php +++ b/tests/selenium/installer/MediaWikiDifferntDatabasePrefixTestCase.php @@ -65,7 +65,7 @@ class MediaWikiDifferntDatabasePrefixTestCase extends MediaWikiInstallationCommo // Verify upgrade existing message $this->assertEquals( "Upgrade existing installation", - $this->getText( "//div[@id='bodyContent']/div/div/h2" )); + $this->getText( LINK_DIV."h2" )); // To 'Connect to database' page parent::clickBackButton(); @@ -83,9 +83,9 @@ class MediaWikiDifferntDatabasePrefixTestCase extends MediaWikiInstallationCommo // Verify already installed warning message $this->assertEquals( "Install", - $this->getText( "//div[@id='bodyContent']/div/div/h2" )); + $this->getText( LINK_DIV."h2" )); $this->assertEquals( "Warning: You seem to have already installed MediaWiki and are trying to install it again. Please proceed to the next page.", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/div[1]" )); + $this->getText( LINK_FORM."div[1]" )); parent::clickContinueButton(); parent::completePageSuccessfull(); diff --git a/tests/selenium/installer/MediaWikiErrorsConnectToDatabasePageTestCase.php b/tests/selenium/installer/MediaWikiErrorsConnectToDatabasePageTestCase.php index 366e0f51f8..4dd8d72f8a 100644 --- a/tests/selenium/installer/MediaWikiErrorsConnectToDatabasePageTestCase.php +++ b/tests/selenium/installer/MediaWikiErrorsConnectToDatabasePageTestCase.php @@ -51,14 +51,14 @@ class MediaWikiErrorsConnectToDatabasePageTestCase extends MediaWikiInstallation $this->type( "mysql_wgDBserver", INVALID_DB_HOST ); parent::clickContinueButton(); $this->assertEquals( "DB connection error: php_network_getaddresses: getaddrinfo failed: No such host is known. (".INVALID_DB_HOST.").", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/div[2]/p[1]" )); + $this->getText( LINK_DIV."div[2]/div[2]/p[1]" )); $this->assertEquals( "Check the host, username and password below and try again.", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/div[2]/p[2]" )); + $this->getText( LINK_DIV."div[2]/div[2]/p[2]" )); // Verify warning message for the blank database host $this->type( "mysql_wgDBserver", "" ); parent::clickContinueButton(); $this->assertEquals( "MySQL 4.0.14 or later is required, you have .", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/div[2]" )); + $this->getText( LINK_DIV."div[2]/div[2]" )); // Valid Database Host $this->type( "mysql_wgDBserver", VALID_DB_HOST ); @@ -67,13 +67,13 @@ class MediaWikiErrorsConnectToDatabasePageTestCase extends MediaWikiInstallation $this->type( "mysql_wgDBname", INVALID_DB_NAME ); parent::clickContinueButton(); $this->assertEquals( "Invalid database name \"".INVALID_DB_NAME."\". Use only ASCII letters (a-z, A-Z), numbers (0-9) and underscores (_).", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/div[2]/p" )); + $this->getText( LINK_DIV."div[2]/div[2]/p" )); // Verify warning message for the blank database name $this->type( "mysql_wgDBname", ""); parent::clickContinueButton(); $this->assertEquals( "You must enter a value for \"Database name\"", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/div[2]" )); + $this->getText( LINK_DIV."div[2]/div[2]" )); // valid Database name $this->type( "mysql_wgDBname", VALID_DB_NAME); @@ -82,7 +82,7 @@ class MediaWikiErrorsConnectToDatabasePageTestCase extends MediaWikiInstallation $this->type( "mysql_wgDBprefix", INVALID_DB_PREFIX ); parent::clickContinueButton(); $this->assertEquals( "Invalid database prefix \"".INVALID_DB_PREFIX."\". Use only ASCII letters (a-z, A-Z), numbers (0-9) and underscores (_).", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/div[2]" )); + $this->getText( LINK_DIV."div[2]/div[2]" )); // Valid Database prefix $this->type( "mysql_wgDBprefix", VALID_DB_PREFIX ); @@ -91,17 +91,17 @@ class MediaWikiErrorsConnectToDatabasePageTestCase extends MediaWikiInstallation $this->type( "mysql__InstallUser", INVALID_DB_USER_NAME ); parent::clickContinueButton(); $this->assertEquals( "DB connection error: Access denied for user '".INVALID_DB_USER_NAME."'@'localhost' (using password: NO) (localhost).", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/div[2]/p[1]" )); + $this->getText( LINK_DIV."div[2]/div[2]/p[1]" )); $this->assertEquals( "Check the host, username and password below and try again.", - $this->getText("//div[@id='bodyContent']/div/div/div[2]/div[2]/p[2]")); + $this->getText( LINK_DIV."div[2]/div[2]/p[2]")); // Verify warning message for the blank database user name $this->type( "mysql__InstallUser", "" ); parent::clickContinueButton(); $this->assertEquals( "DB connection error: Access denied for user 'SYSTEM'@'localhost' (using password: NO) (localhost).", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/div[2]/p[1]" )); + $this->getText( LINK_DIV."div[2]/div[2]/p[1]" )); $this->assertEquals( "Check the host, username and password below and try again.", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/div[2]/p[2]" )); + $this->getText( LINK_DIV."div[2]/div[2]/p[2]" )); // Valid Database username $this->type( "mysql__InstallUser", VALID_DB_USER_NAME ); @@ -111,18 +111,18 @@ class MediaWikiErrorsConnectToDatabasePageTestCase extends MediaWikiInstallation parent::clickContinueButton(); $this->assertEquals( "DB connection error: Access denied for user 'root'@'localhost' (using password: YES) (localhost).", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/div[2]/p[1]" )); + $this->getText( LINK_DIV."div[2]/div[2]/p[1]" )); $this->assertEquals( "Check the host, username and password below and try again.", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/div[2]/p[2]" )); + $this->getText( LINK_DIV."div[2]/div[2]/p[2]" )); // Verify warning message for the invalid username and password $this->type( "mysql__InstallUser", INVALID_DB_USER_NAME ); $this->type( "mysql__InstallPassword", INVALID_DB_PASSWORD ); parent::clickContinueButton(); $this->assertEquals( "DB connection error: Access denied for user '".INVALID_DB_USER_NAME."'@'localhost' (using password: YES) (localhost).", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/div[2]/p[1]" )); + $this->getText( LINK_DIV."div[2]/div[2]/p[1]" )); $this->assertEquals( "Check the host, username and password below and try again.", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/div[2]/p[2]" )); + $this->getText( LINK_DIV."div[2]/div[2]/p[2]" )); // Valid username and valid password $this->type( "mysql__InstallUser", VALID_DB_USER_NAME ); @@ -131,6 +131,6 @@ class MediaWikiErrorsConnectToDatabasePageTestCase extends MediaWikiInstallation // successfully completes the 'Connect to database' page $this->assertEquals( "Database settings", - $this->getText("//div[@id='bodyContent']/div/div/h2" )); + $this->getText( LINK_DIV."h2" )); } } diff --git a/tests/selenium/installer/MediaWikiErrorsNamepageTestCase.php b/tests/selenium/installer/MediaWikiErrorsNamepageTestCase.php index 350694bfc0..5b94a95038 100644 --- a/tests/selenium/installer/MediaWikiErrorsNamepageTestCase.php +++ b/tests/selenium/installer/MediaWikiErrorsNamepageTestCase.php @@ -51,11 +51,11 @@ class MediaWikiErrorsNamepageTestCase extends MediaWikiInstallationCommonFunctio // Verify warning message for all blank fields parent::clickContinueButton(); $this->assertEquals( "Enter a site name.", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/div[2]" )); + $this->getText( LINK_DIV."div[2]/div[2]" )); $this->assertEquals( "Enter an administrator username.", - $this->getText( "//div[@id='bodyContent']/div/div/div[3]/div[2]" )); + $this->getText( LINK_DIV."div[3]/div[2]" )); $this->assertEquals( "Enter a password for the administrator account.", - $this->getText( "//div[@id='bodyContent']/div/div/div[4]/div[2]" )); + $this->getText( LINK_DIV."div[4]/div[2]" )); // Verify warning message for the blank 'Site name' $this->type( "config__AdminName", VALID_YOUR_NAME ); @@ -63,7 +63,7 @@ class MediaWikiErrorsNamepageTestCase extends MediaWikiInstallationCommonFunctio $this->type( "config__AdminPassword2", VALID_PASSWORD_AGAIN ); parent::clickContinueButton(); $this->assertEquals( "Enter a site name.", - $this->getText(" //div[@id='bodyContent']/div/div/div[2]/div[2]" )); + $this->getText( LINK_DIV."div[2]/div[2]" )); // Input valid 'Site name' $this->type( "config_wgSitename", VALID_WIKI_NAME ); @@ -74,7 +74,7 @@ class MediaWikiErrorsNamepageTestCase extends MediaWikiInstallationCommonFunctio $this->type( "config_wgMetaNamespace", INVALID_NAMESPACE ); parent::clickContinueButton(); $this->assertEquals( "The specified namespace \"\" is invalid. Specify a different project namespace.", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/div[2]" )); + $this->getText( LINK_DIV."div[2]/div[2]" )); // Verify warning message for the blank 'Project namespace' @@ -83,7 +83,7 @@ class MediaWikiErrorsNamepageTestCase extends MediaWikiInstallationCommonFunctio $this->type( "config_wgMetaNamespace" , "" ); parent::clickContinueButton(); $this->assertEquals( "The specified namespace \"\" is invalid. Specify a different project namespace.", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/div[2]" )); + $this->getText( LINK_DIV."div[2]/div[2]" )); // Valid 'Project namespace' @@ -101,7 +101,7 @@ class MediaWikiErrorsNamepageTestCase extends MediaWikiInstallationCommonFunctio $this->type( "config__AdminName", " " ); parent::clickContinueButton(); $this->assertEquals( "Enter an administrator username.", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/div[2]" )); + $this->getText( LINK_DIV."div[2]/div[2]" )); $this->type( "config_wgSitename", VALID_WIKI_NAME ); // Verify warning message for blank 'Password' @@ -109,7 +109,7 @@ class MediaWikiErrorsNamepageTestCase extends MediaWikiInstallationCommonFunctio $this->type( "config__AdminPassword", " " ); parent::clickContinueButton(); $this->assertEquals( "Enter a password for the administrator account.", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/div[2]" )); + $this->getText( LINK_DIV."div[2]/div[2]" )); // Verify warning message for the blank 'Password again' @@ -118,7 +118,7 @@ class MediaWikiErrorsNamepageTestCase extends MediaWikiInstallationCommonFunctio $this->type( "config__AdminPassword2", " " ); parent::clickContinueButton(); $this->assertEquals( "The two passwords you entered do not match.", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/div[2]" )); + $this->getText( LINK_DIV."div[2]/div[2]" )); // Verify warning message for the different'Password' and 'Password again' @@ -127,6 +127,6 @@ class MediaWikiErrorsNamepageTestCase extends MediaWikiInstallationCommonFunctio $this->type( "config__AdminPassword2", INVALID_PASSWORD_AGAIN ); parent::clickContinueButton(); $this->assertEquals( "The two passwords you entered do not match.", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/div[2]" )); + $this->getText( LINK_DIV."div[2]/div[2]" )); } } diff --git a/tests/selenium/installer/MediaWikiHelpFieldHintTestCase.php b/tests/selenium/installer/MediaWikiHelpFieldHintTestCase.php index efe7443b72..7318152a80 100644 --- a/tests/selenium/installer/MediaWikiHelpFieldHintTestCase.php +++ b/tests/selenium/installer/MediaWikiHelpFieldHintTestCase.php @@ -97,14 +97,14 @@ class MediaWikiHelpFieldHintTestCase extends MediaWikiInstallationCommonFunction parent::navigateDatabaseSettingsPage($databaseName); // Verify help field for 'Search engine' - $this->click( "//div[@id='bodyContent']/div/div/div[2]/form/div[2]/span[1]" ); + $this->click( LINK_FORM."div[2]/span[1]" ); $this->assertEquals( SEARCH_ENGINE_HELP, - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/div[2]/span[2]" )); + $this->getText( LINK_FORM."div[2]/span[2]" )); // Verify help field for 'Database character set' - $this->click( "//div[@id='bodyContent']/div/div/div[2]/form/div[4]/span[1]" ); + $this->click( LINK_FORM."div[4]/span[1]" ); $this->assertEquals( DATABASE_CHARACTER_SET_HELP, - $this->getText("//div[@id='bodyContent']/div/div/div[2]/form/div[4]/span[2]")); + $this->getText( LINK_FORM."div[4]/span[2]")); parent::restartInstallation(); } @@ -115,29 +115,29 @@ class MediaWikiHelpFieldHintTestCase extends MediaWikiInstallationCommonFunction parent::navigateNamePage( $databaseName ); // Verify help field for 'Name of Wiki' - $this->click( "//div[@id='bodyContent']/div/div/div[2]/form/div[1]/div[1]/div/span[1]" ); + $this->click( LINK_FORM."div[1]/div[1]/div/span[1]" ); $this->assertEquals( NAME_OF_WIKI_HELP, - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/div[1]/div[1]/div/span[2]/p" )); + $this->getText( LINK_FORM."div[1]/div[1]/div/span[2]/p" )); // Verify help field for 'Project namespace' - $this->click( "//div[@id='bodyContent']/div/div/div[2]/form/div[2]/div[1]/div/span[1]" ); + $this->click( LINK_FORM."div[2]/div[1]/div/span[1]" ); $this->assertEquals( PROJECT_NAMESPACE_HELP, - $this->getText("//div[@id='bodyContent']/div/div/div[2]/form/div[2]/div[1]/div/span[2]/p")); + $this->getText( LINK_FORM."div[2]/div[1]/div/span[2]/p")); // Verify help field for 'Your Name' - $this->click( "//div[@id='bodyContent']/div/div/div[2]/form/fieldset/div[1]/div[1]/div/span[1]" ); + $this->click( LINK_FORM."fieldset/div[1]/div[1]/div/span[1]" ); $this->assertEquals( USER_NAME_HELP, - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/fieldset/div[1]/div[1]/div/span[2]/p" )); + $this->getText( LINK_FORM."fieldset/div[1]/div[1]/div/span[2]/p" )); // Verify help field for 'E mail address' - $this->click( "//div[@id='bodyContent']/div/div/div[2]/form/fieldset/div[4]/div[1]/div/span[1]" ); + $this->click( LINK_FORM."fieldset/div[4]/div[1]/div/span[1]" ); $this->assertEquals( EMAIL_ADDRESS_HELP, - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/fieldset/div[4]/div[1]/div/span[2]/p" )); + $this->getText( LINK_FORM."fieldset/div[4]/div[1]/div/span[2]/p" )); // Verify help field for 'Subscribe to the release announcements mailing list' - $this->click( "//div[@id='bodyContent']/div/div/div[2]/form/fieldset/div[5]/div/span[1]" ); + $this->click( LINK_FORM."fieldset/div[5]/div/span[1]" ); $this->assertEquals( SUBSCRIBE_MAILING_LIST_HELP, - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/fieldset/div[5]/div/span[2]/p" )); + $this->getText( LINK_FORM."fieldset/div[5]/div/span[2]/p" )); parent::restartInstallation(); } } diff --git a/tests/selenium/installer/MediaWikiOnAlreadyInstalledTestCase.php b/tests/selenium/installer/MediaWikiOnAlreadyInstalledTestCase.php index 0826b0c2eb..e8b8f9b084 100644 --- a/tests/selenium/installer/MediaWikiOnAlreadyInstalledTestCase.php +++ b/tests/selenium/installer/MediaWikiOnAlreadyInstalledTestCase.php @@ -56,11 +56,11 @@ class MediaWikiOnAlreadyInstalledTestCase extends MediaWikiInstallationCommonFun parent::clickContinueButton(); // 'Install' page should display after the 'Option' page - $this->assertEquals( "Install", $this->getText( "//div[@id='bodyContent']/div/div/h2" )); + $this->assertEquals( "Install", $this->getText( LINK_DIV."h2" )); // Verify warning text displayed $this->assertEquals( "Warning: You seem to have already installed MediaWiki and are trying to install it again. Please proceed to the next page.", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/div[1]/div[2]" )); + $this->getText( LINK_FORM."div[1]/div[2]" )); // Complete page parent::clickContinueButton(); diff --git a/tests/selenium/installer/MediaWikiRestartInstallationTestCase.php b/tests/selenium/installer/MediaWikiRestartInstallationTestCase.php index 2799f82c6a..5147a8dbcb 100644 --- a/tests/selenium/installer/MediaWikiRestartInstallationTestCase.php +++ b/tests/selenium/installer/MediaWikiRestartInstallationTestCase.php @@ -57,7 +57,7 @@ class MediaWikiRestartInstallationTestCase extends MediaWikiInstallationCommonFu $this->waitForPageToLoad( PAGE_LOAD_TIME ); // 'Restart Installation' page displayed - $this->assertEquals( "Restart installation", $this->getText("//div[@id='bodyContent']/div/div/h2")); + $this->assertEquals( "Restart installation", $this->getText( LINK_DIV."h2")); // Restart warning message displayed $this->assertTrue($this->isTextPresent( "exact:Do you want to clear all saved data that you have entered and restart the installation process?" )); @@ -67,7 +67,7 @@ class MediaWikiRestartInstallationTestCase extends MediaWikiInstallationCommonFu $this->waitForPageToLoad( PAGE_LOAD_TIME ); // Navigate to the initial installation page(Language). - $this->assertEquals( "Language", $this->getText( "//div[@id='bodyContent']/div/div/h2" )); + $this->assertEquals( "Language", $this->getText( LINK_DIV."h2" )); // 'Welcome to MediaWiki!' page parent::clickContinueButton(); @@ -94,7 +94,7 @@ class MediaWikiRestartInstallationTestCase extends MediaWikiInstallationCommonFu $this->waitForPageToLoad( PAGE_LOAD_TIME ); // 'Restart Installation' page displayed - $this->assertEquals( "Restart installation", $this->getText( "//div[@id='bodyContent']/div/div/h2" )); + $this->assertEquals( "Restart installation", $this->getText( LINK_DIV."h2" )); // Restart warning message displayed $this->assertTrue( $this->isTextPresent( "Do you want to clear all saved data that you have entered and restart the installation process?")); @@ -103,7 +103,7 @@ class MediaWikiRestartInstallationTestCase extends MediaWikiInstallationCommonFu parent::clickBackButton(); // Navigates to the previous page - $this->assertEquals( "Database settings", $this->getText( "//div[@id='bodyContent']/div/div/h2" )); + $this->assertEquals( "Database settings", $this->getText( LINK_DIV."h2" )); ; // 'Connect to database' page diff --git a/tests/selenium/installer/MediaWikiRightFrameworkLinksTestCase.php b/tests/selenium/installer/MediaWikiRightFrameworkLinksTestCase.php index 06fccf5e1a..346f24f8cd 100644 --- a/tests/selenium/installer/MediaWikiRightFrameworkLinksTestCase.php +++ b/tests/selenium/installer/MediaWikiRightFrameworkLinksTestCase.php @@ -67,27 +67,27 @@ class MediaWikiRightFrameworkLinksTestCase extends MediaWikiInstallationCommonFu // Navigate to the 'Read me' page $this->click( "link=Read me" ); $this->waitForPageToLoad( PAGE_LOAD_TIME ); - $this->assertEquals( "Read me", $this->getText( "//div[@id='bodyContent']/div/div/h2[1]" )); + $this->assertEquals( "Read me", $this->getText( LINK_DIV."h2[1]" )); $this->assertTrue($this->isElementPresent( "submit-back" )); parent::clickBackButton(); // Navigate to the 'Release notes' page $this->click( "link=Release notes" ); $this->waitForPageToLoad( PAGE_LOAD_TIME); - $this->assertEquals( "Release notes", $this->getText( "//div[@id='bodyContent']/div/div/h2[1]" )); + $this->assertEquals( "Release notes", $this->getText( LINK_DIV."h2[1]" )); $this->assertTrue( $this->isElementPresent( "submit-back" )); parent::clickBackButton(); // Navigate to the 'Copying' page $this->click( "link=Copying" ); $this->waitForPageToLoad( PAGE_LOAD_TIME ); - $this->assertEquals( "Copying", $this->getText( "//div[@id='bodyContent']/div/div/h2[1]" )); + $this->assertEquals( "Copying", $this->getText( LINK_DIV."h2[1]" )); $this->assertTrue($this->isElementPresent( "submit-back" )); parent::clickBackButton(); // Navigate to the 'Upgrading' page $this->click( "link=Upgrading" ); $this->waitForPageToLoad( PAGE_LOAD_TIME ); - $this->assertEquals( "Upgrading", $this->getText( "//div[@id='bodyContent']/div/div/h2[1]" )); + $this->assertEquals( "Upgrading", $this->getText( LINK_DIV."h2[1]" )); } } diff --git a/tests/selenium/installer/MediaWikiUpgradeExistingDatabaseTestCase.php b/tests/selenium/installer/MediaWikiUpgradeExistingDatabaseTestCase.php index 0fce71d827..8e945d82a7 100644 --- a/tests/selenium/installer/MediaWikiUpgradeExistingDatabaseTestCase.php +++ b/tests/selenium/installer/MediaWikiUpgradeExistingDatabaseTestCase.php @@ -50,9 +50,9 @@ class MediaWikiUpgradeExistingDatabaseTestCase extends MediaWikiInstallationComm parent::navigateInstallPage( $databaseName ); $this->open( "http://localhost:".PORT."/".DIRECTORY_NAME."/config/index.php" ); - $this->assertEquals( "Install", $this->getText( "//div[@id='bodyContent']/div/div/h2" )); + $this->assertEquals( "Install", $this->getText( LINK_DIV."h2" )); $this->assertEquals( "Warning: You seem to have already installed MediaWiki and are trying to install it again. Please proceed to the next page.", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/div[1]/div[2]" )); + $this->getText( LINK_DIV."div[2]/form/div[1]/div[2]" )); // 'Optionis' page parent::clickBackButton(); @@ -69,27 +69,27 @@ class MediaWikiUpgradeExistingDatabaseTestCase extends MediaWikiInstallationComm parent::clickContinueButton(); // 'Upgrade existing installation' page displayed next to the 'Connect to database' page. - $this->assertEquals( "Upgrade existing installation", $this->getText( "//div[@id='bodyContent']/div/div/h2" )); + $this->assertEquals( "Upgrade existing installation", $this->getText( LINK_DIV."h2" )); // Warning message displayed. $this->assertEquals( "There are MediaWiki tables in this database. To upgrade them to MediaWiki 1.18alpha, click Continue.", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/div[1]/div[2]" )); + $this->getText( LINK_DIV."div[2]/form/div[1]/div[2]" )); parent::clickContinueButton(); $this->assertEquals( "Upgrade existing installation", - $this->getText( "//div[@id='bodyContent']/div/div/h2" )); + $this->getText( LINK_DIV."h2" )); // 'Upgrade complete.' text display $this->assertEquals("Upgrade complete.", - $this->getText("//div[@id='bodyContent']/div/div/div[4]/form/div[1]/div[2]/p[1]")); + $this->getText( LINK_FORM."div[1]/div[2]/p[1]")); $this->assertEquals("You can now start using your wiki.", - $this->getText("//div[@id='bodyContent']/div/div/div[4]/form/div[1]/div[2]/p[2]")); + $this->getText( LINK_FORM."div[1]/div[2]/p[2]")); $this->assertTrue($this->isElementPresent( "submit-regenerate" )); $this->click( "submit-regenerate" ); $this->waitForPageToLoad( PAGE_LOAD_TIME ); $this->assertEquals( "Database settings", - $this->getText( "//div[@id='bodyContent']/div/div/h2" )); + $this->getText( LINK_DIV."h2" )); // 'Database settings' page parent::clickContinueButton(); @@ -102,7 +102,7 @@ class MediaWikiUpgradeExistingDatabaseTestCase extends MediaWikiInstallationComm // Install page $this->assertEquals( "Warning: You seem to have already installed MediaWiki and are trying to install it again. Please proceed to the next page.", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/div[1]/div[2]" )); + $this->getText( LINK_FORM."div[1]/div[2]" )); parent::clickContinueButton(); // complete diff --git a/tests/selenium/installer/MediaWikiUserInterfaceTestCase.php b/tests/selenium/installer/MediaWikiUserInterfaceTestCase.php index 456b1b300f..14c82001c2 100644 --- a/tests/selenium/installer/MediaWikiUserInterfaceTestCase.php +++ b/tests/selenium/installer/MediaWikiUserInterfaceTestCase.php @@ -70,18 +70,18 @@ class MediaWikiUserInterfaceTestCase extends MediaWikiInstallationCommonFunction parent::navigateLanguagePage(); // Verify 'Language' heading - $this->assertEquals( "Language", $this->getText( "//div[@id='bodyContent']/div/div/h2" )); + $this->assertEquals( "Language", $this->getText( LINK_DIV."h2" )); // 'Your language' label available $this->assertEquals( "Your language:", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/div[1]/div[1]/label" )); + $this->getText( LINK_FORM."div[1]/div[1]/label" )); // 'Your language' dropdown available $this->assertTrue( $this->isElementPresent( "UserLang" )); // 'Wiki language' label available $this->assertEquals( "Wiki language:", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/div[2]/div[1]/label" )); + $this->getText( LINK_FORM."div[2]/div[1]/label" )); // 'Wiki language' dropdown available $this->assertTrue($this->isElementPresent( "ContLang" )); @@ -94,11 +94,11 @@ class MediaWikiUserInterfaceTestCase extends MediaWikiInstallationCommonFunction // Verify 'Welcome to MediaWiki!' heading $this->assertEquals( "Welcome to MediaWiki!", - $this->getText( "//div[@id='bodyContent']/div/div/h2" )); + $this->getText( LINK_DIV."h2" )); // Verify environment ok text displayed. $this->assertEquals( "The environment has been checked.You can install MediaWiki.", - $this->getText( "//div[@id='bodyContent']/div/div/div[7]/span" )); + $this->getText( LINK_DIV."div[7]/span" )); } @@ -108,12 +108,12 @@ class MediaWikiUserInterfaceTestCase extends MediaWikiInstallationCommonFunction // 'MYSQL radio button available $this->assertEquals( "MySQL", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/div[2]/div[2]/ul/li[1]/label" )); - $this->assertTrue( $this->isElementPresent( "//div[@id='bodyContent']/div/div/div[2]/form/div[2]/div[2]/ul/li[1]" )); + $this->getText( LINK_FORM."div[2]/div[2]/ul/li[1]/label" )); + $this->assertTrue( $this->isElementPresent( LINK_FORM."div[2]/div[2]/ul/li[1]" )); // 'SQLite' radio button available - $this->assertTrue( $this->isElementPresent( "//div[@id='bodyContent']/div/div/div[2]/form/div[2]/div[2]/ul/li[2]" )); - $this->assertEquals( "SQLite", $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/div[2]/div[2]/ul/li[2]/label ")); + $this->assertTrue( $this->isElementPresent( LINK_FORM."div[2]/div[2]/ul/li[2]" )); + $this->assertEquals( "SQLite", $this->getText( LINK_FORM."div[2]/div[2]/ul/li[2]/label ")); // 'Database host' label available $this->assertEquals( "Database host:", $this->getText( "//div[@id='DB_wrapper_mysql']/div/div[1]/label" )); @@ -164,16 +164,16 @@ class MediaWikiUserInterfaceTestCase extends MediaWikiInstallationCommonFunction parent::navigateDatabaseSettingsPage( $databaseName ); // 'Database settings' text available. - $this->assertEquals( "Database settings", $this->getText( "//div[@id='bodyContent']/div/div/h2" )); + $this->assertEquals( "Database settings", $this->getText( LINK_DIV."h2" )); // 'Database account for web access' section available - $this->assertTrue( $this->isElementPresent( "//div[@id='bodyContent']/div/div/div[2]/form/fieldset" )); + $this->assertTrue( $this->isElementPresent( LINK_FORM."fieldset" )); // 'Database account for web access' label available - $this->assertEquals( "Database account for web access", $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/fieldset/legend" )); + $this->assertEquals( "Database account for web access", $this->getText( LINK_FORM."fieldset/legend" )); // 'Use the same account as for installation' check box available - $this->assertEquals( "Use the same account as for installation", $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/fieldset/div[1]/label" )); + $this->assertEquals( "Use the same account as for installation", $this->getText( LINK_FORM."fieldset/div[1]/label" )); // 'Use the same account as for installation' check box is selected by default $this->assertEquals( "on", $this->getValue( "mysql__SameAccount" )); @@ -209,41 +209,43 @@ class MediaWikiUserInterfaceTestCase extends MediaWikiInstallationCommonFunction // 'Storage engine' label available $this->assertEquals( "Storage engine:", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/div[1]/div[1]/label")); + $this->getText( LINK_FORM."div[1]/div[1]/label")); // 'InnoDB' label available $this->assertEquals( "InnoDB", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/div[1]/div[2]/ul/li[1]/label" )); + $this->getText( LINK_FORM."div[1]/div[2]/ul/li[1]/label" )); // 'InnoDB' radio button available $this->assertTrue( $this->isElementPresent( "mysql__MysqlEngine_InnoDB" )); // 'MyISAM' label available - $this->assertEquals( "MyISAM", $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/div[1]/div[2]/ul/li[2]/label" )); + $this->assertEquals( "MyISAM", $this->getText( LINK_FORM."div[1]/div[2]/ul/li[2]/label" )); // 'MyISAM' radio button available $this->assertTrue($this->isElementPresent( "mysql__MysqlEngine_MyISAM" )); // 'Database character set' label available $this->assertEquals( "Database character set:", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/div[3]/div[1]/label" )); + $this->getText( LINK_FORM."div[3]/div[1]/label" )); // 'Binary' radio button available $this->assertTrue( $this->isElementPresent( "mysql__MysqlCharset_binary" )); // 'Binary' radio button available - $this->assertEquals( "Binary", $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/div[3]/div[2]/ul/li[1]/label" )); + $this->assertEquals( "Binary", $this->getText( LINK_FORM."div[3]/div[2]/ul/li[1]/label" )); // 'UTF-8' radio button available $this->assertTrue( $this->isElementPresent( "mysql__MysqlCharset_utf8" )); // 'UTF-8' label available - $this->assertEquals( "UTF-8", $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/div[3]/div[2]/ul/li[2]/label" )); + $this->assertEquals( "UTF-8", $this->getText( LINK_FORM."div[3]/div[2]/ul/li[2]/label" )); // 'Binary' radio button is selected $this->assertEquals( "on", $this->getValue( "mysql__MysqlCharset_binary" )); } + + public function testNamePageUI() { $databaseName = DB_NAME_PREFIX."_name_UI"; @@ -251,13 +253,13 @@ class MediaWikiUserInterfaceTestCase extends MediaWikiInstallationCommonFunction // 'Name of wiki' text box available $this->assertEquals( "Name of wiki:", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/div[1]/div[1]/label" )); + $this->getText( LINK_FORM."div[1]/div[1]/label" )); $this->assertTrue( $this->isElementPresent( "config_wgSitename" )); // 'Project namespace' label available $this->assertEquals( "Project namespace:", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/div[2]/div[1]/label" )); + $this->getText( LINK_FORM."div[2]/div[1]/label" )); // 'Same as the wiki name' radio button available $this->assertTrue( $this->isElementPresent( "config__NamespaceType_site-name" )); @@ -270,50 +272,50 @@ class MediaWikiUserInterfaceTestCase extends MediaWikiInstallationCommonFunction // 'Same as the wiki name' label available $this->assertEquals( "Same as the wiki name:", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/div[2]/div[2]/ul/li[1]/label" )); + $this->getText( LINK_FORM."div[2]/div[2]/ul/li[1]/label" )); // 'Project' label available $this->assertEquals("Project", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/div[2]/div[2]/ul/li[2]/label" )); + $this->getText( LINK_FORM."div[2]/div[2]/ul/li[2]/label" )); // 'Project' label available $this->assertEquals( "Other (specify)", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/div[2]/div[2]/ul/li[3]/label" )); + $this->getText( LINK_FORM."div[2]/div[2]/ul/li[3]/label" )); // 'Same as the wiki name' radio button selected by default $this->assertEquals( "on", $this->getValue( "config__NamespaceType_site-name" )); // 'Administrator account' section available - $this->assertTrue( $this->isElementPresent( "//div[@id='bodyContent']/div/div/div[2]/form/fieldset" )); + $this->assertTrue( $this->isElementPresent( LINK_FORM."fieldset" )); // 'Administrator account' label available $this->assertEquals( "Administrator account", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/fieldset/legend" )); + $this->getText( LINK_FORM."fieldset/legend" )); // 'Your Name' label available $this->assertEquals( "Your name:", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/fieldset/div[1]/div[1]/label" )); + $this->getText( LINK_FORM."fieldset/div[1]/div[1]/label" )); // 'Your Name' text box available $this->assertTrue( $this->isElementPresent( "config__AdminName" )); // 'Password' label available $this->assertEquals( "Password:", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/fieldset/div[2]/div[1]/label" )); + $this->getText( LINK_FORM."fieldset/div[2]/div[1]/label" )); // 'Password' text box available $this->assertTrue( $this->isElementPresent( "config__AdminPassword" )); // 'Password again' label available $this->assertEquals( "Password again:", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/fieldset/div[3]/div[1]/label" )); + $this->getText( LINK_FORM."fieldset/div[3]/div[1]/label" )); // 'Password again' text box available $this->assertTrue( $this->isElementPresent( "config__AdminPassword2" )); // 'Email address' label avaialble $this->assertEquals( "E-mail address:", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/fieldset/div[4]/div[1]/label" )); + $this->getText( LINK_FORM."fieldset/div[4]/div[1]/label" )); // 'Email address' text box available $this->assertTrue( $this->isElementPresent( "config__AdminEmail" )); @@ -323,28 +325,28 @@ class MediaWikiUserInterfaceTestCase extends MediaWikiInstallationCommonFunction // 'Subscribe to the release announcements mailing list. ' label avaialble $this->assertEquals( "Subscribe to the release announcements mailing list.", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/fieldset/div[5]/label" )); + $this->getText( LINK_FORM."fieldset/div[5]/label" )); // 'release announcements mailing list' link available $this->assertTrue( $this->isElementPresent( "link=release announcements mailing list" )); // Message displayed $this->assertEquals( "You are almost done! You can now skip the remaining configuration and install the wiki right now.", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/div[4]/div[2]" )); + $this->getText( LINK_FORM."/div[4]/div[2]" )); // 'Ask me more questions.' radio button available $this->assertTrue( $this->isElementPresent( "config__SkipOptional_continue" )); // 'Ask me more questions.' label available $this->assertEquals( "Ask me more questions.", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/div[5]/div[2]/ul/li[1]/label" )); + $this->getText( LINK_FORM."div[5]/div[2]/ul/li[1]/label" )); // 'I'm bored already, just install the wiki' radio button is avaiable $this->assertTrue( $this->isElementPresent( "config__SkipOptional_skip" )); // 'I'm bored already, just install the wiki' label available $this->assertEquals( "I'm bored already, just install the wiki.", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/div[5]/div[2]/ul/li[2]/label" )); + $this->getText( LINK_FORM."div[5]/div[2]/ul/li[2]/label" )); // 'Ask me more questions.' radio button is default selected $this->assertEquals( "on", $this->getValue( "config__SkipOptional_continue" )); @@ -358,7 +360,7 @@ class MediaWikiUserInterfaceTestCase extends MediaWikiInstallationCommonFunction parent::navigateOptionsPage($databaseName); // 'Options' label available - $this->assertEquals( "Options", $this->getText("//div[@id='bodyContent']/div/div/h2")); + $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" )); @@ -370,7 +372,7 @@ class MediaWikiUserInterfaceTestCase extends MediaWikiInstallationCommonFunction $this->assertEquals( "apache@localhost", $this->getValue( "config_wgPasswordSender" )); // 'Logo URL' label available - $this->assertEquals( "Logo URL:", $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/fieldset[2]/div[3]/div[1]/label" )); + $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" )); @@ -383,7 +385,7 @@ class MediaWikiUserInterfaceTestCase extends MediaWikiInstallationCommonFunction // 'Enable file uploads' label available $this->assertEquals( "Enable file uploads", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/fieldset[2]/div[1]/label" )); + $this->getText( LINK_FORM."fieldset[2]/div[1]/label" )); // 'Enable file uploads' check box is not selected $this->assertEquals( "off", $this->getValue( "config_wgEnableUploads" )); @@ -411,21 +413,21 @@ class MediaWikiUserInterfaceTestCase extends MediaWikiInstallationCommonFunction // Verify installation done messages display $this->assertEquals( "Setting up database... done", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/ul/li[1]" )); + $this->getText( LINK_FORM."ul/li[1]" )); $this->assertEquals( "Creating tables... done", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/ul/li[2]" )); + $this->getText( LINK_FORM."ul/li[2]" )); $this->assertEquals( "Creating database user... done", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/ul/li[3]" )); + $this->getText( LINK_FORM."ul/li[3]" )); $this->assertEquals( "Populating default interwiki table... done", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/ul/li[4]" )); + $this->getText( LINK_FORM."ul/li[4]" )); $this->assertEquals( "Generating secret key... done", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/ul/li[5]" )); + $this->getText( LINK_FORM."ul/li[5]" )); $this->assertEquals( "Generating default upgrade key... done", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/ul/li[6]" )); + $this->getText( LINK_FORM."ul/li[6]" )); $this->assertEquals( "Creating administrator user account... done", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/ul/li[7]" )); + $this->getText( LINK_FORM."ul/li[7]" )); $this->assertEquals( "Creating main page with default content... done", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/ul/li[8]" )); + $this->getText( LINK_FORM."ul/li[8]" )); } @@ -437,10 +439,10 @@ class MediaWikiUserInterfaceTestCase extends MediaWikiInstallationCommonFunction // 'Congratulations!' text display $this->assertEquals("Congratulations!", - $this->getText("//div[@id='bodyContent']/div/div/div[2]/form/div[1]/div[2]/p[1]/b")); + $this->getText( LINK_FORM."div[1]/div[2]/p[1]/b")); // 'LocalSettings.php' generated message display $this->assertEquals( "The installer has generated a LocalSettings.php file. It contains all your configuration.", - $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/div[1]/div[2]/p[2]" )); + $this->getText( LINK_FORM."div[1]/div[2]/p[2]" )); // 'Download LocalSettings.php'' link available $this->assertTrue( $this->isElementPresent( "link=Download LocalSettings.php" )); @@ -458,7 +460,7 @@ class MediaWikiUserInterfaceTestCase extends MediaWikiInstallationCommonFunction $this->waitForPageToLoad( PAGE_LOAD_TIME ); // Restart installation' label should be available. - $this->assertEquals( "Restart installation", $this->getText( "//div[@id='bodyContent']/div/div/h2" )); + $this->assertEquals( "Restart installation", $this->getText( LINK_DIV."h2" )); //'Do you want to clear all saved data that you have entered and restart the installation process?' label available $this->assertEquals( "Do you want to clear all saved data that you have entered and restart the installation process?", @@ -516,24 +518,24 @@ class MediaWikiUserInterfaceTestCase extends MediaWikiInstallationCommonFunction parent::navigateLanguagePage(); // Verfy right framework texts display $this->assertEquals( "Language", - $this->getText( "//div[@id='bodyContent']/div/div/div[1]/ul[1]/li[1]" )); + $this->getText( LINK_RIGHT_FRAMEWORK."li[1]" )); $this->assertEquals( "Existing wiki", - $this->getText( "//div[@id='bodyContent']/div/div/div[1]/ul[1]/li[2]" )); + $this->getText( LINK_RIGHT_FRAMEWORK."li[2]" )); $this->assertEquals( "Welcome to MediaWiki!", - $this->getText( "//div[@id='bodyContent']/div/div/div[1]/ul[1]/li[3]" )); + $this->getText( LINK_RIGHT_FRAMEWORK."li[3]" )); $this->assertEquals( "Connect to database", - $this->getText( "//div[@id='bodyContent']/div/div/div[1]/ul[1]/li[4]" )); + $this->getText( LINK_RIGHT_FRAMEWORK."li[4]" )); $this->assertEquals( "Upgrade existing installation", - $this->getText( "//div[@id='bodyContent']/div/div/div[1]/ul[1]/li[5]" )); + $this->getText( LINK_RIGHT_FRAMEWORK."li[5]" )); $this->assertEquals( "Database settings", - $this->getText( "//div[@id='bodyContent']/div/div/div[1]/ul[1]/li[6]" )); + $this->getText( LINK_RIGHT_FRAMEWORK."li[6]" )); $this->assertEquals( "Name", - $this->getText( "//div[@id='bodyContent']/div/div/div[1]/ul[1]/li[7]" )); + $this->getText( LINK_RIGHT_FRAMEWORK."li[7]" )); $this->assertEquals( "Options", - $this->getText( "//div[@id='bodyContent']/div/div/div[1]/ul[1]/li[8]" )); + $this->getText( LINK_RIGHT_FRAMEWORK."li[8]" )); $this->assertEquals( "Install", - $this->getText( "//div[@id='bodyContent']/div/div/div[1]/ul[1]/li[9]" )); + $this->getText( LINK_RIGHT_FRAMEWORK."li[9]" )); $this->assertEquals( "Complete!", - $this->getText( "//div[@id='bodyContent']/div/div/div[1]/ul[1]/li[10]/span" )); - } + $this->getText( LINK_RIGHT_FRAMEWORK."li[10]/span" )); + } }