Version 3.4.5
This commit is contained in:
1 parent
fb6b5baabc
commit
e4478369d8
1360 files changed
+228921
-179445
No files matched your search
@@ -0,0 +1,32 @@
|
||||
<?php
|
||||
|
||||
if (!defined('PHPUnit2_MAIN_METHOD')) {
|
||||
define('PHPUnit2_MAIN_METHOD', 'Net_IDNA2_AllTests::main');
|
||||
}
|
||||
|
||||
require_once 'PHPUnit2/TextUI/TestRunner.php';
|
||||
|
||||
require_once 'Net_IDNA2Test.php';
|
||||
require_once 'draft-josefsson-idn-test-vectors.php';
|
||||
|
||||
class Net_IDNA2_AllTests
|
||||
{
|
||||
public static function main()
|
||||
{
|
||||
PHPUnit2_TextUI_TestRunner::run(self::suite());
|
||||
}
|
||||
|
||||
public static function suite()
|
||||
{
|
||||
$suite = new PHPUnit2_Framework_TestSuite('PEAR - Net_IDNA2');
|
||||
|
||||
$suite->addTestSuite('Net_IDNA2Test');
|
||||
$suite->addTestSuite('draft-josefsson-idn-test-vectors');
|
||||
|
||||
return $suite;
|
||||
}
|
||||
}
|
||||
|
||||
if (PHPUnit2_MAIN_METHOD == 'Net_IDNA2_AllTests::main') {
|
||||
Net_IDNA2_AllTests::main();
|
||||
}
|
||||
@@ -0,0 +1,68 @@
|
||||
<?php
|
||||
require_once 'Net/IDNA2.php';
|
||||
require_once 'PHPUnit2/Framework/TestCase.php';
|
||||
|
||||
class Net_IDNA2Test extends PHPUnit2_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);
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user