Closed Bug 943275 Opened 6 years ago Closed 6 years ago

Intermittent TEST-UNEXPECTED-FAIL | test_conference.js | ScriptTimeoutException: timed out

Categories

(Testing :: Marionette, defect)

x86
Linux
defect
Not set

Tracking

(firefox28 fixed, firefox29 fixed, firefox30 fixed, firefox-esr24 unaffected, b2g-v1.2 unaffected, b2g-v1.3 fixed, b2g-v1.4 fixed)

RESOLVED FIXED
mozilla30
Tracking Status
firefox28 --- fixed
firefox29 --- fixed
firefox30 --- fixed
firefox-esr24 --- unaffected
b2g-v1.2 --- unaffected
b2g-v1.3 --- fixed
b2g-v1.4 --- fixed

People

(Reporter: cbook, Assigned: hsinyi)

References

()

Details

(Keywords: intermittent-failure)

Attachments

(1 file)

b2g_emulator_vm b2g-inbound opt test marionette-webapi on 2013-11-25 18:15:16 PST for push 353d97cdf854

slave: tst-linux64-ec2-375

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


raise ScriptTimeoutException(message=message, status=status, stacktrace=stacktrace)
TEST-UNEXPECTED-FAIL | test_conference.js | ScriptTimeoutException: timed out
There's a flaw in test_conference.js. 

When there's already a connected conference call, answering a new incoming call triggers conference state change. We should wait for |conference.onstatechange| before checking the state of the conference call. However, the current code doesn't do that.
Comment on attachment 8367759 [details] [diff] [review]
patch v1 - wait for conference.statechange event before checking it's state

There's a flaw in test_conference.js. 

When there's already a connected conference call, answering a new incoming call triggers conference state change. We should wait for |conference.onstatechange| before checking the state of the conference call. However, the current code doesn't do that.

Hi Aknow, may I have your review on this? Thanks.
Attachment #8367759 - Flags: review?(szchen)
Comment on attachment 8367759 [details] [diff] [review]
patch v1 - wait for conference.statechange event before checking it's state

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

::: dom/telephony/test/marionette/test_conference.js
@@ +132,5 @@
> +  };
> +  let receive = function(name) {
> +    receivedPending(name, pending, done);
> +  };
> +  let pending = ["call.onconnecting", "call.onconnected"];

In other functions, we usually put 'pending' part above 'receive' part.

@@ +151,5 @@
>    call.onconnecting = function onconnectingIn(event) {
>      log("Received 'connecting' call event for incoming call.");
>      call.onconnecting = null;
>      checkEventCallState(event, call, "connecting");
> +    receive("call.onconnecting");

In my opinion, the items in 'pending' should be parallel. But for 'connecting' and 'connected', there is a strong order. Maybe we could remove "call.onconnecting".
Attachment #8367759 - Flags: review?(szchen) → review+
(In reply to Szu-Yu Chen [:aknow] from comment #12)
> Comment on attachment 8367759 [details] [diff] [review]
> patch v1 - wait for conference.statechange event before checking it's state
> 
> Review of attachment 8367759 [details] [diff] [review]:
> -----------------------------------------------------------------
> 
> ::: dom/telephony/test/marionette/test_conference.js
> @@ +132,5 @@
> > +  };
> > +  let receive = function(name) {
> > +    receivedPending(name, pending, done);
> > +  };
> > +  let pending = ["call.onconnecting", "call.onconnected"];
> 
> In other functions, we usually put 'pending' part above 'receive' part.
> 
> @@ +151,5 @@
> >    call.onconnecting = function onconnectingIn(event) {
> >      log("Received 'connecting' call event for incoming call.");
> >      call.onconnecting = null;
> >      checkEventCallState(event, call, "connecting");
> > +    receive("call.onconnecting");
> 
> In my opinion, the items in 'pending' should be parallel. But for
> 'connecting' and 'connected', there is a strong order. Maybe we could remove
> "call.onconnecting".

Thanks for the review.
I'll address the comments in the final version, thank you~
Duplicate of this bug: 966119
https://hg.mozilla.org/mozilla-central/rev/ef68842735e8
Assignee: nobody → htsai
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla30
You need to log in before you can comment on or make changes to this bug.