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

Unified Diff: chrome/browser/media/webrtc/webrtc_browsertest_base.cc

Issue 2972003002: RTCPeerConnection.ontrack event added. (Closed)
Patch Set: Le merge Created 3 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/media/webrtc/webrtc_browsertest_base.cc
diff --git a/chrome/browser/media/webrtc/webrtc_browsertest_base.cc b/chrome/browser/media/webrtc/webrtc_browsertest_base.cc
index 4e88d2ace2e91254863abfadc5167116a7159c90..3877dbe2eaf292983030499f7ee18ff0e7b787b3 100644
--- a/chrome/browser/media/webrtc/webrtc_browsertest_base.cc
+++ b/chrome/browser/media/webrtc/webrtc_browsertest_base.cc
@@ -151,6 +151,13 @@ std::vector<std::string> JsonArrayToVectorOfStrings(
} // namespace
+WebRtcTestBase::TrackEvent::TrackEvent(const std::string& track_id)
+ : track_id(track_id) {}
+
+WebRtcTestBase::TrackEvent::TrackEvent(const TrackEvent&) = default;
+
+WebRtcTestBase::TrackEvent::~TrackEvent() = default;
+
WebRtcTestBase::WebRtcTestBase(): detect_errors_in_javascript_(false) {
// The handler gets set for each test method, but that's fine since this
// set operation is idempotent.
@@ -691,3 +698,27 @@ size_t WebRtcTestBase::GetNegotiationNeededCount(
EXPECT_TRUE(base::StringToSizeT(result.substr(24), &count));
return count;
}
+
+void WebRtcTestBase::SetupOnTrackListener(content::WebContents* tab) const {
+ EXPECT_EQ("ok-ontrack-wired",
+ ExecuteJavascript("setupOnTrackListener()", tab));
+}
+
+std::vector<WebRtcTestBase::TrackEvent> WebRtcTestBase::GetTrackEvents(
+ content::WebContents* tab) const {
+ std::string result = ExecuteJavascript("getOnTrackEvents()", tab);
+ EXPECT_TRUE(base::StartsWith(result, "ok-", base::CompareCase::SENSITIVE));
+ std::vector<std::string> tokens = base::SplitString(
+ result.substr(3), " ", base::KEEP_WHITESPACE, base::SPLIT_WANT_ALL);
+ std::vector<TrackEvent> events;
+ for (size_t i = 0; i < tokens.size(); ++i) {
+ if (tokens[i] == "RTCTrackEvent") {
+ DCHECK_LT(i + 1, tokens.size());
+ events.push_back(TrackEvent(tokens[++i]));
+ } else {
+ DCHECK(!events.empty());
+ events[events.size() - 1].stream_ids.push_back(tokens[i]);
+ }
+ }
+ return events;
+}
« no previous file with comments | « chrome/browser/media/webrtc/webrtc_browsertest_base.h ('k') | chrome/browser/media/webrtc/webrtc_rtp_browsertest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698