Author: sebb
Date: Sun Jan 4 21:28:24 2015
New Revision: 1649428
URL: http://svn.apache.org/r1649428
Log:
VALIDATOR-290 - Create new url validation using rfc3986 and IDN - added new test
Modified:
commons/proper/validator/trunk/RELEASE-NOTES.txt
commons/proper/validator/trunk/src/changes/changes.xml
commons/proper/validator/trunk/src/test/java/org/apache/commons/validator/routines/UrlValidatorTest.java
Modified: commons/proper/validator/trunk/RELEASE-NOTES.txt
URL:
http://svn.apache.org/viewvc/commons/proper/validator/trunk/RELEASE-NOTES.txt?rev=1649428&r1=1649427&r2=1649428&view=diff
==============================================================================
--- commons/proper/validator/trunk/RELEASE-NOTES.txt (original)
+++ commons/proper/validator/trunk/RELEASE-NOTES.txt Sun Jan 4 21:28:24 2015
@@ -91,6 +91,8 @@ IMPROVEMENTS OVER PREVIOUS RELEASE
Fix up the testCalculateInvalid() invalid method to allow
for
either invalid checksum or syntax (CheckDigitException)
error
when testing the entries in the invalid array.
+ * [VALIDATOR-290] - Create new url validation using rfc3986 and IDN - added
new test
+ Thanks to Alexander Rytov
DEPRECATIONS
============
Modified: commons/proper/validator/trunk/src/changes/changes.xml
URL:
http://svn.apache.org/viewvc/commons/proper/validator/trunk/src/changes/changes.xml?rev=1649428&r1=1649427&r2=1649428&view=diff
==============================================================================
--- commons/proper/validator/trunk/src/changes/changes.xml (original)
+++ commons/proper/validator/trunk/src/changes/changes.xml Sun Jan 4 21:28:24
2015
@@ -43,6 +43,9 @@ The <action> type attribute can be add,u
<body>
<release version="1.4.1" date="tba" description="1.4 Maintenance release">
+ <action issue="VALIDATOR-290" dev="sebb" type="update" due-to="Alexander
Rytov">
+ Create new url validation using rfc3986 and IDN - added new test
+ </action>
<action issue="VALIDATOR-350" dev="sebb" type="fix">
Should "x.root" validate as a domain name?
Removed "root" from TLD list.
Modified:
commons/proper/validator/trunk/src/test/java/org/apache/commons/validator/routines/UrlValidatorTest.java
URL:
http://svn.apache.org/viewvc/commons/proper/validator/trunk/src/test/java/org/apache/commons/validator/routines/UrlValidatorTest.java?rev=1649428&r1=1649427&r2=1649428&view=diff
==============================================================================
---
commons/proper/validator/trunk/src/test/java/org/apache/commons/validator/routines/UrlValidatorTest.java
(original)
+++
commons/proper/validator/trunk/src/test/java/org/apache/commons/validator/routines/UrlValidatorTest.java
Sun Jan 4 21:28:24 2015
@@ -312,6 +312,65 @@ public class UrlValidatorTest extends Te
assertTrue(true);
}
+ public void testValidator290() {
+ UrlValidator validator = new UrlValidator();
+ assertTrue(validator.isValid("http://xn--h1acbxfam.idn.icann.org/"));
+//
assertTrue(validator.isValid("http://xn--e1afmkfd.xn--80akhbyknj4f"));
+ // Internationalized country code top-level domains
+ assertTrue(validator.isValid("http://test.xn--lgbbat1ad8j")); //Algeria
+ assertTrue(validator.isValid("http://test.xn--fiqs8s")); // China
+ assertTrue(validator.isValid("http://test.xn--fiqz9s")); // China
+ assertTrue(validator.isValid("http://test.xn--wgbh1c")); // Egypt
+ assertTrue(validator.isValid("http://test.xn--j6w193g")); // Hong Kong
+ assertTrue(validator.isValid("http://test.xn--h2brj9c")); // India
+ assertTrue(validator.isValid("http://test.xn--mgbbh1a71e")); // India
+ assertTrue(validator.isValid("http://test.xn--fpcrj9c3d")); // India
+ assertTrue(validator.isValid("http://test.xn--gecrj9c")); // India
+ assertTrue(validator.isValid("http://test.xn--s9brj9c")); // India
+ assertTrue(validator.isValid("http://test.xn--xkc2dl3a5ee0h")); //
India
+ assertTrue(validator.isValid("http://test.xn--45brj9c")); // India
+ assertTrue(validator.isValid("http://test.xn--mgba3a4f16a")); // Iran
+ assertTrue(validator.isValid("http://test.xn--mgbayh7gpa")); // Jordan
+ assertTrue(validator.isValid("http://test.xn--mgbc0a9azcg")); //
Morocco
+ assertTrue(validator.isValid("http://test.xn--ygbi2ammx")); //
Palestinian Territory
+ assertTrue(validator.isValid("http://test.xn--wgbl6a")); // Qatar
+ assertTrue(validator.isValid("http://test.xn--p1ai")); // Russia
+ assertTrue(validator.isValid("http://test.xn--mgberp4a5d4ar")); //
Saudi Arabia
+ assertTrue(validator.isValid("http://test.xn--90a3ac")); // Serbia
+ assertTrue(validator.isValid("http://test.xn--yfro4i67o")); //
Singapore
+ assertTrue(validator.isValid("http://test.xn--clchc0ea0b2g2a9gcd"));
// Singapore
+ assertTrue(validator.isValid("http://test.xn--3e0b707e")); // South
Korea
+ assertTrue(validator.isValid("http://test.xn--fzc2c9e2c")); // Sri
Lanka
+ assertTrue(validator.isValid("http://test.xn--xkc2al3hye2a")); // Sri
Lanka
+ assertTrue(validator.isValid("http://test.xn--ogbpf8fl")); // Syria
+ assertTrue(validator.isValid("http://test.xn--kprw13d")); // Taiwan
+ assertTrue(validator.isValid("http://test.xn--kpry57d")); // Taiwan
+ assertTrue(validator.isValid("http://test.xn--o3cw4h")); // Thailand
+ assertTrue(validator.isValid("http://test.xn--pgbs0dh")); // Tunisia
+ assertTrue(validator.isValid("http://test.xn--mgbaam7a8h")); // United
Arab Emirates
+ // Proposed internationalized ccTLDs
+// assertTrue(validator.isValid("http://test.xn--54b7fta0cc")); //
Bangladesh
+// assertTrue(validator.isValid("http://test.xn--90ae")); // Bulgaria
+// assertTrue(validator.isValid("http://test.xn--node")); // Georgia
+// assertTrue(validator.isValid("http://test.xn--4dbrk0ce")); // Israel
+// assertTrue(validator.isValid("http://test.xn--mgb9awbf")); // Oman
+// assertTrue(validator.isValid("http://test.xn--j1amh")); // Ukraine
+// assertTrue(validator.isValid("http://test.xn--mgb2ddes")); // Yemen
+ // Test TLDs
+// assertTrue(validator.isValid("http://test.xn--kgbechtv")); // Arabic
+// assertTrue(validator.isValid("http://test.xn--hgbk6aj7f53bba")); //
Persian
+// assertTrue(validator.isValid("http://test.xn--0zwm56d")); // Chinese
+// assertTrue(validator.isValid("http://test.xn--g6w251d")); // Chinese
+// assertTrue(validator.isValid("http://test.xn--80akhbyknj4f")); //
Russian
+// assertTrue(validator.isValid("http://test.xn--11b5bs3a9aj6g")); //
Hindi
+// assertTrue(validator.isValid("http://test.xn--jxalpdlp")); // Greek
+// assertTrue(validator.isValid("http://test.xn--9t4b11yi5a")); //
Korean
+// assertTrue(validator.isValid("http://test.xn--deba0ad")); // Yiddish
+// assertTrue(validator.isValid("http://test.xn--zckzah")); // Japanese
+// assertTrue(validator.isValid("http://test.xn--hlcj6aya9esc7a")); //
Tamil
+ }
+
+
/**
* Only used to debug the unit tests.
* @param argv