http://www.mediawiki.org/wiki/Special:Code/MediaWiki/70320

Revision: 70320
Author:   mglaser
Date:     2010-08-02 08:04:16 +0000 (Mon, 02 Aug 2010)

Log Message:
-----------
* log browser used
* improve automated login of test user
credits to priyanka dhanda

Modified Paths:
--------------
    trunk/phase3/maintenance/tests/selenium/Selenium.php

Modified: trunk/phase3/maintenance/tests/selenium/Selenium.php
===================================================================
--- trunk/phase3/maintenance/tests/selenium/Selenium.php        2010-08-02 
07:44:02 UTC (rev 70319)
+++ trunk/phase3/maintenance/tests/selenium/Selenium.php        2010-08-02 
08:04:16 UTC (rev 70320)
@@ -10,8 +10,10 @@
 
        public static function getInstance() {
                global $wgSeleniumTestsBrowsers, $wgSeleniumTestsSeleniumHost, 
$wgSeleniumTestsUseBrowser;
-               global $wgSeleniumServerPort;
+               global $wgSeleniumServerPort, $wgSeleniumLogger;
+
                if ( null === self::$_instance ) {
+                       $wgSeleniumLogger->write( "Browser: " . 
$wgSeleniumTestsBrowsers[$wgSeleniumTestsUseBrowser] );
                        self::$_instance = new self( 
$wgSeleniumTestsBrowsers[$wgSeleniumTestsUseBrowser],
                                                        self::getBaseUrl(),
                                                        
$wgSeleniumTestsSeleniumHost,
@@ -46,13 +48,27 @@
                $this->type( 'wpName1', $wgSeleniumTestsWikiUser );
                $this->type( 'wpPassword1', $wgSeleniumTestsWikiPassword );
                $this->click( "//inp...@id='wpLoginAttempt']" );
-               $value = $this->doCommand( 'assertTitle', array( 'Login 
successful*' ) );
+               $this->waitForPageToLoad(5000);
+               //after login we redirect to the main page. So check whether 
the "Prefernces" top menu item exists
+               $value = $this->isElementPresent( "//l...@id='pt-preferences']" 
);
+               if ( $value != true ) {
+                       throw new Testing_Selenium_Exception( "Login Failed" );
+               }
+               
        }
 
        public function loadPage( $title, $action ) {
                $this->open( self::getBaseUrl() . '/index.php?title=' . $title 
. '&action=' . $action );
        }
-
+       
+       /*
+        * Log to console or html depending on the value of 
$wgSeleniumTestsRunMode
+        */
+       public function log( $message ) {
+               global $wgSeleniumLogger;
+               $wgSeleniumLogger->write( $message );
+       }
+       
        // Prevent external cloning
        protected function __clone() { }
        // Prevent external construction



_______________________________________________
MediaWiki-CVS mailing list
MediaWiki-CVS@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs

Reply via email to