Closed Bug 1592829 Opened 5 years ago Closed 5 years ago

Make browser_privatebrowsing_context_and_chromeFlags.js Fission compatible

Categories

(Firefox :: Private Browsing, task, P1)

task

Tracking

()

RESOLVED FIXED
Firefox 72
Fission Milestone M4
Tracking Status
firefox72 --- fixed

People

(Reporter: annyG, Assigned: annyG)

References

(Blocks 1 open bug)

Details

Attachments

(2 files)

No description provided.
Blocks: fission-mochitests
No longer blocks: fission

This test was failing in the highlighted places here https://searchfox.org/mozilla-central/rev/ce02064d8afc8673cef83c92896ee873bd35e7ae/browser/components/privatebrowsing/test/browser/browser_privatebrowsing_context_and_chromeFlags.js#20,65

There were two problems with this test.

  1. The selected assertion was failing when run on linux in non headless mode.

The assertion was failing because example.com window, incorrectly, did not have hasContentOpener set to true. Setting hasContentOpener on the browserParent, if the browsing context we have in ContentParent::CreateBrowser has a content opener, fixes this mistake.

  1. The selected assertion was not failing when running in headless mode or on mac.

This was due to timing issues. When we are doing window loads, we generally load about:blank several times. Thus, we have to change BrowserTestUtils.waitForNewWindow() to wait for example.com, instead of making it wait for about:blank by default (when we don't pass any options) which would make the promise resolve as soon as the first about:blank is loaded. The change should occur here https://searchfox.org/mozilla-central/rev/ce02064d8afc8673cef83c92896ee873bd35e7ae/browser/components/privatebrowsing/test/browser/browser_privatebrowsing_context_and_chromeFlags.js#57. Note that the path where we load about:blank in a window was setting hasContentOpener on the window correctly, and thus we did not check execute the assertion check in headless or mac mode when this race was occurring.

Priority: -- → P1
Attachment #9105631 - Attachment description: Bug 1592829 - Set hasContentOpener on BrowserParent correctly if we are creating a remote browser, → Bug 1592829 - Preserve hasContentOpener in the browser when remoteness change happens,
Attachment #9105631 - Attachment description: Bug 1592829 - Preserve hasContentOpener in the browser when remoteness change happens, → Bug 1592829 - Remove hasContentOpener logic from C++ and check for content opener directly from JavaScript,
Pushed by agakhokidze@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/3257e8902653 Remove hasContentOpener logic from C++ and check for content opener directly from JavaScript, r=nika https://hg.mozilla.org/integration/autoland/rev/73013c2281fb Skip browser/base/content/test/tabs/browser_new_web_tab_in_file_process_pref.js, r=nika

Backed out 2 changesets (Bug 1592829) for gecko build failure.

Push with failure: https://treeherder.mozilla.org/#/jobs?repo=autoland&group_state=expanded&selectedJob=274901474&resultStatus=testfailed%2Cbusted%2Cexception&classifiedState=unclassified&revision=73013c2281fb6aa5f58d1f9c940615fa69372cec

Failure log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=274901474&repo=autoland&lineNumber=4971

Backout link: https://treeherder.mozilla.org/#/jobs?repo=autoland&group_state=expanded&selectedJob=274901474&resultStatus=testfailed%2Cbusted%2Cexception&classifiedState=unclassified&revision=0e6ef42f2efac37c62b0098cd2f630cf45a0dd81

[task 2019-11-06T20:02:13.971Z]   File "/builds/worker/checkouts/gecko/taskcluster/taskgraph/optimize/__init__.py", line 59, in optimize_task_graph
[task 2019-11-06T20:02:13.971Z]     do_not_optimize=do_not_optimize)
[task 2019-11-06T20:02:13.971Z]   File "/builds/worker/checkouts/gecko/taskcluster/taskgraph/optimize/__init__.py", line 121, in remove_tasks
[task 2019-11-06T20:02:13.971Z]     if opt.should_remove_task(task, params, arg):
[task 2019-11-06T20:02:13.971Z]   File "/builds/worker/checkouts/gecko/taskcluster/taskgraph/optimize/strategies.py", line 86, in should_remove_task
[task 2019-11-06T20:02:13.971Z]     scheduled = self.scheduled_by_push(params['head_repository'], params['head_rev'])
[task 2019-11-06T20:02:13.971Z]   File "/builds/worker/checkouts/gecko/python/mozbuild/mozbuild/util.py", line 963, in method_call
[task 2019-11-06T20:02:13.971Z]     cache[args] = self.func(instance, *args)
[task 2019-11-06T20:02:13.971Z]   File "/builds/worker/checkouts/gecko/taskcluster/taskgraph/optimize/strategies.py", line 77, in scheduled_by_push
[task 2019-11-06T20:02:13.971Z]     for p, m in rdr.files_info(changed_files).items():
[task 2019-11-06T20:02:13.971Z]   File "/builds/worker/checkouts/gecko/python/mozbuild/mozbuild/frontend/reader.py", line 1339, in files_info
[task 2019-11-06T20:02:13.971Z]     paths, _ = self.read_relevant_mozbuilds(paths)
[task 2019-11-06T20:02:13.971Z]   File "/builds/worker/checkouts/gecko/python/mozbuild/mozbuild/frontend/reader.py", line 1303, in read_relevant_mozbuilds
[task 2019-11-06T20:02:13.971Z]     self.config, metadata=metadata):
[task 2019-11-06T20:02:13.971Z]   File "/builds/worker/checkouts/gecko/python/mozbuild/mozbuild/frontend/reader.py", line 1057, in read_mozbuild
[task 2019-11-06T20:02:13.971Z]     raise bre
[task 2019-11-06T20:02:13.972Z] BuildReaderError: 
[task 2019-11-06T20:02:13.972Z] ==============================
[task 2019-11-06T20:02:13.972Z] FATAL ERROR PROCESSING MOZBUILD FILE
[task 2019-11-06T20:02:13.972Z] ==============================
[task 2019-11-06T20:02:13.972Z] 
[task 2019-11-06T20:02:13.972Z] The error occurred while processing the following file:
[task 2019-11-06T20:02:13.972Z] 
[task 2019-11-06T20:02:13.972Z]     /builds/worker/checkouts/gecko/browser/base/moz.build
[task 2019-11-06T20:02:13.972Z] 
[task 2019-11-06T20:02:13.972Z] The error was triggered on line 59 of this file:
[task 2019-11-06T20:02:13.972Z] 
[task 2019-11-06T20:02:13.972Z]     'content/test/webrtc/browser.ini',
[task 2019-11-06T20:02:13.972Z] 
[task 2019-11-06T20:02:13.972Z] An error was encountered as part of executing the file itself. The error appears to be the fault of the script.
[task 2019-11-06T20:02:13.972Z] 
[task 2019-11-06T20:02:13.972Z] The error as reported by Python is:
[task 2019-11-06T20:02:13.972Z] 
[task 2019-11-06T20:02:13.973Z]     ['AssertionError\n']
[task 2019-11-06T20:02:13.973Z] 
[taskcluster 2019-11-06 20:02:14.750Z] === Task Finished ===
[taskcluster 2019-11-06 20:02:22.111Z] Unsuccessful task run with exit code: 1 completed in 72.951 seconds
Flags: needinfo?(agakhokidze)
Pushed by agakhokidze@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/246771e39653 Remove hasContentOpener logic from C++ and check for content opener directly from JavaScript, r=nika https://hg.mozilla.org/integration/autoland/rev/ad6956af9d33 Skip browser/base/content/test/tabs/browser_new_web_tab_in_file_process_pref.js, r=nika

I updated my patches on phabricator and queued the updated version for landing.

Flags: needinfo?(agakhokidze)
Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 72

Retroactively moving fixed bugs whose summaries mention "Fission" (or other Fission-related keywords) but are not assigned to a Fission Milestone to an appropriate Fission Milestone.

This will generate a lot of bugmail, so you can filter your bugmail for the following UUID and delete them en masse:

0ee3c76a-bc79-4eb2-8d12-05dc0b68e732

Fission Milestone: --- → M4
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: