intermittent failures in mochitests/content/a11y/accessible/relations/test_tabbrowser.xul | Can't get accessible for [object XULElement]

RESOLVED FIXED in mozilla8

Status

()

Core
Disability Access APIs
RESOLVED FIXED
6 years ago
5 years ago

People

(Reporter: jfkthame, Assigned: surkov)

Tracking

(Blocks: 1 bug, {intermittent-failure})

Trunk
mozilla8
x86
Windows 7
intermittent-failure
Points:
---
Dependency tree / graph
Bug Flags:
in-testsuite +

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(2 attachments)

(Reporter)

Description

6 years ago
http://tinderbox.mozilla.org/showlog.cgi?log=Firefox/1303820885.1303822520.5820.gz

s: talos-r3-w7-023
PROCESS-CRASH | Main app process exited normally | application crashed (minidump found)
Thread 0 (crashed)
3614 ERROR TEST-UNEXPECTED-FAIL | chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul | Can't get accessible for [object XULElement]
ERROR TEST-UNEXPECTED-FAIL | chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul | Relation of 'labelled by' type for ' 'notificationbox@id='panel13038223658771' node' ' has no expected targets: ' 'tab node' '
3616 ERROR TEST-UNEXPECTED-FAIL | chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul | Can't get accessible for [object XULElement]
3617 ERROR TEST-UNEXPECTED-FAIL | chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul | Relation of 'label for' type for ' 'tab node' ' has no expected targets: ' 'notificationbox@id='panel13038223658771' node' '
Blocks: 438871
Comment hidden (Treeherder Robot)
Comment hidden (Treeherder Robot)
(Assignee)

Comment 3

6 years ago
It appears we start to test relations too early. We're not guaranteed the tree is created when onStateChange listener triggers. I think it makes sense to rely on document loaded events to start testing.
(Assignee)

Updated

6 years ago
Blocks: 518190
(Assignee)

Comment 4

6 years ago
complete test output:

3606 INFO TEST-INFO | chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul | before wait for focus -- loaded: uninitialized active window: ([object ChromeWindow]) chrome://browser/content/browser.xul focused window: ([object Window]) chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul desired window: ([object Window]) chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul child window: ([object Window]) chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul docshell visible: true

3607 INFO TEST-INFO | chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul | must wait for load

3608 INFO TEST-INFO | chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul | already focused

3609 INFO TEST-INFO | chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul | maybe run tests <load:false, focus:true> -- loaded: uninitialized active window: ([object ChromeWindow]) chrome://browser/content/browser.xul focused window: ([object Window]) chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul desired window: ([object Window]) chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul child window: ([object Window]) chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul docshell visible: true

3610 INFO TEST-INFO | chrome://mochitests/content/a11y/accessible/relations
/test_tabbrowser.xul | waitForEvent called <type:load, target[object XULDocument]> -- loaded: complete active window: ([object ChromeWindow]) chrome://browser/content/browser.xul focused window: ([object Window]) chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul desired window: ([object Window]) chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul child window: ([object Window]) chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul docshell visible: true

3611 INFO TEST-INFO | chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul | maybe run tests <load:true, focus:true> -- loaded: complete active window: ([object ChromeWindow]) chrome://browser/content/browser.xul focused window: ([object Window]) chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul desired window: ([object Window]) chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul child window: ([object Window]) chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul docshell visible: true

3612 INFO TEST-PASS | chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul | [object XULElement] is not a target of relation of 'labelled by' type for ' 'notificationbox@id='panel1304655917125' node' '.

3613 INFO TEST-PASS | chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul | [object XULElement] is not a target of relation of 'label for' type for ' 'tab node' '.

3614 ERROR TEST-UNEXPECTED-FAIL | chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul | Can't get accessible for [object XULElement]

3615 ERROR TEST-UNEXPECTED-FAIL | chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul | Relation of 'labelled by' type for ' 'notificationbox@id='panel13046559173161' node' ' has no expected targets: ' 'tab node' '

3616 ERROR TEST-UNEXPECTED-FAIL | chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul | Can't get accessible for [object XULElement]

3617 ERROR TEST-UNEXPECTED-FAIL | chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul | Relation of 'label for' type for ' 'tab node' ' has no expected targets: ' 'notificationbox@id='panel13046559173161' node' '

3618 INFO TEST-END | chrome://mochitests/content/a11y/accessible/relations/test_tabbrowser.xul | finished in 290ms
(Assignee)

Comment 5

6 years ago
So, these fails:

testRelation(panels[1], RELATION_LABELLED_BY, tabs[1]);
testRelation(tabs[1], RELATION_LABEL_FOR, panels[1]);

as I told before we start a test too soon. It sounds document load events won't work here, but we can rely on reorder events.

Marco, can you take it?
(Assignee)

Comment 6

6 years ago
Created attachment 550426 [details] [diff] [review]
patch

similar to bug 673836
Assignee: nobody → surkov.alexander
Status: NEW → ASSIGNED
Attachment #550426 - Flags: review?(marco.zehe)

Updated

6 years ago
Attachment #550426 - Flags: review?(marco.zehe) → review+
(Assignee)

Comment 7

6 years ago
inbound http://hg.mozilla.org/integration/mozilla-inbound/rev/ecd723889587
Whiteboard: [orange] → [orange][inbound]
http://hg.mozilla.org/mozilla-central/rev/ecd723889587
Status: ASSIGNED → RESOLVED
Last Resolved: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla8
(Assignee)

Updated

6 years ago
Whiteboard: [orange][inbound] → [orange]
Comment on attachment 550426 [details] [diff] [review]
patch

Review of attachment 550426 [details] [diff] [review]:
-----------------------------------------------------------------

::: accessible/tests/mochitest/relations/test_tabbrowser.xul
@@ +64,5 @@
> +          }
> +
> +          if (this.reorderCnt == docURIs.length) {
> +            unregisterA11yEventListener(EVENT_REORDER, this);
> +            testAccTree();

Was s/testRelations()/testAccTree()/ actually wanted?

Nit: I would have added |SimpleTest.executeSoon(...);| to let the handler (fully) end first, though this is not required.

@@ +76,2 @@
>  
>        tabBrowser.loadTabs(["about:", "about:mozilla"], false, true);

You missed to update this line to
|tabBrowser.loadTabs(docURIs, false, true);|
Attachment #550426 - Flags: feedback-
Flags: in-testsuite+
(Assignee)

Comment 10

6 years ago
Created attachment 551380 [details] [diff] [review]
followup

thank you for the catch
Attachment #551380 - Flags: feedback?(sgautherie.bz)
Attachment #551380 - Flags: review+
(Assignee)

Updated

6 years ago
Attachment #551380 - Flags: feedback?(sgautherie.bz)
(Assignee)

Comment 11

6 years ago
followup landed - http://hg.mozilla.org/mozilla-central/rev/e8399b43ac17
(In reply to Serge Gautherie (:sgautherie) from comment #9)

> Was s/testRelations()/testAccTree()/ actually wanted?

Fixed.

> Nit: I would have added |SimpleTest.executeSoon(...);| to let the handler
> (fully) end first, though this is not required.

Still applies.

> You missed to update this line to
> |tabBrowser.loadTabs(docURIs, false, true);|

Still applies.
(Assignee)

Comment 13

6 years ago
(In reply to Serge Gautherie (:sgautherie) from comment #12)

> > Nit: I would have added |SimpleTest.executeSoon(...);| to let the handler
> > (fully) end first, though this is not required.
> 
> Still applies.

I like to keep this behavior since sync testing is more interesting in means of possible bugs coverage.

> > You missed to update this line to
> > |tabBrowser.loadTabs(docURIs, false, true);|
> 
> Still applies.

sorry, I'll fix it
(Assignee)

Comment 14

6 years ago
(In reply to alexander surkov from comment #13)

> > > You missed to update this line to
> > > |tabBrowser.loadTabs(docURIs, false, true);|
> > 
> > Still applies.
> 
> sorry, I'll fix it

landed on inbound http://hg.mozilla.org/integration/mozilla-inbound/rev/62324307e24d
http://hg.mozilla.org/mozilla-central/rev/62324307e24d
Keywords: intermittent-failure
Whiteboard: [orange]
You need to log in before you can comment on or make changes to this bug.