2006-08-17 01:05:35 +00:00
|
|
|
<?php
|
|
|
|
|
|
|
|
// takes a URI formatted host and validates it
|
|
|
|
|
|
|
|
|
2007-02-14 20:38:51 +00:00
|
|
|
class HTMLPurifier_AttrDef_URI_HostTest extends HTMLPurifier_AttrDefHarness
|
2006-08-17 01:05:35 +00:00
|
|
|
{
|
2008-12-06 07:28:20 +00:00
|
|
|
|
2006-08-17 01:05:35 +00:00
|
|
|
function test() {
|
2008-12-06 07:28:20 +00:00
|
|
|
|
2007-02-14 20:38:51 +00:00
|
|
|
$this->def = new HTMLPurifier_AttrDef_URI_Host();
|
2008-12-06 07:28:20 +00:00
|
|
|
|
2006-08-17 01:05:35 +00:00
|
|
|
$this->assertDef('[2001:DB8:0:0:8:800:200C:417A]'); // IPv6
|
|
|
|
$this->assertDef('124.15.6.89'); // IPv4
|
|
|
|
$this->assertDef('www.google.com'); // reg-name
|
2008-12-06 07:28:20 +00:00
|
|
|
|
2008-05-14 02:19:00 +00:00
|
|
|
// more domain name tests
|
|
|
|
$this->assertDef('test.');
|
|
|
|
$this->assertDef('sub.test.');
|
|
|
|
$this->assertDef('.test', false);
|
|
|
|
$this->assertDef('ff');
|
|
|
|
$this->assertDef('1f', false);
|
|
|
|
$this->assertDef('-f', false);
|
|
|
|
$this->assertDef('f1');
|
|
|
|
$this->assertDef('f-', false);
|
|
|
|
$this->assertDef('sub.ff');
|
|
|
|
$this->assertDef('sub.1f', false);
|
|
|
|
$this->assertDef('sub.-f', false);
|
|
|
|
$this->assertDef('sub.f1');
|
|
|
|
$this->assertDef('sub.f-', false);
|
|
|
|
$this->assertDef('ff.top');
|
|
|
|
$this->assertDef('1f.top');
|
|
|
|
$this->assertDef('-f.top', false);
|
|
|
|
$this->assertDef('ff.top');
|
|
|
|
$this->assertDef('f1.top');
|
|
|
|
$this->assertDef('f-.top', false);
|
2008-12-06 07:28:20 +00:00
|
|
|
|
2006-08-17 01:05:35 +00:00
|
|
|
}
|
2008-12-06 07:28:20 +00:00
|
|
|
|
2006-08-17 01:05:35 +00:00
|
|
|
}
|
|
|
|
|