mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
dba9b7617b
--HG-- extra : rebase_source : 559500a07bf8c5d7a280310a776195d85d313e57
29 lines
1.1 KiB
JavaScript
29 lines
1.1 KiB
JavaScript
/* Any copyright is dedicated to the Public Domain.
|
|
* http://creativecommons.org/publicdomain/zero/1.0/ */
|
|
|
|
function run_test() {
|
|
let Cu = Components.utils;
|
|
let sb = new Cu.Sandbox('https://www.example.com',
|
|
{ wantGlobalProperties:
|
|
["crypto", "TextEncoder", "TextDecoder"]
|
|
});
|
|
sb.ok = ok;
|
|
Cu.evalInSandbox('ok(this.crypto);', sb);
|
|
Cu.evalInSandbox('ok(this.crypto.subtle);', sb);
|
|
sb.do_check_eq = do_check_eq;
|
|
let innerPromise = new Promise(r => (sb.test_done = r));
|
|
Cu.evalInSandbox('crypto.subtle.digest("SHA-256", ' +
|
|
' new TextEncoder("utf-8").encode("abc"))' +
|
|
' .then(h => do_check_eq(new Uint16Array(h)[0], 30906))' +
|
|
' .then(test_done);', sb);
|
|
|
|
Cu.importGlobalProperties(["crypto"]);
|
|
ok(crypto);
|
|
ok(crypto.subtle);
|
|
let outerPromise = crypto.subtle.digest("SHA-256", new TextEncoder("utf-8").encode("abc"))
|
|
.then(h => do_check_eq(new Uint16Array(h)[0], 30906));
|
|
|
|
do_test_pending();
|
|
Promise.all([innerPromise, outerPromise]).then(() => do_test_finished());
|
|
}
|