| Viewing file:  Net_IDNA2Test.php (2.11 KB)      -rw-r--r-- Select action/file-type:
 
  (+) |  (+) |  (+) | Code (+) | Session (+) |  (+) | SDB (+) |  (+) |  (+) |  (+) |  (+) |  (+) | 
 
<?phprequire_once 'Net/IDNA2.php';
 
 class Net_IDNA2Test extends PHPUnit_Framework_TestCase
 {
 /**
 * Initialise tests
 *
 * @return void
 */
 public function setUp()
 {
 $this->idn = new Net_IDNA2();
 }
 
 /**
 * Test if a complete URL consisting also of port-number etc. will be decoded just fine, test 1
 *
 * @return void
 */
 public function testShouldDecodePortNumbersFragmentsAndUrisCorrectly1()
 {
 $result = $this->idn->decode('http://www.xn--ml-6kctd8d6a.org:8080/test.php?arg1=1&arg2=2#fragment');
 $this->assertSame("http://www.\xD0\xB5\xD1\x85\xD0\xB0m\xD1\x80l\xD0\xB5.org:8080/test.php?arg1=1&arg2=2#fragment", $result);
 }
 
 /**
 * Test if a complete URL consisting also of port-number etc. will be decoded just fine, test 2
 *
 * @return void
 */
 public function testShouldDecodePortNumbersFragmentsAndUrisCorrectly2()
 {
 $result = $this->idn->decode('http://xn--tst-qla.example.com:8080/test.php?arg1=1&arg2=2#fragment');
 $this->assertSame("http://täst.example.com:8080/test.php?arg1=1&arg2=2#fragment", $result);
 }
 
 /**
 * Test encoding of German letter Eszett according to the original standard (IDNA2003)
 *
 * @return void
 */
 public function testEncodingForGermanEszettUsingIDNA2003()
 {
 // make sure to use 2003-encoding
 $this->idn->setParams('version', '2003');
 $result = $this->idn->encode('http://www.straße.example.com/');
 
 $this->assertSame("http://www.strasse.example.com/", $result);
 }
 
 /**
 * Test encoding of German letter Eszett according to the "new" standard (IDNA2005/IDNAbis)
 *
 * @return void
 */
 public function testEncodingForGermanEszettUsingIDNA2008()
 {
 // make sure to use 2008-encoding
 $this->idn->setParams('version', '2008');
 $result = $this->idn->encode('http://www.straße.example.com/');
 // switch back for other testcases
 $this->idn->setParams('version', '2003');
 
 $this->assertSame("http://www.xn--strae-oqa.example.com/", $result);
 }
 }
 
 |