phpmyadmin/test/selenium/PmaSeleniumTestCase.php
Dieter Adriaenssens e6542c5dbf fix typos
2013-03-05 15:11:16 +01:00

118 lines
2.3 KiB
PHP

<?php
/* vim: set expandtab sw=4 ts=4 sts=4: */
/**
* Selenium parent class for TestCases
*
* @package PhpMyAdmin-test
* @subpackage Selenium
*/
/**
* PmaSeleniumTestCase class
*
* @package PhpMyAdmin-test
* @subpackage Selenium
*/
class PmaSeleniumTestCase
{
/**
* Username of the user
*
* @access private
* @var string
*/
private $_txtUsername;
/**
* Password for the user
*
* @access private
* @var string
*/
private $_txtPassword;
/**
* id of the login button
*
* @access private
* @var string
*/
private $_btnLogin;
/**
* Selenium Context
*
* @access private
* @var object
*/
private $_selenium;
/**
* Configuration Instance
*
* @access private
* @var object
*/
private $_config;
/**
* constructor
*
* @param object $selenium Selenium Context
*/
public function __construct($selenium)
{
$this->_txtUsername = 'input_username';
$this->_txtPassword = 'input_password';
$this->_btnLogin = 'input_go';
$this->_config = new TestConfig();
$this->_selenium = $selenium;
}
/**
* perform a login
*
* @param string $username Username
* @param string $password Password
*
* @return void
*/
public function login($username, $password)
{
$this->_selenium->open($this->_config->getLoginURL());
$this->_selenium->type($this->_txtUsername, $username);
$this->_selenium->type($this->_txtPassword, $password);
$this->_selenium->click($this->_btnLogin);
$this->_selenium->waitForPageToLoad($this->_config->getTimeoutValue());
}
/**
* Checks whether the login is successful
*
* @return boolean
*/
public function isSuccessLogin()
{
if ($this->_selenium->isElementPresent("//*[@id=\"serverinfo\"]")) {
return true;
} else {
return false;
}
}
/**
* Checks whether the login is unsuccessful
*
* @return boolean
*/
public function isUnsuccessLogin()
{
if ($this->_selenium->isElementPresent("css=div.error")) {
return true;
} else {
return false;
}
}
}
?>