CHips L MINI SHELL

CHips L pro

Current Path : /opt/cpanel/ea-php54/root/usr/share/tests/pear/XML_Serializer/tests/
Upload File :
Current File : //opt/cpanel/ea-php54/root/usr/share/tests/pear/XML_Serializer/tests/Unserializer_ObjectsTest.php

<?php
/**
 * Unit Tests for serializing arrays
 *
 * @package    XML_Serializer
 * @subpackage tests
 * @author     Stephan Schmidt <schst@php-tools.net>
 * @author     Chuck Burgess <ashnazg@php.net>
 */

require_once 'XML/Unserializer.php';

/**
 * Unit Tests for serializing arrays
 *
 * @package    XML_Serializer
 * @subpackage tests
 * @author     Stephan Schmidt <schst@php-tools.net>
 * @author     Chuck Burgess <ashnazg@php.net>
 */
class XML_Unserializer_Objects_TestCase extends PHPUnit_Framework_TestCase {

   /**
    * Test unserializing to a stdClass object
    */
    public function testStdClass()
    {
        $u = new XML_Unserializer();
        $u->setOption(XML_UNSERIALIZER_OPTION_COMPLEXTYPE, 'object');
        $xml = '<xml><foo>bar</foo></xml>';
        $u->unserialize($xml);
        $result = new stdClass();
        $result->foo = 'bar';
        $this->assertEquals($result, $u->getUnserializedData());
    }

   /**
    * Test unserializing to a custom class
    */
    public function testDefaultClass()
    {
        $u = new XML_Unserializer();
        $u->setOption(XML_UNSERIALIZER_OPTION_COMPLEXTYPE, 'object');
        $u->setOption(XML_UNSERIALIZER_OPTION_DEFAULT_CLASS, 'Foo');
        $xml = '<xml><foo>bar</foo></xml>';
        $u->unserialize($xml);
        $result = new Foo();
        $result->foo = 'bar';
        $this->assertEquals($result, $u->getUnserializedData());
    }

   /**
    * Test unserializing to a class based on the tag name
    */
    public function testTagnameAsClass()
    {
        $u = new XML_Unserializer();
        $u->setOption(XML_UNSERIALIZER_OPTION_COMPLEXTYPE, 'object');
        $u->setOption(XML_UNSERIALIZER_OPTION_DEFAULT_CLASS, 'Foo');
        $xml = '<foo><bar><boo>tomato</boo></bar></foo>';
        $u->unserialize($xml);
        $result = new Foo();
        $result->bar = new Bar();
        $result->bar->boo = 'tomato';
        $this->assertEquals($result, $u->getUnserializedData());
    }

   /**
    * Test unserializing with a setter method
    */
    public function testSetterMethod()
    {
        $u = new XML_Unserializer();
        $u->setOption(XML_UNSERIALIZER_OPTION_COMPLEXTYPE, 'object');
        $u->setOption(XML_UNSERIALIZER_OPTION_DEFAULT_CLASS, 'Foo');
        $xml = '<SetterExample><foo>tomato</foo></SetterExample>';
        $u->unserialize($xml);
        $result = new SetterExample();
        $result->setFoo('tomato');
        $this->assertEquals($result, $u->getUnserializedData());
    }

}

class Foo {}

class Bar {}

class SetterExample {
    private $_hidden = null;

    public function setFoo($foo)
    {
        $this->_hidden = $foo;
    }
}
?>

Copyright 2K16 - 2K18 Indonesian Hacker Rulez