зеркало из https://github.com/mozilla/gecko-dev.git
72 строки
2.1 KiB
JavaScript
72 строки
2.1 KiB
JavaScript
var Ci = Components.interfaces;
|
|
var Cu = Components.utils;
|
|
Cu.import("resource://gre/modules/NetUtil.jsm");
|
|
|
|
function run_test() {
|
|
var ios = Components.classes["@mozilla.org/network/io-service;1"].
|
|
getService(Components.interfaces.nsIIOService);
|
|
|
|
var dataFile = do_get_file("data/bug121341.properties");
|
|
var channel = NetUtil.newChannel({
|
|
uri: ios.newFileURI(dataFile, null, null),
|
|
loadUsingSystemPrincipal: true
|
|
});
|
|
var inp = channel.open2();
|
|
|
|
var properties = Components.classes["@mozilla.org/persistent-properties;1"].
|
|
createInstance(Components.interfaces.nsIPersistentProperties);
|
|
properties.load(inp);
|
|
|
|
var value;
|
|
|
|
value = properties.getStringProperty("1");
|
|
do_check_eq(value, "abc");
|
|
|
|
value = properties.getStringProperty("2");
|
|
do_check_eq(value, "xy");
|
|
|
|
value = properties.getStringProperty("3");
|
|
do_check_eq(value, "\u1234\t\r\n\u00AB\u0001\n");
|
|
|
|
value = properties.getStringProperty("4");
|
|
do_check_eq(value, "this is multiline property");
|
|
|
|
value = properties.getStringProperty("5");
|
|
do_check_eq(value, "this is another multiline property");
|
|
|
|
value = properties.getStringProperty("6");
|
|
do_check_eq(value, "test\u0036");
|
|
|
|
value = properties.getStringProperty("7");
|
|
do_check_eq(value, "yet another multiline propery");
|
|
|
|
value = properties.getStringProperty("8");
|
|
do_check_eq(value, "\ttest5\u0020");
|
|
|
|
value = properties.getStringProperty("9");
|
|
do_check_eq(value, " test6\t");
|
|
|
|
value = properties.getStringProperty("10a\u1234b");
|
|
do_check_eq(value, "c\uCDEFd");
|
|
|
|
value = properties.getStringProperty("11");
|
|
do_check_eq(value, "\uABCD");
|
|
|
|
dataFile = do_get_file("data/bug121341-2.properties");
|
|
|
|
var channel = NetUtil.newChannel({
|
|
uri: ios.newFileURI(dataFile, null, null),
|
|
loadUsingSystemPrincipal: true
|
|
});
|
|
inp = channel.open2();
|
|
|
|
var properties2 = Components.classes["@mozilla.org/persistent-properties;1"].
|
|
createInstance(Components.interfaces.nsIPersistentProperties);
|
|
try {
|
|
properties2.load(inp);
|
|
do_throw("load() didn't fail");
|
|
}
|
|
catch (e) {
|
|
}
|
|
}
|