1
0
Fork 0
firefox/toolkit/components/captchadetection/tests/mochitest/CaptchaTestingUtils.js
Daniel Baumann 5e9a113729
Adding upstream version 140.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
2025-06-25 09:37:52 +02:00

41 lines
1.2 KiB
JavaScript

/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
"use strict";
const CaptchaTestingUtils = {
waitForMessage(shouldResolveOrString) {
return new Promise(resolve => {
window.addEventListener("message", function (event) {
if (
(typeof shouldResolveOrString === "string" &&
event.data === shouldResolveOrString) ||
(typeof shouldResolveOrString === "function" &&
shouldResolveOrString(event))
) {
resolve();
}
});
});
},
waitForMetricSet() {
return this.waitForMessage("Testing:MetricIsSet");
},
async createIframeAndWaitForMessage(
iframeSrc,
appendTo,
shouldResolveOrString
) {
const iframe = document.createElement("iframe");
const message = this.waitForMessage(shouldResolveOrString);
iframe.src = iframeSrc;
appendTo.appendChild(iframe);
await message;
return iframe;
},
async clearPrefs() {
await SpecialPowers.clearUserPref("captchadetection.hasUnsubmittedData");
await SpecialPowers.clearUserPref("captchadetection.lastSubmission");
},
};