1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/modules/libjar/test/unit/test_umlaute.js Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,40 @@ 1.4 + 1.5 +const Cc = Components.classes; 1.6 +const Ci = Components.interfaces; 1.7 + 1.8 +function run_test() { 1.9 + var dirService = Cc["@mozilla.org/file/directory_service;1"].getService(Ci.nsIProperties); 1.10 + var tmpDir = dirService.get("TmpD", Ci.nsIFile); 1.11 + 1.12 + var zipfile = do_get_file("data/test_umlaute.zip"); 1.13 + 1.14 + var testFile = tmpDir.clone(); 1.15 + testFile.append("test_\u00FC.txt"); 1.16 + if (testFile.exists()) { 1.17 + testFile.remove(false); 1.18 + } 1.19 + 1.20 + var zipreader = Cc["@mozilla.org/libjar/zip-reader;1"].createInstance(Ci.nsIZipReader); 1.21 + zipreader.open(zipfile); 1.22 + 1.23 + var entries = zipreader.findEntries(null); 1.24 + do_check_true(entries.hasMore()); 1.25 + 1.26 + var entryName = entries.getNext(); 1.27 + do_check_eq(entryName, "test_\u00FC.txt"); 1.28 + 1.29 + do_check_true(zipreader.hasEntry(entryName)); 1.30 + 1.31 + var target = tmpDir.clone(); 1.32 + target.append(entryName); 1.33 + target.create(Ci.nsILocalFile.NORMAL_FILE_TYPE, 6 * 64 + 4 * 8 + 0); // 0640 1.34 + 1.35 + zipreader.extract(entryName, target); 1.36 + 1.37 + var entry = zipreader.getEntry(entryName); 1.38 + do_check_true(entry != null); 1.39 + 1.40 + zipreader.test(entryName); 1.41 + 1.42 + zipreader.close(); 1.43 +}