Add tests for raw parameter.
authorJan Schneider <jan@horde.org>
Mon, 10 May 2010 12:21:15 +0000 (14:21 +0200)
committerJan Schneider <jan@horde.org>
Mon, 10 May 2010 12:21:15 +0000 (14:21 +0200)
framework/Url/test/Horde/Url/RawTest.php [new file with mode: 0644]

diff --git a/framework/Url/test/Horde/Url/RawTest.php b/framework/Url/test/Horde/Url/RawTest.php
new file mode 100644 (file)
index 0000000..e7b7eeb
--- /dev/null
@@ -0,0 +1,49 @@
+<?php
+/**
+ * @author     Jan Schneider <jan@horde.org>
+ * @license    http://www.fsf.org/copyleft/lgpl.html LGPL
+ * @category   Horde
+ * @package    Horde_Url
+ * @subpackage UnitTests
+ */
+
+class Horde_Url_RawTest extends PHPUnit_Framework_TestCase
+{
+    public function testFromString()
+    {
+        $url = new Horde_Url('test?foo=1&bar=2');
+        $this->assertEquals('test?foo=1&bar=2', (string)$url);
+        $url = new Horde_Url('test?foo=1&bar=2', true);
+        $this->assertEquals('test?foo=1&bar=2', (string)$url);
+        $url = new Horde_Url('test?foo=1&bar=2', false);
+        $this->assertEquals('test?foo=1&amp;bar=2', (string)$url);
+
+        $url = new Horde_Url('test?foo=1&amp;bar=2');
+        $this->assertEquals('test?foo=1&amp;bar=2', (string)$url);
+        $url = new Horde_Url('test?foo=1&bar=2', true);
+        $this->assertEquals('test?foo=1&bar=2', (string)$url);
+        $url = new Horde_Url('test?foo=1&bar=2', false);
+        $this->assertEquals('test?foo=1&amp;bar=2', (string)$url);
+    }
+
+    public function testFromUrl()
+    {
+        $baseurl = new Horde_Url('test', true);
+        $baseurl->add(array('foo' => 1, 'bar' => 2));
+        $url = new Horde_Url($baseurl);
+        $this->assertEquals('test?foo=1&bar=2', (string)$url);
+        $url = new Horde_Url($baseurl, true);
+        $this->assertEquals('test?foo=1&bar=2', (string)$url);
+        $url = new Horde_Url($baseurl, false);
+        $this->assertEquals('test?foo=1&amp;bar=2', (string)$url);
+
+        $baseurl = new Horde_Url('test', false);
+        $baseurl->add(array('foo' => 1, 'bar' => 2));
+        $url = new Horde_Url($baseurl);
+        $this->assertEquals('test?foo=1&amp;bar=2', (string)$url);
+        $url = new Horde_Url($baseurl, true);
+        $this->assertEquals('test?foo=1&bar=2', (string)$url);
+        $url = new Horde_Url($baseurl, false);
+        $this->assertEquals('test?foo=1&amp;bar=2', (string)$url);
+    }
+}