From 0ebf5bdf043a27fd3dfb7f92e0cb63d88954c44d Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Fri, 19 Apr 2024 03:47:29 +0200 Subject: Adding upstream version 115.8.0esr. Signed-off-by: Daniel Baumann --- .../tests/CharsetDetectionTests.js | 48 ++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 extensions/universalchardet/tests/CharsetDetectionTests.js (limited to 'extensions/universalchardet/tests/CharsetDetectionTests.js') diff --git a/extensions/universalchardet/tests/CharsetDetectionTests.js b/extensions/universalchardet/tests/CharsetDetectionTests.js new file mode 100644 index 0000000000..8d6ebad964 --- /dev/null +++ b/extensions/universalchardet/tests/CharsetDetectionTests.js @@ -0,0 +1,48 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 4 -*- */ +/* vim: set ts=8 et sw=4 tw=80: */ + +var gExpectedCharset; +var gLocalDir; + +function CharsetDetectionTests(aTestFile, aExpectedCharset) { + gExpectedCharset = aExpectedCharset; + + InitDetectorTests(); + + var fileURI = gLocalDir + aTestFile; + $("testframe").src = fileURI; + + SimpleTest.waitForExplicitFinish(); +} + +function InitDetectorTests() { + var loader = Services.scriptloader; + var ioService = Services.io; + loader.loadSubScript("chrome://mochikit/content/chrome-harness.js"); + + $("testframe").onload = DoDetectionTest; + + if (gExpectedCharset == "default") { + // No point trying to be generic here, because we have plenty of other + // unit tests that fail if run using a non-windows-1252 locale. + gExpectedCharset = "windows-1252"; + } + + // Get the local directory. This needs to be a file: URI because chrome: + // URIs are always UTF-8 (bug 617339) and we are testing decoding from other + // charsets. + var jar = getJar(getRootDirectory(window.location.href)); + var dir = jar + ? extractJarToTmp(jar) + : getChromeDir(getResolvedURI(window.location.href)); + gLocalDir = ioService.newFileURI(dir).spec; +} + +function DoDetectionTest() { + var iframeDoc = $("testframe").contentDocument; + var charset = iframeDoc.characterSet; + + is(charset, gExpectedCharset, "decoded as " + gExpectedCharset); + + SimpleTest.finish(); +} -- cgit v1.2.3