Backed out changeset b71c8c052463 (bug 1943846) for causing mass failures. CLOSED...
[gecko.git] / netwerk / test / unit / test_bug479413.js
blobd9dcb3965e9b4a031520eb33f6db538c90342df2
1 /**
2 * Test for unassigned code points in IDNs (RFC 3454 section 7)
3 */
5 "use strict";
7 var idnService;
9 function expected_pass(inputIDN) {
10 var displayIDN = idnService.convertToDisplayIDN(inputIDN);
11 Assert.equal(displayIDN, inputIDN);
14 function expected_fail(inputIDN) {
15 var displayIDN = "";
17 try {
18 displayIDN = idnService.convertToDisplayIDN(inputIDN);
19 } catch (e) {}
21 Assert.notEqual(displayIDN, inputIDN);
24 function run_test() {
25 idnService = Cc["@mozilla.org/network/idn-service;1"].getService(
26 Ci.nsIIDNService
29 // assigned code point
30 expected_pass("foo\u0101bar.com");
32 // assigned code point in punycode. Should *fail* because the URL will be
33 // converted to Unicode for display
34 expected_fail("xn--foobar-5za.com");
36 // unassigned code point
37 expected_fail("foo\u3040bar.com");
39 // unassigned code point in punycode. Should *fail* because Punycode
40 // is decoded and checked.
41 expected_fail("xn--foobar-533e.com");
43 // code point assigned since Unicode 3.0
44 // XXX This test will unexpectedly pass when we update to IDNAbis
45 expected_fail("foo\u0370bar.com");