Closed Bug 1064535 Opened 10 years ago Closed 9 years ago

Intermittent test_mediarecorder_record_startstopstart.html | Should has two dataavailable event - got 2, expected 3

Categories

(Core :: Audio/Video: Recording, defect)

ARM
Android
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla42
Tracking Status
firefox39 --- wontfix
firefox40 --- fixed
firefox41 --- fixed
firefox42 --- fixed
firefox-esr38 --- fixed
b2g-v2.2 --- fixed
b2g-v2.2r --- fixed
b2g-master --- fixed

People

(Reporter: RyanVM, Assigned: bechen)

References

(Depends on 1 open bug)

Details

(Keywords: intermittent-failure)

Attachments

(1 file)

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

Android 2.3 Emulator mozilla-aurora opt test mochitest-5 on 2014-09-08 12:04:15 PDT for push b2f86b8429bf
slave: tst-linux64-spot-1004

13:10:13     INFO -  215 INFO TEST-START | /tests/content/media/test/test_mediarecorder_record_startstopstart.html
13:10:13     INFO -  dumping last 22 message(s)
13:10:13     INFO -  if you need more context, please use SimpleTest.requestCompleteLog() in your test
13:10:13     INFO -  216 INFO TEST-PASS | /tests/content/media/test/test_mediarecorder_record_startstopstart.html | Media recorder should be recording 
13:10:13     INFO -  217 INFO TEST-PASS | /tests/content/media/test/test_mediarecorder_record_startstopstart.html | check recording status is inactive 
13:10:13     INFO -  218 INFO TEST-PASS | /tests/content/media/test/test_mediarecorder_record_startstopstart.html | check recording status is recording 
13:10:13     INFO -  219 INFO ondataavailable fired
13:10:13     INFO -  220 INFO TEST-PASS | /tests/content/media/test/test_mediarecorder_record_startstopstart.html | Events fired from ondataavailable should be BlobEvent 
13:10:13     INFO -  221 INFO TEST-PASS | /tests/content/media/test/test_mediarecorder_record_startstopstart.html | Event type should dataavailable 
13:10:13     INFO -  222 INFO TEST-PASS | /tests/content/media/test/test_mediarecorder_record_startstopstart.html | Blob data received should have empty type 
13:10:13     INFO -  223 INFO onstop fired
13:10:13     INFO -  224 INFO TEST-PASS | /tests/content/media/test/test_mediarecorder_record_startstopstart.html | Media recorder stream = element stream post recording 
13:10:13     INFO -  225 INFO TEST-PASS | /tests/content/media/test/test_mediarecorder_record_startstopstart.html | check recording status is recording 
13:10:13     INFO -  226 INFO ondataavailable fired
13:10:13     INFO -  227 INFO TEST-PASS | /tests/content/media/test/test_mediarecorder_record_startstopstart.html | Events fired from ondataavailable should be BlobEvent 
13:10:13     INFO -  228 INFO TEST-PASS | /tests/content/media/test/test_mediarecorder_record_startstopstart.html | Event type should dataavailable 
13:10:13     INFO -  229 INFO blob size = 2461
13:10:13     INFO -  230 INFO TEST-PASS | /tests/content/media/test/test_mediarecorder_record_startstopstart.html | Blob data received should have type = audio/ogg 
13:10:13     INFO -  231 INFO ondataavailable fired
13:10:13     INFO -  232 INFO TEST-PASS | /tests/content/media/test/test_mediarecorder_record_startstopstart.html | Events fired from ondataavailable should be BlobEvent 
13:10:13     INFO -  233 INFO TEST-PASS | /tests/content/media/test/test_mediarecorder_record_startstopstart.html | Event type should dataavailable 
13:10:13     INFO -  234 INFO blob size = 765
13:10:13     INFO -  235 INFO TEST-PASS | /tests/content/media/test/test_mediarecorder_record_startstopstart.html | Blob data received should have type = audio/ogg 
13:10:13     INFO -  236 INFO onstop fired
13:10:13     INFO -  237 INFO TEST-PASS | /tests/content/media/test/test_mediarecorder_record_startstopstart.html | Media recorder stream = element stream post recording 
13:10:13     INFO -  238 INFO TEST-UNEXPECTED-FAIL | /tests/content/media/test/test_mediarecorder_record_startstopstart.html | Should has two dataavailable event - got 2, expected 3
13:10:13     INFO -  239 INFO TEST-OK | /tests/content/media/test/test_mediarecorder_record_startstopstart.html | took 14629ms
Include Benjamin.
There are 2 recorder.stop() in the testcase, so at least we will receive 2 blobs.
In this case, we receive 3 blobs more than 2, it seems a normal case. I'll try to modify the testcase.
Assignee: nobody → bechen
Status: NEW → ASSIGNED
The 2nd start() function pass the 10000ms to trigger the dataavailable event, but settimeout is 1000ms.
Does the settimeout call the stop() more than 10sec?
Depends on: 1034471
(In reply to Randy Lin [:rlin] - Be Mozillian on 2015/01/26 from comment #3)
> The 2nd start() function pass the 10000ms to trigger the dataavailable
> event, but settimeout is 1000ms.
> Does the settimeout call the stop() more than 10sec?

Theoretically, it is possible the 1 second timeout be called after 10 seconds..

And since we will fire a OnDataavailable before the OnStop event, the last one blob might be an empty blob, so I will remove the mimetype check of empty blob in testcase.
1. Relax the number of ondataavailble checking, see comment 21
2. Don't check the mimetype of empty blob because we must fire a ondataavailble before onstop event, so it could be an empty blob but the mimetype is not empty.
Attachment #8637151 - Flags: review?(jwwang)
Attachment #8637151 - Flags: review?(jwwang) → review+
Keywords: checkin-needed
https://hg.mozilla.org/mozilla-central/rev/b7f3d44f21e0
Status: ASSIGNED → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla42
You need to log in before you can comment on or make changes to this bug.