diff options
Diffstat (limited to 'netwerk/test/unit/test_bug660066.js')
-rw-r--r-- | netwerk/test/unit/test_bug660066.js | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/netwerk/test/unit/test_bug660066.js b/netwerk/test/unit/test_bug660066.js new file mode 100644 index 000000000..99c01c40c --- /dev/null +++ b/netwerk/test/unit/test_bug660066.js @@ -0,0 +1,42 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ +Components.utils.import("resource://gre/modules/NetUtil.jsm"); +const SIMPLEURI_SPEC = "data:text/plain,hello world"; +const BLOBURI_SPEC = "blob:123456"; + +function do_info(text, stack) { + if (!stack) + stack = Components.stack.caller; + + dump( "\n" + + "TEST-INFO | " + stack.filename + " | [" + stack.name + " : " + + stack.lineNumber + "] " + text + "\n"); +} + +function do_check_uri_neq(uri1, uri2) +{ + do_info("Checking equality in forward direction..."); + do_check_false(uri1.equals(uri2)); + do_check_false(uri1.equalsExceptRef(uri2)); + + do_info("Checking equality in reverse direction..."); + do_check_false(uri2.equals(uri1)); + do_check_false(uri2.equalsExceptRef(uri1)); +} + +function run_test() +{ + var simpleURI = NetUtil.newURI(SIMPLEURI_SPEC); + var fileDataURI = NetUtil.newURI(BLOBURI_SPEC); + + do_info("Checking that " + SIMPLEURI_SPEC + " != " + BLOBURI_SPEC); + do_check_uri_neq(simpleURI, fileDataURI); + + do_info("Changing the nsSimpleURI spec to match the nsFileDataURI"); + simpleURI.spec = BLOBURI_SPEC; + + do_info("Verifying that .spec matches"); + do_check_eq(simpleURI.spec, fileDataURI.spec); + + do_info("Checking that nsSimpleURI != nsFileDataURI despite their .spec matching") + do_check_uri_neq(simpleURI, fileDataURI); +} |