Current Path : /compat/linux/proc/self/root/usr/local/share/pear/test/XML_RSS/tests/ |
FreeBSD hs32.drive.ne.jp 9.1-RELEASE FreeBSD 9.1-RELEASE #1: Wed Jan 14 12:18:08 JST 2015 root@hs32.drive.ne.jp:/sys/amd64/compile/hs32 amd64 |
Current File : //compat/linux/proc/self/root/usr/local/share/pear/test/XML_RSS/tests/XML_RSS_Parsing_Test.php |
<?php // +------------------------------------------------------------------------+ // | PEAR :: XML_RSS | // +------------------------------------------------------------------------+ // | Copyright (c) 2004 Martin Jansen | // +------------------------------------------------------------------------+ // | This source file is subject to version 3.00 of the PHP License, | // | that is available at http://www.php.net/license/3_0.txt. | // | If you did not receive a copy of the PHP license and are unable to | // | obtain it through the world-wide-web, please send a note to | // | license@php.net so we can mail you a copy immediately. | // +------------------------------------------------------------------------+ // // $Id: XML_RSS_Parsing_Test.php 310689 2011-05-01 17:54:48Z kguest $ // if (!defined('PHPUnit_MAIN_METHOD')) { define('PHPUnit_MAIN_METHOD', 'XML_RSS_Parsing_Test::main'); } require_once "PHPUnit/Framework.php"; require_once "XML/RSS.php"; /** * Unit test suite for the XML_RSS package * * @author Martin Jansen <mj@php.net> * @extends PHPUnit_TestCase * @version $Id: XML_RSS_Parsing_Test.php 310689 2011-05-01 17:54:48Z kguest $ */ class XML_RSS_Parsing_Test extends PHPUnit_Framework_TestCase { public static function main() { require_once 'PHPUnit/TextUI/TestRunner.php'; PHPUnit_TextUI_TestRunner::run( new PHPUnit_Framework_TestSuite('XML_RSS_Parsing_Test') ); } function testParseLocalFile() { $result = array("PHP homepage" => "http://php.net/", "PEAR homepage" => "http://pear.php.net/", "PHP-GTK homepage" => "http://gtk.php.net/", "PHP QA homepage" => "http://qa.php.net/"); $values = array_values($result); $keys = array_keys($result); $i = 0; $r =& new XML_RSS(dirname(__FILE__) . '/test.rss'); $r->parse(); $this->assertEquals(count($r->getItems()), 4); foreach ($r->getItems() as $value) { $this->assertEquals($value['title'], $keys[$i]); $this->assertEquals($value['link'], $values[$i]); $i++; } } function testGetStructure() { $r =& new XML_RSS(dirname(__FILE__) . '/test.rss'); $r->parse(); $expected = 'a:7:{i:0;a:4:{s:4:"type";s:7:"channel";s:5:"title";s:4:"Test";s:4:"link";s:20:"http://pear.php.net/";s:11:"description";s:34:"This is a test channel for XML_RSS";}i:1;a:4:{s:4:"type";s:5:"image";s:5:"title";s:4:"PEAR";s:3:"url";s:38:"http://pear.php.net/gifs/pearsmall.gif";s:4:"link";s:20:"http://pear.php.net/";}i:2;a:4:{s:4:"type";s:4:"item";s:5:"title";s:12:"PHP homepage";s:4:"link";s:15:"http://php.net/";s:8:"category";a:1:{i:0;s:3:"php";}}i:3;a:4:{s:4:"type";s:4:"item";s:5:"title";s:13:"PEAR homepage";s:4:"link";s:20:"http://pear.php.net/";s:8:"category";a:2:{i:0;s:3:"php";i:1;s:4:"pear";}}i:4;a:4:{s:4:"type";s:4:"item";s:5:"title";s:16:"PHP-GTK homepage";s:4:"link";s:19:"http://gtk.php.net/";s:8:"category";a:2:{i:0;s:3:"php";i:1;s:3:"gtk";}}i:5;a:4:{s:4:"type";s:4:"item";s:5:"title";s:15:"PHP QA homepage";s:4:"link";s:18:"http://qa.php.net/";s:8:"category";a:2:{i:0;s:3:"php";i:1;s:2:"qa";}}i:6;a:5:{s:4:"type";s:9:"textinput";s:5:"title";s:15:"Search Slashdot";s:11:"description";s:23:"Search Slashdot stories";s:4:"name";s:5:"query";s:4:"link";s:29:"http://slashdot.org/search.pl";}}'; $actual = serialize($r->getStructure()); $this->assertEquals($expected, $actual); } function testGetStructureFromString() { $rss = file_get_contents(dirname(__FILE__) . '/test.rss'); $r =& new XML_RSS($rss); $r->parse(); $expected = 'a:7:{i:0;a:4:{s:4:"type";s:7:"channel";s:5:"title";s:4:"Test";s:4:"link";s:20:"http://pear.php.net/";s:11:"description";s:34:"This is a test channel for XML_RSS";}i:1;a:4:{s:4:"type";s:5:"image";s:5:"title";s:4:"PEAR";s:3:"url";s:38:"http://pear.php.net/gifs/pearsmall.gif";s:4:"link";s:20:"http://pear.php.net/";}i:2;a:4:{s:4:"type";s:4:"item";s:5:"title";s:12:"PHP homepage";s:4:"link";s:15:"http://php.net/";s:8:"category";a:1:{i:0;s:3:"php";}}i:3;a:4:{s:4:"type";s:4:"item";s:5:"title";s:13:"PEAR homepage";s:4:"link";s:20:"http://pear.php.net/";s:8:"category";a:2:{i:0;s:3:"php";i:1;s:4:"pear";}}i:4;a:4:{s:4:"type";s:4:"item";s:5:"title";s:16:"PHP-GTK homepage";s:4:"link";s:19:"http://gtk.php.net/";s:8:"category";a:2:{i:0;s:3:"php";i:1;s:3:"gtk";}}i:5;a:4:{s:4:"type";s:4:"item";s:5:"title";s:15:"PHP QA homepage";s:4:"link";s:18:"http://qa.php.net/";s:8:"category";a:2:{i:0;s:3:"php";i:1;s:2:"qa";}}i:6;a:5:{s:4:"type";s:9:"textinput";s:5:"title";s:15:"Search Slashdot";s:11:"description";s:23:"Search Slashdot stories";s:4:"name";s:5:"query";s:4:"link";s:29:"http://slashdot.org/search.pl";}}'; $actual = serialize($r->getStructure()); $this->assertEquals($expected, $actual); } function testGetChannelInfo() { $r =& new XML_RSS(dirname(__FILE__) . '/test.rss'); $r->parse(); $expected = array( 'title' => 'Test', 'link' => 'http://pear.php.net/', 'description' => 'This is a test channel for XML_RSS' ); $actual = $r->getChannelInfo(); $this->assertEquals($expected, $actual); } function testGetItems() { $r =& new XML_RSS(dirname(__FILE__) . '/test.rss'); $r->parse(); $expected = array(); $expected[] = array( 'title' => 'PHP homepage', 'link' => 'http://php.net/', 'category' => array('php') ); $expected[] = array( 'title' => 'PEAR homepage', 'link' => 'http://pear.php.net/', 'category' => array('php', 'pear') ); $expected[] = array( 'title' => 'PHP-GTK homepage', 'link' => 'http://gtk.php.net/', 'category' => array('php', 'gtk') ); $expected[] = array( 'title' => 'PHP QA homepage', 'link' => 'http://qa.php.net/', 'category' => array('php', 'qa') ); $actual = $r->getItems(); $this->assertEquals($expected, $actual); } function testGetImages() { $r =& new XML_RSS(dirname(__FILE__) . '/test.rss'); $r->parse(); $expected = array(); $expected[] = array( 'title' => 'PEAR', 'url' => 'http://pear.php.net/gifs/pearsmall.gif', 'link' => 'http://pear.php.net/' ); $actual = $r->getImages(); $this->assertEquals($expected, $actual); } function testGetTextinputs() { $r =& new XML_RSS(dirname(__FILE__) . '/test.rss'); $r->parse(); $expected = array( 'title' => 'Search Slashdot', 'description' => 'Search Slashdot stories', 'name' => 'query', 'link' => 'http://slashdot.org/search.pl' ); $actual = $r->getTextinputs(); $this->assertEquals($expected, $actual); } } if (PHPUnit_MAIN_METHOD == 'XML_RSS_Parsing_Test::main') { XML_RSS_Parsing_Test::main(); } ?>