PHP Classes
elePHPant
Icontem

File: Test/Form/Form.php

Recommend this page to a friend!
Stumble It! Stumble It! Bookmark in del.icio.us Bookmark in del.icio.us
  Classes of MARY Matthieu  >  Html  >  Test/Form/Form.php  >  Download  
File: Test/Form/Form.php
Role: Unit test script
Content type: text/plain
Description: unit test case for Form object
Class: Html
Generate HTML pages using page element classes
Author: By
Last change:
Date: 7 years ago
Size: 4,820 bytes
 

Contents

Class file image Download
<?php
/**
 * $Id: Form.class.php 562 2006-09-28 16:38:53Z matthieu $
 */
if (!class_exists('Test_Form_Form')) {
    if (!
defined('__CLASS_PATH__')) {
       
define('__CLASS_PATH__', realpath(dirname(__FILE__) . '/../../'));
    }
    require_once
__CLASS_PATH__ . '/Autoload.php';
   
/**
     * unit test case for Form_Form class
     * @author matthieu <matthieu@phplibrairies.com>
     * @package html
     * @subpackage unit_test_case
     */
   
class Test_Form_Form extends Test_Html_Template implements Test_Html_Target_Interface, Test_Html_Design_Interface {
        const
__GET__ = 'GET';
        const
__FIELDNAME__ = 'formLabel';
        const
__DEFAULT_METHOD__ = Form_Form :: _METHOD_POST_;
        const
__DEFAULT_TARGET__ = Html_Target_Interface :: _TARG_SELF_;
       
/**
         * @var string $action the form action
         * @access private
         */
       
private $action = '';
       
/**
         * constructor
         * @access public
         * @return void
         */
       
public function __construct() {
           
parent :: __construct();
           
$this->fieldname = self :: __FIELDNAME__;
        }
       
/**
         * reinit the FormTextarea object
         * @access public
         * @return void
         */
       
public function setUp() {
           
$this->obj = new Form_Form($this->action);
        }
       
/**
         * test the set style method
         * @access public
         * @return void
         */
       
public function testDefault() {
           
$this->_testCode('<form action="' . $this->action . '" method="' . self :: __DEFAULT_METHOD__ . '" target="' . self :: __DEFAULT_TARGET__ . '">');
           
$this->_testGetter('getAction()', $this->action, $this->obj->getAction());
           
$this->_testGetter('getMethod()', self :: __DEFAULT_METHOD__, $this->obj->getMethod());
           
$this->_testGetter('getTarget()', self :: __DEFAULT_TARGET__, $this->obj->getTarget());
        }
       
/**
         * test the set style method
         * @access public
         * @return void
         */
       
public function testSetStyle() {
           
$this->obj->setStyle(parent :: __STYLE_CONTENT__);
           
$this->_testCode('<form action="' . $this->action . '" method="' . self :: __DEFAULT_METHOD__ . '" target="' . self :: __DEFAULT_TARGET__ . '" style="' . parent :: __STYLE_CONTENT__ . '">');
           
$this->_testGetter('getStyle()', parent :: __STYLE_CONTENT__, $this->obj->getStyle());
        }
       
/**
         * test the set style class method
         * @access public
         * @return void
         */
       
public function testSetStyleClass() {
           
$this->obj->setStyleClass(parent :: __STYLE_CLASS_NAME__);
           
$this->_testCode('<form action="' . $this->action . '" method="' . self :: __DEFAULT_METHOD__ . '" target="' . self :: __DEFAULT_TARGET__ . '" class="' . parent :: __STYLE_CLASS_NAME__ . '">');
        }
       
/**
         * test the set style class method
         * @access public
         * @return void
         */
       
public function testSetName() {
           
$this->obj->setName($this->fieldname);
           
$this->_testCode('<form action="' . $this->action . '" method="' . self :: __DEFAULT_METHOD__ . '" target="' . self :: __DEFAULT_TARGET__ . '" name="' . $this->fieldname . '">');
        }
       
/**
         * test the set method method
         * @access public
         * @return void
         */
       
public function testSetMethod() {
           
$this->obj->setMethod(self :: __GET__);
           
$this->_testCode('<form action="' . $this->action . '" method="' . self :: __GET__ . '" target="' . self :: __DEFAULT_TARGET__ . '">');
        }
       
/**
         * test the set target method
         * @access public
         * @return void
         */
       
public function testSetTarget() {
           
$this->obj->setTarget(Html_Target_Interface :: _TARG_PARENT_);
           
$this->_testCode('<form action="' . $this->action . '" method="' . self :: __DEFAULT_METHOD__ . '" target="' . Html_Target_Interface :: _TARG_PARENT_ . '">');
        }
       
/**
         * test the add js method
         * @access public
         * @return void
         */
       
public function testAddJS() {
           
$js = new Html_Javascript(Html_Javascript :: __ONSUBMIT__, "alert('ok')");
           
$this->obj->addJs($js);
           
$this->_testCode('<form action="' . $this->action . '" method="' . self :: __DEFAULT_METHOD__ . '" target="' . self :: __DEFAULT_TARGET__ . '" ' . $js->__toString() . '>');
            unset (
$js);
        }
       
/**
        * test the add js method with an unexpected js event
        * @access public
        * @return void
        */
       
public function testAddJSUnexpected() {
           
$this->obj->addJs(new Html_Javascript(Html_Javascript :: __ONCHANGE__, "alert('ok')"));
           
$this->_testCode('<form action="' . $this->action . '" method="' . self :: __DEFAULT_METHOD__ . '" target="' . self :: __DEFAULT_TARGET__ . '">');
        }
       
/**
        * test the set disabled method
        * @access public
        * @return void
        */
       
public function testSetDisabled() {
            try {
               
$this->obj->setDisabled();
               
$this->assertTrue(false, 'No exception is thrown when asking disabled method on ' . get_class($this->obj) . ' instance');
            }
            catch (
Exception $e) {
               
$this->_testCode('<form action="' . $this->action . '" method="' . self :: __DEFAULT_METHOD__ . '" target="' . self :: __DEFAULT_TARGET__ . '">');
            }
        }
    }
}