Closed Bug 1936427 Opened 2 months ago Closed 1 month ago

[WIN11 - 24H2 upgrade] browser/components/aboutwelcome/tests/browser/browser_aboutwelcome_screen_targeting.js | Uncaught exception in test bound

Categories

(Firefox :: Messaging System, defect, P1)

defect
Points:
3

Tracking

()

RESOLVED FIXED
136 Branch
Iteration:
136.1 - Jan 6 - Jan 17
Tracking Status
firefox136 --- fixed

People

(Reporter: jmaher, Assigned: mviar, NeedInfo)

References

(Blocks 2 open bugs)

Details

Attachments

(1 file)

this test is failing when run on machines with windows 11 24H2 (oct 2024 update). Our current CI runs windows 11 22H2 (Oct 2022).

This only fails on MSIX builds:

[task 2024-12-06T23:24:41.810Z] 23:24:41     INFO - TEST-PASS | browser/components/aboutwelcome/tests/browser/browser_aboutwelcome_screen_targeting.js | Should not render main.AW_EASY_SETUP_NEEDS_DEFAULT in doesn't render default and pin, only default or import easy setup - true == true - 
[task 2024-12-06T23:24:41.811Z] 23:24:41     INFO - TEST-PASS | browser/components/aboutwelcome/tests/browser/browser_aboutwelcome_screen_targeting.js | Should not render main.AW_EASY_SETUP_NEEDS_DEFAULT_AND_PIN in doesn't render default and pin, only default or import easy setup - true == true - 
[task 2024-12-06T23:24:41.811Z] 23:24:41     INFO - TEST-PASS | browser/components/aboutwelcome/tests/browser/browser_aboutwelcome_screen_targeting.js | Should not render main.AW_ONLY_IMPORT in doesn't render default and pin, only default or import easy setup - true == true - 
[task 2024-12-06T23:24:41.812Z] 23:24:41     INFO - TEST-PASS | browser/components/aboutwelcome/tests/browser/browser_aboutwelcome_screen_targeting.js | Navigated to a welcome screen - "about:welcome" == "about:welcome" - 
[task 2024-12-06T23:24:41.812Z] 23:24:41     INFO - Leaving test bound test_aboutwelcome_mr_template_easy_setup_needs_pin
[task 2024-12-06T23:24:41.813Z] 23:24:41     INFO - Entering test bound test_aboutwelcome_mr_template_easy_setup_needs_default
[task 2024-12-06T23:24:41.813Z] 23:24:41     INFO - Buffered messages finished
[task 2024-12-06T23:24:41.814Z] 23:24:41     INFO - TEST-UNEXPECTED-FAIL | browser/components/aboutwelcome/tests/browser/browser_aboutwelcome_screen_targeting.js | Uncaught exception in test bound test_aboutwelcome_mr_template_easy_setup_needs_default - Should render main.AW_EASY_SETUP_NEEDS_DEFAULT in doesn't render pin, import and set to default - timed out after 50 tries.
[task 2024-12-06T23:24:41.815Z] 23:24:41     INFO - Leaving test bound test_aboutwelcome_mr_template_easy_setup_needs_default
[task 2024-12-06T23:24:41.815Z] 23:24:41     INFO - Entering test bound test_aboutwelcome_mr_template_easy_setup_only_import
[task 2024-12-06T23:24:41.815Z] 23:24:41     INFO - Not taking screenshot here: see the one that was previously logged
[task 2024-12-06T23:24:41.818Z] 23:24:41     INFO - TEST-UNEXPECTED-FAIL | browser/components/aboutwelcome/tests/browser/browser_aboutwelcome_screen_targeting.js | Uncaught exception in test bound test_aboutwelcome_mr_template_easy_setup_only_import - at resource://testing-common/sinon-7.2.7.js:3605 - TypeError: Attempted to wrap doesAppNeedPin which is already wrapped
[task 2024-12-06T23:24:41.818Z] 23:24:41     INFO - Stack trace:
[task 2024-12-06T23:24:41.818Z] 23:24:41     INFO - checkWrappedMethod@resource://testing-common/sinon-7.2.7.js:3605:21
[task 2024-12-06T23:24:41.818Z] 23:24:41     INFO - wrapMethod@resource://testing-common/sinon-7.2.7.js:3653:31
[task 2024-12-06T23:24:41.818Z] 23:24:41     INFO - stub@resource://testing-common/sinon-7.2.7.js:3002:44
[task 2024-12-06T23:24:41.818Z] 23:24:41     INFO - stub@resource://testing-common/sinon-7.2.7.js:2099:33
[task 2024-12-06T23:24:41.819Z] 23:24:41     INFO - test_aboutwelcome_mr_template_easy_setup_only_import@chrome://mochitests/content/browser/browser/components/aboutwelcome/tests/browser/browser_aboutwelcome_screen_targeting.js:226:11
[task 2024-12-06T23:24:41.819Z] 23:24:41     INFO - async*handleTask@chrome://mochikit/content/browser-test.js:1147:26
[task 2024-12-06T23:24:41.819Z] 23:24:41     INFO - _runTaskBasedTest@chrome://mochikit/content/browser-test.js:1219:18
[task 2024-12-06T23:24:41.819Z] 23:24:41     INFO - async*Tester_execTest@chrome://mochikit/content/browser-test.js:1360:14
[task 2024-12-06T23:24:41.819Z] 23:24:41     INFO - nextTest/<@chrome://mochikit/content/browser-test.js:1136:14
[task 2024-12-06T23:24:41.819Z] 23:24:41     INFO - SimpleTest.waitForFocus/<@chrome://mochikit/content/tests/SimpleTest/SimpleTest.js:1058:13

I am adding a skip-if in bug 1936405. I wanted to file a proper bug here.

to run this now, you can do:
./mach try fuzzy -q 'test-windows11 browser-chrome' --worker-override='win11-64-2009=gecko-t/win11-64-24h2' --worker-override='win11-64-2009-gpu=gecko-t/win11-64-24h2-gpu' --worker-override='win11-64-2009-source=gecko-t/win11-64-24h2-source' --worker-override='win11-64-2009-ssd=gecko-t/win11-64-24h2-ssd' --worker-override='win11-64-2009-ssd-gpu=gecko-t/win11-64-24h2-ssd-gpu' --push-to-vcs browser/components/aboutwelcome/tests/browser

Assignee: nobody → mviar
Blocks: fxms-infra
Iteration: --- → 135.2 - Dec 9 - Dec 20
Points: --- → 3
Priority: -- → P1

Based on logging from the task test_aboutwelcome_mr_template_easy_setup_needs_default in this try run, evaluateScreenTargeting is returning true when called with:
["doesAppNeedPin && (unhandledCampaignAction != 'SET_DEFAULT_BROWSER') && 'browser.shell.checkDefaultBrowser'|preferenceValue && !isDefaultBrowser"],
but not when called with:
["!doesAppNeedPin && (unhandledCampaignAction != 'SET_DEFAULT_BROWSER') && 'browser.shell.checkDefaultBrowser'|preferenceValue && !isDefaultBrowser"].

It appears doesAppNeedPin is unexpectedly evaluating to true on WIN11 - 24H2 MSIX builds despite us stubbing with sandbox.stub(ShellService, "doesAppNeedPin").returns(false); in the test.

My guess is we need to stub the Shell Service doesAppNeedStartMenuPin when we're stubbing doesAppNeedPin. Our doesAppNeedPin targeting looks for either start menu or regular pin. I'll test this out and post a patch if it's successful in addressing the issue on WIN11 - 24H2 MSIX.

Attachment #9444805 - Attachment description: WIP: Bug 1936427 - Update stubs for doesAppNeedPin in AboutWelcome default screen targeting test → Bug 1936427 - Update stubs for doesAppNeedPin in AboutWelcome default screen targeting test

The severity field is not set for this bug.
:aminomancer, could you have a look please?

For more information, please visit BugBot documentation.

Flags: needinfo?(shughes)
Iteration: 135.2 - Dec 9 - Dec 20 → 135.3 - Dec 23 - Jan 3
Iteration: 135.3 - Dec 23 - Jan 3 → 136.1 - Jan 6 - Jan 17
Pushed by mviar@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/78e07bd612aa Update stubs for doesAppNeedPin in AboutWelcome default screen targeting test r=omc-reviewers,negin
Status: NEW → RESOLVED
Closed: 1 month ago
Resolution: --- → FIXED
Target Milestone: --- → 136 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: