Closed Bug 958687 Opened 10 years ago Closed 10 years ago

Intermittent browser_inspector_pseudoclass_lock.js | pseudo-class in infobar selector - Got , expected :hover

Categories

(DevTools :: Inspector, defect)

x86_64
Linux
defect
Not set
normal

Tracking

(firefox27 unaffected, firefox28 unaffected, firefox29 fixed, firefox-esr24 unaffected)

RESOLVED FIXED
Firefox 29
Tracking Status
firefox27 --- unaffected
firefox28 --- unaffected
firefox29 --- fixed
firefox-esr24 --- unaffected

People

(Reporter: RyanVM, Assigned: pbro)

References

Details

(Keywords: intermittent-failure)

Attachments

(1 file, 1 obsolete file)

https://tbpl.mozilla.org/php/getParsedLog.php?id=32831051&tree=Mozilla-Inbound

Ubuntu VM 12.04 x64 mozilla-inbound pgo test mochitest-browser-chrome on 2014-01-10 09:47:00 PST for push 3f4308d223cf
slave: tst-linux64-ec2-007

10:13:46     INFO -  TEST-START | chrome://mochitests/content/browser/browser/devtools/inspector/test/browser_inspector_pseudoclass_lock.js
10:13:47     INFO -  TEST-INFO | chrome://mochitests/content/browser/browser/devtools/inspector/test/browser_inspector_pseudoclass_lock.js | Console message: [JavaScript Error: "The character encoding of the HTML document was not declared. The document will render with garbled text in some browser configurations if the document contains characters from outside the US-ASCII range. The character encoding of the page must be declared in the document or in the transfer protocol." {file: "data:text/html,pseudo-class%20lock%20tests" line: 0}]
10:13:47     INFO -  TEST-INFO | chrome://mochitests/content/browser/browser/devtools/inspector/test/browser_inspector_pseudoclass_lock.js | Console message: [JavaScript Warning: "XUL box for hbox element contained an inline span child, forcing all its children to be wrapped in a block." {file: "resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/highlighter.js" line: 335}]
10:13:48     INFO -  TEST-INFO | chrome://mochitests/content/browser/browser/devtools/inspector/test/browser_inspector_pseudoclass_lock.js | Console message: [JavaScript Warning: "Error in parsing value for 'top'.  Declaration dropped." {file: "chrome://browser/content/devtools/spectrum-frame.xhtml" line: 0 column: 0 source: "NaNpx"}]
10:13:48     INFO -  TEST-INFO | chrome://mochitests/content/browser/browser/devtools/inspector/test/browser_inspector_pseudoclass_lock.js | Console message: [JavaScript Warning: "Error in parsing value for 'left'.  Declaration dropped." {file: "chrome://browser/content/devtools/spectrum-frame.xhtml" line: 0 column: 0 source: "NaNpx"}]
10:13:48     INFO -  TEST-INFO | chrome://mochitests/content/browser/browser/devtools/inspector/test/browser_inspector_pseudoclass_lock.js | Console message: [JavaScript Warning: "Error in parsing value for 'top'.  Declaration dropped." {file: "chrome://browser/content/devtools/spectrum-frame.xhtml" line: 0 column: 0 source: "NaNpx"}]
10:13:48     INFO -  TEST-INFO | chrome://mochitests/content/browser/browser/devtools/inspector/test/browser_inspector_pseudoclass_lock.js | Console message: [JavaScript Warning: "Error in parsing value for 'left'.  Declaration dropped." {file: "chrome://browser/content/devtools/spectrum-frame.xhtml" line: 0 column: 0 source: "NaNpx"}]
10:13:48     INFO -  TEST-PASS | chrome://mochitests/content/browser/browser/devtools/inspector/test/browser_inspector_pseudoclass_lock.js | pseudo-class lock has been applied
10:13:48     INFO -  TEST-PASS | chrome://mochitests/content/browser/browser/devtools/inspector/test/browser_inspector_pseudoclass_lock.js | pseudo-class lock has been applied
10:13:48     INFO -  TEST-PASS | chrome://mochitests/content/browser/browser/devtools/inspector/test/browser_inspector_pseudoclass_lock.js | pseudo-class lock has been applied
10:13:48     INFO -  TEST-PASS | chrome://mochitests/content/browser/browser/devtools/inspector/test/browser_inspector_pseudoclass_lock.js | pseudo-class lock has been applied
10:13:48     INFO -  TEST-PASS | chrome://mochitests/content/browser/browser/devtools/inspector/test/browser_inspector_pseudoclass_lock.js | rule view is showing 3 rules for pseudo-class locked div
10:13:48     INFO -  TEST-PASS | chrome://mochitests/content/browser/browser/devtools/inspector/test/browser_inspector_pseudoclass_lock.js | rule view is showing :hover rule
10:13:48  WARNING -  TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/devtools/inspector/test/browser_inspector_pseudoclass_lock.js | pseudo-class in infobar selector - Got , expected :hover
10:13:48     INFO -  Stack trace:
10:13:48     INFO -      JS frame :: chrome://mochikit/content/browser-test.js :: test_is :: line 705
10:13:48     INFO -      JS frame :: chrome://mochitests/content/browser/browser/devtools/inspector/test/browser_inspector_pseudoclass_lock.js :: testAdded/< :: line 146
10:13:48     INFO -      JS frame :: resource://gre/modules/devtools/server/main.js -> resource://gre/modules/commonjs/sdk/core/promise.js :: resolve :: line 118
10:13:48     INFO -      JS frame :: resource://gre/modules/devtools/server/main.js -> resource://gre/modules/commonjs/sdk/core/promise.js :: then :: line 43
10:13:48     INFO -      JS frame :: resource://gre/modules/devtools/server/main.js -> resource://gre/modules/commonjs/sdk/core/promise.js :: resolve :: line 185
10:13:48     INFO -      JS frame :: resource://gre/modules/devtools/server/main.js -> resource://gre/modules/commonjs/sdk/core/promise.js :: resolve :: line 118
10:13:48     INFO -      JS frame :: resource://gre/modules/devtools/server/main.js -> resource://gre/modules/commonjs/sdk/core/promise.js :: then :: line 43
10:13:48     INFO -      JS frame :: resource://gre/modules/devtools/server/main.js -> resource://gre/modules/commonjs/sdk/core/promise.js :: resolve :: line 185
10:13:48     INFO -      JS frame :: resource://gre/modules/devtools/server/main.js -> resource://gre/modules/commonjs/sdk/core/promise.js :: resolve :: line 118
10:13:48     INFO -      JS frame :: resource://gre/modules/devtools/server/main.js -> resource://gre/modules/commonjs/sdk/core/promise.js :: then :: line 43
10:13:48     INFO -      JS frame :: resource://gre/modules/devtools/server/main.js -> resource://gre/modules/commonjs/sdk/core/promise.js :: resolve :: line 185
10:13:48     INFO -      JS frame :: resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/protocol.js :: Front<.onPacket :: line 1071
10:13:48     INFO -      JS frame :: resource://gre/modules/devtools/dbg-client.jsm :: DC_onPacket/< :: line 676
10:13:48     INFO -      JS frame :: resource://gre/modules/commonjs/sdk/core/promise.js :: resolve :: line 118
10:13:48     INFO -      JS frame :: resource://gre/modules/commonjs/sdk/core/promise.js :: then :: line 43
10:13:48     INFO -      JS frame :: resource://gre/modules/commonjs/sdk/core/promise.js :: then :: line 153
10:13:48     INFO -      JS frame :: resource://gre/modules/devtools/dbg-client.jsm :: DC_onPacket :: line 717
10:13:48     INFO -      JS frame :: resource://gre/modules/devtools/dbg-server.jsm -> resource://gre/modules/devtools/server/main.js -> resource://gre/modules/devtools/server/transport.js :: LDT_send/< :: line 258
10:13:48     INFO -      JS frame :: resource://gre/modules/devtools/dbg-server.jsm -> resource://gre/modules/devtools/server/main.js -> resource://gre/modules/devtools/DevToolsUtils.js :: makeInfallible/< :: line 76
10:13:48     INFO -      native frame :: <unknown filename> :: <TOP_LEVEL> :: line 0
This failure is a regular failure with HTTP cache v2 turned on (bug 913806).  The new cache is about to be enabled in few weeks and is currently under a heavy development on projects/gum tree.  

This test failure is blocking enabling the new HTTP cache.


Patrick, would you be willing to help investigate what is needed to fix here?  I can see there has been a recent change from you in bug 916443 for this particular test.  We regularly merge the gum tree with mozilla-central and this failure was not there a week ago.

It would be a great help if you can assist here.

Thanks.
Flags: needinfo?(pbrosset)
mayhemer and I discussed over IRC.
That test fails 100% of the times for him locally on windows.
I'll work on a potential fix.
Flags: needinfo?(pbrosset)
Assignee: nobody → pbrosset
This fixes the intermittent failure on win/opt builds.
There were, I think, 2 problems: first the highlighter would disappear 1 sec after selecting a node (this is expected, but can be avoided during tests by passing null in setNode(node, null)).
The other one was that once the highlighter had been shown once, we weren't hiding it before showing it again on another node.

I just realized this test isn't pretty at all, with the callback hell. I'll put in my TODO to refactor it with a task instead.
Attachment #8360634 - Flags: review?(jwalker)
Status: NEW → ASSIGNED
Attachment #8360634 - Flags: review?(jwalker) → review+
Here's the try build I launched with the attached patch: https://tbpl.mozilla.org/?tree=Try&rev=a8ab411fd9bc
Looking green.
Here's a v2 for this patch.
Only difference is that I added a "test" selection reason to make the test easier to read. 
Since we discussed and agreed about this on IRC, I'm going to R+ this.
Attachment #8360634 - Attachment is obsolete: true
Attachment #8361925 - Flags: review+
Fixed in fx-team: https://hg.mozilla.org/integration/fx-team/rev/a98f9b7968aa
Whiteboard: [fixed-in-fx-team]
https://hg.mozilla.org/mozilla-central/rev/a98f9b7968aa
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Whiteboard: [fixed-in-fx-team]
Target Milestone: --- → Firefox 29
Product: Firefox → DevTools
You need to log in before you can comment on or make changes to this bug.