aboutsummaryrefslogtreecommitdiffstats
path: root/lib/htmlpurifier/tests/HTMLPurifier/AttrDef/URI/IPv4Test.php
diff options
context:
space:
mode:
Diffstat (limited to 'lib/htmlpurifier/tests/HTMLPurifier/AttrDef/URI/IPv4Test.php')
-rw-r--r--lib/htmlpurifier/tests/HTMLPurifier/AttrDef/URI/IPv4Test.php25
1 files changed, 25 insertions, 0 deletions
diff --git a/lib/htmlpurifier/tests/HTMLPurifier/AttrDef/URI/IPv4Test.php b/lib/htmlpurifier/tests/HTMLPurifier/AttrDef/URI/IPv4Test.php
new file mode 100644
index 000000000..0a4eb17ba
--- /dev/null
+++ b/lib/htmlpurifier/tests/HTMLPurifier/AttrDef/URI/IPv4Test.php
@@ -0,0 +1,25 @@
+<?php
+
+// IPv4 test case is spliced from Feyd's IPv6 implementation
+// we ought to disallow non-routable addresses
+
+class HTMLPurifier_AttrDef_URI_IPv4Test extends HTMLPurifier_AttrDefHarness
+{
+
+ function test() {
+
+ $this->def = new HTMLPurifier_AttrDef_URI_IPv4();
+
+ $this->assertDef('127.0.0.1'); // standard IPv4, loopback, non-routable
+ $this->assertDef('0.0.0.0'); // standard IPv4, unspecified, non-routable
+ $this->assertDef('255.255.255.255'); // standard IPv4
+
+ $this->assertDef('300.0.0.0', false); // standard IPv4, out of range
+ $this->assertDef('124.15.6.89/60', false); // standard IPv4, prefix not allowed
+
+ $this->assertDef('', false); // nothing
+
+ }
+}
+
+// vim: et sw=4 sts=4