<?php /** * Base include file for SimpleTest. * @package SimpleTest * @subpackage WebTester * @version $Id$ */ /**#@+ * include SimpleTest files */ require_once(dirname(__FILE__) . '/tag.php'); require_once(dirname(__FILE__) . '/encoding.php'); /**#@-*/ /** * Used to extract form elements for testing against. * Searches by name attribute. * @package SimpleTest * @subpackage WebTester */ class SimpleByName { protected $_name; /** * Stashes the name for later comparison. * @param string $name Name attribute to match. */ function SimpleByName($name) { $this->_name = $name; } /** * Compares with name attribute of widget. * @param SimpleWidget $widget Control to compare. * @access public */ function isMatch($widget) { return ($widget->getName() == $this->_name); } } /** * Used to extract form elements for testing against. * Searches by visible label or alt text. * @package SimpleTest * @subpackage WebTester */ class SimpleByLabel { protected $_label; /** * Stashes the name for later comparison. * @param string $label Visible text to match. */ function SimpleByLabel($label) { $this->_label = $label; } /** * Comparison. Compares visible text of widget or * related label. * @param SimpleWidget $widget Control to compare. * @access public */ function isMatch($widget) { if (! method_exists($widget, 'isLabel')) { return false; } return $widget->isLabel($this->_label); } } /** * Used to extract form elements for testing against. * Searches dy id attribute. * @package SimpleTest * @subpackage WebTester */ class SimpleById { protected $_id; /** * Stashes the name for later comparison. * @param string $id ID atribute to match. */ function SimpleById($id) { $this->_id = $id; } /** * Comparison. Compares id attribute of widget. * @param SimpleWidget $widget Control to compare. * @access public */ function isMatch($widget) { return $widget->isId($this->_id); } } /** * Used to extract form elements for testing against. * Searches by visible label, name or alt text. * @package SimpleTest * @subpackage WebTester */ class SimpleByLabelOrName { protected $_label; /** * Stashes the name/label for later comparison. * @param string $label Visible text to match. */ function SimpleByLabelOrName($label) { $this->_label = $label; } /** * Comparison. Compares visible text of widget or * related label or name. * @param SimpleWidget $widget Control to compare. * @access public */ function isMatch($widget) { if (method_exists($widget, 'isLabel')) { if ($widget->isLabel($this->_label)) { return true; } } return ($widget->getName() == $this->_label); } } ?>