Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(113)

Issue 2186853002: WebRTCStats added, retaining type info when surfacing WebRTC stats into Blink (Closed)

Created:
4 years, 4 months ago by hbos_chromium
Modified:
4 years, 4 months ago
CC:
blink-reviews, blink-reviews-api_chromium.org, chromium-reviews, darin-cc_chromium.org, dglazkov+blink, feature-media-reviews_chromium.org, haraken, jam, mcasas+watch+mediastream_chromium.org, mcasas+watch+vc_chromium.org, miu+watch_chromium.org, mlamouri+watch-content_chromium.org, phoglund+watch_chromium.org, posciak+watch_chromium.org, tnakamura+watch_chromium.org, tommyw+watchlist_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

WebRTCStats added, retaining type info when surfacing WebRTC stats into Blink. Previously RTCStatsResponseBase and impls had addReport and addStatistic methods, adding stats as string key-string value pairs. These are replaced by addStats(const WebRTCStats&). WebRTCStats describe a stats report and has a member iterator. The members' names and values can be converted to strings and be used like addReport and addStatistic was previously used. RTCStatsResponse still uses this functionality. Additionally, the members are described with type information and has getters for each type. The WebRTCStatsType and WebRTCStatsMemberName enums will be used to identify individual stats. In follow-up CLs where .idl dictionaries are added for each RTCStats in the spec, the member and type information will be used to translate WebRTCStats into RTCStats-derived dictionaries. Existing getStats tests use mocking. (blink_tests' RTCPeerConnection-stats.html use a mock WebRTCPeerConnectionHandler, content_unittests' RTCPeerConnectionHandlerTest.GetStats* use a mock LocalRTCStatsRequest). This CL adds a getStats browser_tests that make sure getStats can be called and result iterated without mocking components (integration test). BUG=627816 Committed: https://crrev.com/36e436520d6835e4f4c48d0ab57b837197104d1d Cr-Commit-Position: refs/heads/master@{#408957}

Patch Set 1 #

Patch Set 2 : Fixed mock peer connection handler #

Patch Set 3 : Member virtual valueX() for each member type (except ID) #

Patch Set 4 : Updated peerconnection.js (re-running trybots can wait, will need to rebase with master) #

Total comments: 8

Patch Set 5 : Rebase with master #

Patch Set 6 : Addressed phoglund's comments #

Total comments: 8

Patch Set 7 : Addressed tommi's comments #

Unified diffs Side-by-side diffs Delta from patch set Stats (+369 lines, -100 lines) Patch
M chrome/browser/media/webrtc_browsertest.cc View 1 2 3 4 5 2 chunks +13 lines, -1 line 0 comments Download
M chrome/browser/media/webrtc_browsertest_base.h View 1 2 3 4 5 1 chunk +2 lines, -0 lines 0 comments Download
M chrome/browser/media/webrtc_browsertest_base.cc View 1 2 3 4 5 6 1 chunk +8 lines, -12 lines 0 comments Download
M chrome/test/data/webrtc/peerconnection.js View 1 2 3 4 5 6 1 chunk +25 lines, -0 lines 0 comments Download
M components/test_runner/mock_webrtc_peer_connection_handler.cc View 1 2 3 4 5 6 3 chunks +98 lines, -8 lines 0 comments Download
M content/renderer/media/rtc_peer_connection_handler.h View 2 chunks +2 lines, -4 lines 0 comments Download
M content/renderer/media/rtc_peer_connection_handler.cc View 1 2 6 chunks +129 lines, -40 lines 0 comments Download
M content/renderer/media/rtc_peer_connection_handler_unittest.cc View 1 2 3 4 5 6 1 chunk +6 lines, -9 lines 0 comments Download
M third_party/WebKit/Source/modules/peerconnection/RTCStatsResponse.h View 1 2 3 4 1 chunk +1 line, -3 lines 0 comments Download
M third_party/WebKit/Source/modules/peerconnection/RTCStatsResponse.cpp View 1 2 3 4 1 chunk +7 lines, -9 lines 0 comments Download
M third_party/WebKit/Source/platform/exported/WebRTCStatsResponse.cpp View 1 chunk +2 lines, -8 lines 0 comments Download
M third_party/WebKit/Source/platform/peerconnection/RTCStatsResponseBase.h View 2 chunks +2 lines, -2 lines 0 comments Download
M third_party/WebKit/public/blink_headers.gypi View 1 chunk +1 line, -0 lines 0 comments Download
A third_party/WebKit/public/platform/WebRTCStats.h View 1 2 1 chunk +71 lines, -0 lines 0 comments Download
M third_party/WebKit/public/platform/WebRTCStatsResponse.h View 2 chunks +2 lines, -4 lines 0 comments Download

Messages

Total messages: 41 (26 generated)
hbos_chromium
PTAL phoglund, tommi, mkwst. phoglund for webrtc_browsertest* and peerconnection.js. tommi/mkwst for everything else. (mkwst owner ...
4 years, 4 months ago (2016-07-27 12:03:14 UTC) #13
phoglund_chromium
https://codereview.chromium.org/2186853002/diff/60001/chrome/browser/media/webrtc_browsertest.cc File chrome/browser/media/webrtc_browsertest.cc (right): https://codereview.chromium.org/2186853002/diff/60001/chrome/browser/media/webrtc_browsertest.cc#newcode60 chrome/browser/media/webrtc_browsertest.cc:60: bool get_stats = false) { Instead of adding a ...
4 years, 4 months ago (2016-07-27 12:52:10 UTC) #14
hbos_chromium
PTAL phoglund. https://codereview.chromium.org/2186853002/diff/60001/chrome/browser/media/webrtc_browsertest.cc File chrome/browser/media/webrtc_browsertest.cc (right): https://codereview.chromium.org/2186853002/diff/60001/chrome/browser/media/webrtc_browsertest.cc#newcode60 chrome/browser/media/webrtc_browsertest.cc:60: bool get_stats = false) { On 2016/07/27 ...
4 years, 4 months ago (2016-07-27 13:50:32 UTC) #17
tommi (sloooow) - chröme
rs lgtm once patrik is happy and below nits fixed https://codereview.chromium.org/2186853002/diff/100001/chrome/browser/media/webrtc_browsertest_base.cc File chrome/browser/media/webrtc_browsertest_base.cc (right): https://codereview.chromium.org/2186853002/diff/100001/chrome/browser/media/webrtc_browsertest_base.cc#newcode491 ...
4 years, 4 months ago (2016-07-27 18:38:40 UTC) #20
phoglund_chromium
lgtm
4 years, 4 months ago (2016-07-28 06:24:22 UTC) #21
phoglund_chromium
Note, tommi, I only reviewed the tests here.
4 years, 4 months ago (2016-07-28 06:25:08 UTC) #22
tommi (sloooow) - chröme
On 2016/07/28 06:25:08, phoglund_chrome wrote: > Note, tommi, I only reviewed the tests here. yup, ...
4 years, 4 months ago (2016-07-28 07:35:01 UTC) #23
hbos_chromium
Please take a look, Mike West. https://codereview.chromium.org/2186853002/diff/100001/chrome/browser/media/webrtc_browsertest_base.cc File chrome/browser/media/webrtc_browsertest_base.cc (right): https://codereview.chromium.org/2186853002/diff/100001/chrome/browser/media/webrtc_browsertest_base.cc#newcode491 chrome/browser/media/webrtc_browsertest_base.cc:491: EXPECT_EQ("ok-got-stats", response) << ...
4 years, 4 months ago (2016-07-28 08:27:45 UTC) #26
hbos_chromium
Friendly ping, mkwst.
4 years, 4 months ago (2016-07-29 14:51:52 UTC) #29
Mike West
LGTM.
4 years, 4 months ago (2016-08-01 11:42:40 UTC) #30
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2186853002/120001
4 years, 4 months ago (2016-08-01 11:57:56 UTC) #33
commit-bot: I haz the power
Try jobs failed on following builders: linux_android_rel_ng on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/linux_android_rel_ng/builds/113665)
4 years, 4 months ago (2016-08-01 13:10:29 UTC) #35
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2186853002/120001
4 years, 4 months ago (2016-08-01 13:48:56 UTC) #37
commit-bot: I haz the power
Committed patchset #7 (id:120001)
4 years, 4 months ago (2016-08-01 14:18:31 UTC) #39
commit-bot: I haz the power
4 years, 4 months ago (2016-08-01 14:20:05 UTC) #41
Message was sent while issue was closed.
Patchset 7 (id:??) landed as
https://crrev.com/36e436520d6835e4f4c48d0ab57b837197104d1d
Cr-Commit-Position: refs/heads/master@{#408957}

Powered by Google App Engine
This is Rietveld 408576698