Add Url anchor tests
authorMichael M Slusarz <slusarz@curecanti.org>
Wed, 9 Jun 2010 16:21:21 +0000 (10:21 -0600)
committerMichael M Slusarz <slusarz@curecanti.org>
Wed, 9 Jun 2010 16:21:21 +0000 (10:21 -0600)
framework/Url/test/Horde/Url/AddTest.php
framework/Url/test/Horde/Url/AllTests.php
framework/Url/test/Horde/Url/RawTest.php
framework/Url/test/Horde/Url/RemoveTest.php

index e22b7a0..3cc4af7 100644 (file)
@@ -3,7 +3,7 @@
  * @author     Jan Schneider <jan@horde.org>
  * @license    http://www.fsf.org/copyleft/lgpl.html LGPL
  * @category   Horde
- * @package    Horde_Url
+ * @package    Url
  * @subpackage UnitTests
  */
 
@@ -20,6 +20,9 @@ class Horde_Url_AddTest extends PHPUnit_Framework_TestCase
         $this->assertEquals('test?foo=1&amp;bar=2&amp;baz=3', (string)$url);
         $url->add('fez');
         $this->assertEquals('test?foo=1&amp;bar=2&amp;baz=3&amp;fez', (string)$url);
+
+        $url->anchor = 'boo';
+        $this->assertEquals('test?foo=1&amp;bar=2&amp;baz=3&amp;fez#boo', (string)$url);
     }
 
     public function testAddArray()
@@ -93,4 +96,19 @@ class Horde_Url_AddTest extends PHPUnit_Framework_TestCase
         $url->add('foo', 2);
         $this->assertEquals('test?foo=2', (string)$url);
     }
+
+    public function testParseUrlAnchor()
+    {
+        $url = new Horde_Url('test?foo=1#bar');
+        $url->anchor = 'baz';
+        $this->assertEquals('test?foo=1#baz', (string)$url);
+    }
+
+    public function testEncodeAnchor()
+    {
+        $url = new Horde_Url('test');
+        $url->anchor = 'a@b.com';
+        $this->assertEquals('test#a%40b.com', (string)$url);
+    }
+
 }
index 1d0c918..47f7bb2 100644 (file)
@@ -5,7 +5,7 @@
  * @author     Jan Schneider <jan@horde.org>
  * @license    http://www.fsf.org/copyleft/lgpl.html LGPL
  * @category   Horde
- * @package    Horde_Url
+ * @package    Url
  * @subpackage UnitTests
  */
 
@@ -22,7 +22,7 @@ if (!defined('PHPUnit_MAIN_METHOD')) {
 require_once 'Horde/Test/AllTests.php';
 
 /**
- * @package    Horde_Url
+ * @package    Url
  * @subpackage UnitTests
  */
 class Horde_Url_AllTests extends Horde_Test_AllTests
index e7b7eeb..204a839 100644 (file)
@@ -3,7 +3,7 @@
  * @author     Jan Schneider <jan@horde.org>
  * @license    http://www.fsf.org/copyleft/lgpl.html LGPL
  * @category   Horde
- * @package    Horde_Url
+ * @package    Url
  * @subpackage UnitTests
  */
 
@@ -24,6 +24,12 @@ class Horde_Url_RawTest extends PHPUnit_Framework_TestCase
         $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&bar=2#baz');
+        $this->assertEquals('test?foo=1&bar=2#baz', (string)$url);
+
+        $url = new Horde_Url('test?foo=1&amp;bar=2#baz');
+        $this->assertEquals('test?foo=1&amp;bar=2#baz', (string)$url);
     }
 
     public function testFromUrl()
index 9b06af7..6fa4cc0 100644 (file)
@@ -3,7 +3,7 @@
  * @author     Jan Schneider <jan@horde.org>
  * @license    http://www.fsf.org/copyleft/lgpl.html LGPL
  * @category   Horde
- * @package    Horde_Url
+ * @package    Url
  * @subpackage UnitTests
  */
 
@@ -22,6 +22,10 @@ class Horde_Url_RemoveTest extends PHPUnit_Framework_TestCase
 
         $url = new Horde_Url('test?foo=1&bar=2&baz=3');
         $this->assertEquals('test?bar=2&baz=3', (string)$url->remove('foo'));
+
+        $url = new Horde_Url('test?foo=1#baz');
+        $url->anchor = '';
+        $this->assertEquals('test?foo=1', (string)$url);
     }
 
     public function testRemoveEncoded()
@@ -37,6 +41,10 @@ class Horde_Url_RemoveTest extends PHPUnit_Framework_TestCase
 
         $url = new Horde_Url('test?foo=1&amp;bar=2&amp;baz=3');
         $this->assertEquals('test?bar=2&amp;baz=3', (string)$url->remove('foo'));
+
+        $url = new Horde_Url('test?foo=1&amp;bar=2#baz');
+        $url->anchor = '';
+        $this->assertEquals('test?foo=1&amp;bar=2', (string)$url);
     }
 
     public function testRemoveChaining()