| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright 2016 The WebRTC project authors. All Rights Reserved. | 2 * Copyright 2016 The WebRTC project authors. All Rights Reserved. |
| 3 * | 3 * |
| 4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
| 5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
| 6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
| 7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
| 8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
| 9 */ | 9 */ |
| 10 | 10 |
| (...skipping 415 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 426 const RTCMediaStreamTrackStats& media_stream_track) { | 426 const RTCMediaStreamTrackStats& media_stream_track) { |
| 427 RTCStatsVerifier verifier(report_, &media_stream_track); | 427 RTCStatsVerifier verifier(report_, &media_stream_track); |
| 428 verifier.TestMemberIsDefined(media_stream_track.track_identifier); | 428 verifier.TestMemberIsDefined(media_stream_track.track_identifier); |
| 429 verifier.TestMemberIsDefined(media_stream_track.remote_source); | 429 verifier.TestMemberIsDefined(media_stream_track.remote_source); |
| 430 verifier.TestMemberIsDefined(media_stream_track.ended); | 430 verifier.TestMemberIsDefined(media_stream_track.ended); |
| 431 verifier.TestMemberIsDefined(media_stream_track.detached); | 431 verifier.TestMemberIsDefined(media_stream_track.detached); |
| 432 verifier.TestMemberIsDefined(media_stream_track.kind); | 432 verifier.TestMemberIsDefined(media_stream_track.kind); |
| 433 // Video or audio media stream track? | 433 // Video or audio media stream track? |
| 434 if (*media_stream_track.kind == RTCMediaStreamTrackKind::kVideo) { | 434 if (*media_stream_track.kind == RTCMediaStreamTrackKind::kVideo) { |
| 435 // Video-only members | 435 // Video-only members |
| 436 if (!*media_stream_track.remote_source) { | 436 verifier.TestMemberIsNonNegative<uint32_t>( |
| 437 verifier.TestMemberIsNonNegative<uint32_t>( | 437 media_stream_track.frame_width); |
| 438 media_stream_track.frame_width); | 438 verifier.TestMemberIsNonNegative<uint32_t>( |
| 439 verifier.TestMemberIsNonNegative<uint32_t>( | 439 media_stream_track.frame_height); |
| 440 media_stream_track.frame_height); | |
| 441 } else { | |
| 442 // TODO(hbos): Frame width/height should be defined for the remote case. | |
| 443 // Is this a real problem or an artifact of testing? crbug.com/659137 | |
| 444 verifier.TestMemberIsUndefined(media_stream_track.frame_width); | |
| 445 verifier.TestMemberIsUndefined(media_stream_track.frame_height); | |
| 446 } | |
| 447 verifier.TestMemberIsUndefined(media_stream_track.frames_per_second); | 440 verifier.TestMemberIsUndefined(media_stream_track.frames_per_second); |
| 448 verifier.TestMemberIsUndefined(media_stream_track.frames_sent); | 441 verifier.TestMemberIsUndefined(media_stream_track.frames_sent); |
| 449 verifier.TestMemberIsUndefined(media_stream_track.frames_received); | 442 verifier.TestMemberIsUndefined(media_stream_track.frames_received); |
| 450 verifier.TestMemberIsUndefined(media_stream_track.frames_decoded); | 443 verifier.TestMemberIsUndefined(media_stream_track.frames_decoded); |
| 451 verifier.TestMemberIsUndefined(media_stream_track.frames_dropped); | 444 verifier.TestMemberIsUndefined(media_stream_track.frames_dropped); |
| 452 verifier.TestMemberIsUndefined(media_stream_track.frames_corrupted); | 445 verifier.TestMemberIsUndefined(media_stream_track.frames_corrupted); |
| 453 verifier.TestMemberIsUndefined(media_stream_track.partial_frames_lost); | 446 verifier.TestMemberIsUndefined(media_stream_track.partial_frames_lost); |
| 454 verifier.TestMemberIsUndefined(media_stream_track.full_frames_lost); | 447 verifier.TestMemberIsUndefined(media_stream_track.full_frames_lost); |
| 455 // Audio-only members should be undefined | 448 // Audio-only members should be undefined |
| 456 verifier.TestMemberIsUndefined(media_stream_track.audio_level); | 449 verifier.TestMemberIsUndefined(media_stream_track.audio_level); |
| 457 verifier.TestMemberIsUndefined(media_stream_track.echo_return_loss); | 450 verifier.TestMemberIsUndefined(media_stream_track.echo_return_loss); |
| 458 verifier.TestMemberIsUndefined( | 451 verifier.TestMemberIsUndefined( |
| 459 media_stream_track.echo_return_loss_enhancement); | 452 media_stream_track.echo_return_loss_enhancement); |
| 460 } else { | 453 } else { |
| 461 // Video-only members should be undefined | 454 // Video-only members should be undefined |
| 462 verifier.TestMemberIsUndefined(media_stream_track.frame_width); | 455 verifier.TestMemberIsUndefined(media_stream_track.frame_width); |
| 463 verifier.TestMemberIsUndefined(media_stream_track.frame_height); | 456 verifier.TestMemberIsUndefined(media_stream_track.frame_height); |
| 464 verifier.TestMemberIsUndefined(media_stream_track.frames_per_second); | 457 verifier.TestMemberIsUndefined(media_stream_track.frames_per_second); |
| 465 verifier.TestMemberIsUndefined(media_stream_track.frames_sent); | 458 verifier.TestMemberIsUndefined(media_stream_track.frames_sent); |
| 466 verifier.TestMemberIsUndefined(media_stream_track.frames_received); | 459 verifier.TestMemberIsUndefined(media_stream_track.frames_received); |
| 467 verifier.TestMemberIsUndefined(media_stream_track.frames_decoded); | 460 verifier.TestMemberIsUndefined(media_stream_track.frames_decoded); |
| 468 verifier.TestMemberIsUndefined(media_stream_track.frames_dropped); | 461 verifier.TestMemberIsUndefined(media_stream_track.frames_dropped); |
| 469 verifier.TestMemberIsUndefined(media_stream_track.frames_corrupted); | 462 verifier.TestMemberIsUndefined(media_stream_track.frames_corrupted); |
| 470 verifier.TestMemberIsUndefined(media_stream_track.partial_frames_lost); | 463 verifier.TestMemberIsUndefined(media_stream_track.partial_frames_lost); |
| 471 verifier.TestMemberIsUndefined(media_stream_track.full_frames_lost); | 464 verifier.TestMemberIsUndefined(media_stream_track.full_frames_lost); |
| 472 // Audio-only members | 465 // Audio-only members |
| 473 // TODO(hbos): Why are the audio track missing |audio_level|, | 466 verifier.TestMemberIsNonNegative<double>(media_stream_track.audio_level); |
| 474 // |echo_return_loss| and |echo_return_loss_enhancement|? Is this a real | 467 // TODO(hbos): Find out why |echo_return_loss| and |
| 475 // problem or does it have to do with testing and not using real devices? | 468 // |echo_return_loss_enhancement| are undefined in the integration test. |
| 469 // Is this a real problem or a test problem? Update test so that they are. |
| 476 // crbug.com/627816 | 470 // crbug.com/627816 |
| 477 verifier.MarkMemberTested(media_stream_track.audio_level, true); | 471 verifier.TestMemberIsUndefined(media_stream_track.echo_return_loss); |
| 478 verifier.MarkMemberTested(media_stream_track.echo_return_loss, true); | 472 verifier.TestMemberIsUndefined( |
| 479 verifier.MarkMemberTested( | 473 media_stream_track.echo_return_loss_enhancement); |
| 480 media_stream_track.echo_return_loss_enhancement, true); | |
| 481 } | 474 } |
| 482 return verifier.ExpectAllMembersSuccessfullyTested(); | 475 return verifier.ExpectAllMembersSuccessfullyTested(); |
| 483 } | 476 } |
| 484 | 477 |
| 485 bool VerifyRTCPeerConnectionStats( | 478 bool VerifyRTCPeerConnectionStats( |
| 486 const RTCPeerConnectionStats& peer_connection) { | 479 const RTCPeerConnectionStats& peer_connection) { |
| 487 RTCStatsVerifier verifier(report_, &peer_connection); | 480 RTCStatsVerifier verifier(report_, &peer_connection); |
| 488 verifier.TestMemberIsNonNegative<uint32_t>( | 481 verifier.TestMemberIsNonNegative<uint32_t>( |
| 489 peer_connection.data_channels_opened); | 482 peer_connection.data_channels_opened); |
| 490 verifier.TestMemberIsNonNegative<uint32_t>( | 483 verifier.TestMemberIsNonNegative<uint32_t>( |
| (...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 619 caller_ = nullptr; | 612 caller_ = nullptr; |
| 620 // Any pending stats requests should have completed in the act of destroying | 613 // Any pending stats requests should have completed in the act of destroying |
| 621 // the peer connection. | 614 // the peer connection. |
| 622 EXPECT_TRUE(stats_obtainer->report()); | 615 EXPECT_TRUE(stats_obtainer->report()); |
| 623 } | 616 } |
| 624 #endif // HAVE_SCTP | 617 #endif // HAVE_SCTP |
| 625 | 618 |
| 626 } // namespace | 619 } // namespace |
| 627 | 620 |
| 628 } // namespace webrtc | 621 } // namespace webrtc |
| OLD | NEW |