Skip to content

Commit 99a260a

Browse files
committed
Bug 1562117 - Fix race in test_ext_normandyAddonStudy test cases. r=mixedpuppy
Differential Revision: https://phabricator.services.mozilla.com/D43742 --HG-- extra : moz-landing-system : lando
1 parent 5b39931 commit 99a260a

File tree

1 file changed

+11
-3
lines changed

1 file changed

+11
-3
lines changed

browser/components/extensions/test/xpcshell/test_ext_normandyAddonStudy.js

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -46,12 +46,18 @@ async function run(test) {
4646
test.permissions || ["normandyAddonStudy"],
4747
test.isPrivileged
4848
);
49+
const promiseValidation = test.validationScript
50+
? test.validationScript(extension)
51+
: Promise.resolve();
52+
4953
await extension.startup();
54+
55+
await promiseValidation;
56+
5057
if (test.doneSignal) {
5158
await extension.awaitFinish(test.doneSignal);
52-
} else if (test.validationScript) {
53-
await test.validationScript(extension);
5459
}
60+
5561
await extension.unload();
5662
}
5763

@@ -188,12 +194,14 @@ add_task(async function test_onUnenroll_works() {
188194
const testWrapper = AddonStudies.withStudies([study]);
189195
const test = testWrapper(async () => {
190196
await run({
191-
backgroundScript: async () => {
197+
backgroundScript: () => {
192198
browser.normandyAddonStudy.onUnenroll.addListener(reason => {
193199
browser.test.sendMessage("unenrollReason", reason);
194200
});
201+
browser.test.sendMessage("bgpageReady");
195202
},
196203
validationScript: async extension => {
204+
await extension.awaitMessage("bgpageReady");
197205
await AddonStudies.markAsEnded(study, "test");
198206
const unenrollReason = await extension.awaitMessage("unenrollReason");
199207
equal(unenrollReason, "test", "Unenroll listener should be called.");

0 commit comments

Comments
 (0)