diff options
author | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
---|---|---|
committer | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
commit | 5f8de423f190bbb79a62f804151bc24824fa32d8 (patch) | |
tree | 10027f336435511475e392454359edea8e25895d /toolkit/components/search/tests/xpcshell/test_svg_icon.js | |
parent | 49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff) | |
download | UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.lz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.xz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.zip |
Add m-esr52 at 52.6.0
Diffstat (limited to 'toolkit/components/search/tests/xpcshell/test_svg_icon.js')
-rw-r--r-- | toolkit/components/search/tests/xpcshell/test_svg_icon.js | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/toolkit/components/search/tests/xpcshell/test_svg_icon.js b/toolkit/components/search/tests/xpcshell/test_svg_icon.js new file mode 100644 index 000000000..5fd4781a1 --- /dev/null +++ b/toolkit/components/search/tests/xpcshell/test_svg_icon.js @@ -0,0 +1,52 @@ +/* Any copyright is dedicated to the Public Domain. + http://creativecommons.org/publicdomain/zero/1.0/ */ + +"use strict"; + +var url; +var requestHandled; + +const icon = + '<?xml version="1.0" encoding="UTF-8" standalone="no"?>' + + '<svg xmlns="http://www.w3.org/2000/svg" ' + + 'width="16" height="16" viewBox="0 0 16 16">' + + '<rect x="4" y="4" width="8px" height="8px" style="fill: blue"/>' + + '</svg>'; + +function run_test() { + updateAppInfo(); + useHttpServer(); // Unused, but required to call addTestEngines. + + requestHandled = new Promise(resolve => { + let srv = new HttpServer(); + srv.registerPathHandler("/icon.svg", (metadata, response) => { + response.setStatusLine("1.0", 200, "OK"); + response.setHeader("Content-Type", "image/svg+xml", false); + + response.write(icon); + resolve(); + }); + srv.start(-1); + do_register_cleanup(() => srv.stop(() => {})); + + url = "http://localhost:" + srv.identity.primaryPort + "/icon.svg"; + }); + + run_next_test(); +} + +add_task(function* test_svg_icon() { + yield asyncInit(); + + let [engine] = yield addTestEngines([ + { name: "SVGIcon", details: [url, "", "SVG icon", "GET", + "http://icon.svg/search?q={searchTerms}"] }, + ]); + + yield requestHandled; + yield promiseAfterCache(); + + ok(engine.iconURI, "the engine has an icon"); + ok(engine.iconURI.spec.startsWith("data:image/svg+xml"), + "the icon is saved as an SVG data url"); +}); |