Reland of Fix flaky EndToEndTest.TransportSeqNumOnAudioAndVideo (patchset #1 id:1 of https://codereview.webrtc.org/2730893002/ )

Reason for revert:
Fixing race and relanding

Original issue's description:
> Revert of Fix flaky EndToEndTest.TransportSeqNumOnAudioAndVideo (patchset #2 id:20001 of https://codereview.webrtc.org/2728103002/ )
>
> Reason for revert:
> Fails on tsan
> http://build.chromium.org/p/client.webrtc/builders/Linux%20Tsan%20v2/builds/10235
>
> Original issue's description:
> > Fix flaky EndToEndTest.TransportSeqNumOnAudioAndVideo
> > Add extra checks to it to simplify diagnostic should it fail again.
> >
> > BUG=webrtc:7292
> >
> > Review-Url: https://codereview.webrtc.org/2728103002
> > Cr-Commit-Position: refs/heads/master@{#16999}
> > Committed: bcb6004a9d
>
> TBR=asapersson@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:7292
>
> Review-Url: https://codereview.webrtc.org/2730893002
> Cr-Commit-Position: refs/heads/master@{#17000}
> Committed: 9a59473f2c

TBR=asapersson@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7292

Review-Url: https://codereview.webrtc.org/2730673004
Cr-Commit-Position: refs/heads/master@{#17006}
This commit is contained in:
danilchap 2017-03-03 06:21:54 -08:00 committed by Commit bot
parent 65cb70d939
commit 4336d73bd3

View File

@ -4025,7 +4025,8 @@ TEST_P(EndToEndTest, VerifyDefaultFlexfecReceiveConfigParameters) {
}
TEST_P(EndToEndTest, TransportSeqNumOnAudioAndVideo) {
static const int kExtensionId = 8;
static constexpr int kExtensionId = 8;
static constexpr size_t kMinPacketsToWaitFor = 50;
class TransportSequenceNumberTest : public test::EndToEndTest {
public:
TransportSequenceNumberTest()
@ -4063,7 +4064,7 @@ TEST_P(EndToEndTest, TransportSeqNumOnAudioAndVideo) {
if (header.ssrc == kAudioSendSsrc)
audio_observed_ = true;
if (audio_observed_ && video_observed_ &&
received_packet_ids_.size() == 50) {
received_packet_ids_.size() >= kMinPacketsToWaitFor) {
size_t packet_id_range =
*received_packet_ids_.rbegin() - *received_packet_ids_.begin() + 1;
EXPECT_EQ(received_packet_ids_.size(), packet_id_range);
@ -4077,6 +4078,12 @@ TEST_P(EndToEndTest, TransportSeqNumOnAudioAndVideo) {
"packets with transport sequence number.";
}
void ExpectSuccessful() {
EXPECT_TRUE(video_observed_);
EXPECT_TRUE(audio_observed_);
EXPECT_GE(received_packet_ids_.size(), kMinPacketsToWaitFor);
}
private:
bool video_observed_;
bool audio_observed_;
@ -4085,6 +4092,9 @@ TEST_P(EndToEndTest, TransportSeqNumOnAudioAndVideo) {
} test;
RunBaseTest(&test);
// Double check conditions for successful test to produce better error
// message when the test fail.
test.ExpectSuccessful();
}
class EndToEndLogTest : public EndToEndTest {