Closed Bug 802718 Opened 7 years ago Closed 7 years ago

Manually restore window at end of browser_minimize to avoid breaking rest of suite if test fails

Categories

(Firefox :: General, defect)

x86_64
Linux
defect
Not set

Tracking

()

RESOLVED FIXED
Firefox 19

People

(Reporter: graememcc, Assigned: graememcc)

References

(Blocks 1 open bug, )

Details

Attachments

(1 file)

Attached patch v1Splinter Review
Feel free to WONTFIX if you want, as it doesn't affect the test slaves - it only affects me when trying to run browser-chrome locally...

Unity/Compiz currently has a bug where it doesn't notify windows that they have been minimized. This breaks browser_minimize.js - as expected. However, although the browser-test focuses (and hence raises) the window at the end of each test, the lack of a restore call means our internal widget state continues to report "minimized". This causes all kinds of wackiness and thus test failures. For example, all the PopupNotifications tests fail, as layout won't display popups in a minimized window. Running TEST_PATH=browser/base/content/test make -C obj mochitest-browser-chrome, this causes 41 failures, all fixed by this patch.

Having looked at SetSizeMode in the widget code for the various platforms (which is where we end up during window.restore, it's essentially a NOP when the window is already restored.

I considered also throwing this in waitForWindowState in the harness, but wasn't convinced it was really necessary for 1 test running under 1 particular window manager.
Attachment #672402 - Flags: review?(gavin.sharp)
Comment on attachment 672402 [details] [diff] [review]
v1

seems fine to me - one nit: put the call to registerCleanupFunction in test() (it's generally a bad idea for tests to run code outside of their test() function).
Attachment #672402 - Flags: review?(gavin.sharp) → review+
https://hg.mozilla.org/mozilla-central/rev/455b30bb6e18
Assignee: nobody → graememcc_firefox
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 19
You need to log in before you can comment on or make changes to this bug.