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

Side by Side Diff: content/browser/media/webrtc_internals_unittest.cc

Issue 396193005: Converts RTCOfferOptions to constriants in the glue code for createOffer. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "base/memory/scoped_ptr.h" 5 #include "base/memory/scoped_ptr.h"
6 #include "base/message_loop/message_loop.h" 6 #include "base/message_loop/message_loop.h"
7 #include "base/values.h" 7 #include "base/values.h"
8 #include "content/browser/media/webrtc_internals.h" 8 #include "content/browser/media/webrtc_internals.h"
9 #include "content/browser/media/webrtc_internals_ui_observer.h" 9 #include "content/browser/media/webrtc_internals_ui_observer.h"
10 #include "content/public/test/test_browser_thread.h" 10 #include "content/public/test/test_browser_thread.h"
11 #include "testing/gtest/include/gtest/gtest.h" 11 #include "testing/gtest/include/gtest/gtest.h"
12 12
13 namespace content { 13 namespace content {
14 14
15 namespace { 15 namespace {
16 16
17 static const std::string kContraints = "c"; 17 static const std::string kContraints = "c";
18 static const std::string kServers = "s"; 18 static const std::string kRtcConfiguration = "r";
19 static const std::string kUrl = "u"; 19 static const std::string kUrl = "u";
20 20
21 class MockWebRTCInternalsProxy : public WebRTCInternalsUIObserver { 21 class MockWebRTCInternalsProxy : public WebRTCInternalsUIObserver {
22 public: 22 public:
23 virtual void OnUpdate(const std::string& command, 23 virtual void OnUpdate(const std::string& command,
24 const base::Value* value) OVERRIDE { 24 const base::Value* value) OVERRIDE {
25 command_ = command; 25 command_ = command;
26 if (value) 26 if (value)
27 value_.reset(value->DeepCopy()); 27 value_.reset(value->DeepCopy());
28 } 28 }
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
92 }; 92 };
93 93
94 } // namespace 94 } // namespace
95 95
96 TEST_F(WebRTCInternalsTest, AddRemoveObserver) { 96 TEST_F(WebRTCInternalsTest, AddRemoveObserver) {
97 scoped_ptr<MockWebRTCInternalsProxy> observer( 97 scoped_ptr<MockWebRTCInternalsProxy> observer(
98 new MockWebRTCInternalsProxy()); 98 new MockWebRTCInternalsProxy());
99 WebRTCInternals::GetInstance()->AddObserver(observer.get()); 99 WebRTCInternals::GetInstance()->AddObserver(observer.get());
100 WebRTCInternals::GetInstance()->RemoveObserver(observer.get()); 100 WebRTCInternals::GetInstance()->RemoveObserver(observer.get());
101 WebRTCInternals::GetInstance()->OnAddPeerConnection( 101 WebRTCInternals::GetInstance()->OnAddPeerConnection(
102 0, 3, 4, kUrl, kServers, kContraints); 102 0, 3, 4, kUrl, kRtcConfiguration, kContraints);
103 EXPECT_EQ("", observer->command()); 103 EXPECT_EQ("", observer->command());
104 104
105 WebRTCInternals::GetInstance()->OnRemovePeerConnection(3, 4); 105 WebRTCInternals::GetInstance()->OnRemovePeerConnection(3, 4);
106 } 106 }
107 107
108 TEST_F(WebRTCInternalsTest, SendAddPeerConnectionUpdate) { 108 TEST_F(WebRTCInternalsTest, SendAddPeerConnectionUpdate) {
109 scoped_ptr<MockWebRTCInternalsProxy> observer( 109 scoped_ptr<MockWebRTCInternalsProxy> observer(
110 new MockWebRTCInternalsProxy()); 110 new MockWebRTCInternalsProxy());
111 WebRTCInternals::GetInstance()->AddObserver(observer.get()); 111 WebRTCInternals::GetInstance()->AddObserver(observer.get());
112 WebRTCInternals::GetInstance()->OnAddPeerConnection( 112 WebRTCInternals::GetInstance()->OnAddPeerConnection(
113 0, 1, 2, kUrl, kServers, kContraints); 113 0, 1, 2, kUrl, kRtcConfiguration, kContraints);
114 EXPECT_EQ("addPeerConnection", observer->command()); 114 EXPECT_EQ("addPeerConnection", observer->command());
115 115
116 base::DictionaryValue* dict = NULL; 116 base::DictionaryValue* dict = NULL;
117 EXPECT_TRUE(observer->value()->GetAsDictionary(&dict)); 117 EXPECT_TRUE(observer->value()->GetAsDictionary(&dict));
118 118
119 VerifyInt(dict, "pid", 1); 119 VerifyInt(dict, "pid", 1);
120 VerifyInt(dict, "lid", 2); 120 VerifyInt(dict, "lid", 2);
121 VerifyString(dict, "url", kUrl); 121 VerifyString(dict, "url", kUrl);
122 VerifyString(dict, "servers", kServers); 122 VerifyString(dict, "rtcConfiguration", kRtcConfiguration);
123 VerifyString(dict, "constraints", kContraints); 123 VerifyString(dict, "constraints", kContraints);
124 124
125 WebRTCInternals::GetInstance()->RemoveObserver(observer.get()); 125 WebRTCInternals::GetInstance()->RemoveObserver(observer.get());
126 WebRTCInternals::GetInstance()->OnRemovePeerConnection(1, 2); 126 WebRTCInternals::GetInstance()->OnRemovePeerConnection(1, 2);
127 } 127 }
128 128
129 TEST_F(WebRTCInternalsTest, SendRemovePeerConnectionUpdate) { 129 TEST_F(WebRTCInternalsTest, SendRemovePeerConnectionUpdate) {
130 scoped_ptr<MockWebRTCInternalsProxy> observer( 130 scoped_ptr<MockWebRTCInternalsProxy> observer(
131 new MockWebRTCInternalsProxy()); 131 new MockWebRTCInternalsProxy());
132 WebRTCInternals::GetInstance()->AddObserver(observer.get()); 132 WebRTCInternals::GetInstance()->AddObserver(observer.get());
133 WebRTCInternals::GetInstance()->OnAddPeerConnection( 133 WebRTCInternals::GetInstance()->OnAddPeerConnection(
134 0, 1, 2, kUrl, kServers, kContraints); 134 0, 1, 2, kUrl, kRtcConfiguration, kContraints);
135 WebRTCInternals::GetInstance()->OnRemovePeerConnection(1, 2); 135 WebRTCInternals::GetInstance()->OnRemovePeerConnection(1, 2);
136 EXPECT_EQ("removePeerConnection", observer->command()); 136 EXPECT_EQ("removePeerConnection", observer->command());
137 137
138 base::DictionaryValue* dict = NULL; 138 base::DictionaryValue* dict = NULL;
139 EXPECT_TRUE(observer->value()->GetAsDictionary(&dict)); 139 EXPECT_TRUE(observer->value()->GetAsDictionary(&dict));
140 140
141 VerifyInt(dict, "pid", 1); 141 VerifyInt(dict, "pid", 1);
142 VerifyInt(dict, "lid", 2); 142 VerifyInt(dict, "lid", 2);
143 143
144 WebRTCInternals::GetInstance()->RemoveObserver(observer.get()); 144 WebRTCInternals::GetInstance()->RemoveObserver(observer.get());
145 } 145 }
146 146
147 TEST_F(WebRTCInternalsTest, SendUpdatePeerConnectionUpdate) { 147 TEST_F(WebRTCInternalsTest, SendUpdatePeerConnectionUpdate) {
148 scoped_ptr<MockWebRTCInternalsProxy> observer( 148 scoped_ptr<MockWebRTCInternalsProxy> observer(
149 new MockWebRTCInternalsProxy()); 149 new MockWebRTCInternalsProxy());
150 WebRTCInternals::GetInstance()->AddObserver(observer.get()); 150 WebRTCInternals::GetInstance()->AddObserver(observer.get());
151 WebRTCInternals::GetInstance()->OnAddPeerConnection( 151 WebRTCInternals::GetInstance()->OnAddPeerConnection(
152 0, 1, 2, kUrl, kServers, kContraints); 152 0, 1, 2, kUrl, kRtcConfiguration, kContraints);
153 153
154 const std::string update_type = "fakeType"; 154 const std::string update_type = "fakeType";
155 const std::string update_value = "fakeValue"; 155 const std::string update_value = "fakeValue";
156 WebRTCInternals::GetInstance()->OnUpdatePeerConnection( 156 WebRTCInternals::GetInstance()->OnUpdatePeerConnection(
157 1, 2, update_type, update_value); 157 1, 2, update_type, update_value);
158 158
159 EXPECT_EQ("updatePeerConnection", observer->command()); 159 EXPECT_EQ("updatePeerConnection", observer->command());
160 160
161 base::DictionaryValue* dict = NULL; 161 base::DictionaryValue* dict = NULL;
162 EXPECT_TRUE(observer->value()->GetAsDictionary(&dict)); 162 EXPECT_TRUE(observer->value()->GetAsDictionary(&dict));
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
213 213
214 WebRTCInternals::GetInstance()->RemoveObserver(observer.get()); 214 WebRTCInternals::GetInstance()->RemoveObserver(observer.get());
215 } 215 }
216 216
217 TEST_F(WebRTCInternalsTest, SendAllUpdatesWithPeerConnectionUpdate) { 217 TEST_F(WebRTCInternalsTest, SendAllUpdatesWithPeerConnectionUpdate) {
218 const int rid = 0, pid = 1, lid = 2; 218 const int rid = 0, pid = 1, lid = 2;
219 const std::string update_type = "fakeType"; 219 const std::string update_type = "fakeType";
220 const std::string update_value = "fakeValue"; 220 const std::string update_value = "fakeValue";
221 221
222 WebRTCInternals::GetInstance()->OnAddPeerConnection( 222 WebRTCInternals::GetInstance()->OnAddPeerConnection(
223 rid, pid, lid, kUrl, kServers, kContraints); 223 rid, pid, lid, kUrl, kRtcConfiguration, kContraints);
224 WebRTCInternals::GetInstance()->OnUpdatePeerConnection( 224 WebRTCInternals::GetInstance()->OnUpdatePeerConnection(
225 pid, lid, update_type, update_value); 225 pid, lid, update_type, update_value);
226 226
227 scoped_ptr<MockWebRTCInternalsProxy> observer(new MockWebRTCInternalsProxy()); 227 scoped_ptr<MockWebRTCInternalsProxy> observer(new MockWebRTCInternalsProxy());
228 WebRTCInternals::GetInstance()->AddObserver(observer.get()); 228 WebRTCInternals::GetInstance()->AddObserver(observer.get());
229 229
230 WebRTCInternals::GetInstance()->UpdateObserver(observer.get()); 230 WebRTCInternals::GetInstance()->UpdateObserver(observer.get());
231 231
232 EXPECT_EQ("updateAllPeerConnections", observer->command()); 232 EXPECT_EQ("updateAllPeerConnections", observer->command());
233 233
234 base::ListValue* list = NULL; 234 base::ListValue* list = NULL;
235 EXPECT_TRUE(observer->value()->GetAsList(&list)); 235 EXPECT_TRUE(observer->value()->GetAsList(&list));
236 EXPECT_EQ(1U, list->GetSize()); 236 EXPECT_EQ(1U, list->GetSize());
237 237
238 base::DictionaryValue* dict = NULL; 238 base::DictionaryValue* dict = NULL;
239 EXPECT_TRUE((*list->begin())->GetAsDictionary(&dict)); 239 EXPECT_TRUE((*list->begin())->GetAsDictionary(&dict));
240 240
241 VerifyInt(dict, "rid", rid); 241 VerifyInt(dict, "rid", rid);
242 VerifyInt(dict, "pid", pid); 242 VerifyInt(dict, "pid", pid);
243 VerifyInt(dict, "lid", lid); 243 VerifyInt(dict, "lid", lid);
244 VerifyString(dict, "url", kUrl); 244 VerifyString(dict, "url", kUrl);
245 VerifyString(dict, "servers", kServers); 245 VerifyString(dict, "rtcConfiguration", kRtcConfiguration);
246 VerifyString(dict, "constraints", kContraints); 246 VerifyString(dict, "constraints", kContraints);
247 247
248 base::ListValue* log = NULL; 248 base::ListValue* log = NULL;
249 EXPECT_TRUE(dict->GetList("log", &log)); 249 EXPECT_TRUE(dict->GetList("log", &log));
250 EXPECT_EQ(1U, log->GetSize()); 250 EXPECT_EQ(1U, log->GetSize());
251 251
252 EXPECT_TRUE((*log->begin())->GetAsDictionary(&dict)); 252 EXPECT_TRUE((*log->begin())->GetAsDictionary(&dict));
253 VerifyString(dict, "type", update_type); 253 VerifyString(dict, "type", update_type);
254 VerifyString(dict, "value", update_value); 254 VerifyString(dict, "value", update_value);
255 std::string time; 255 std::string time;
256 EXPECT_TRUE(dict->GetString("time", &time)); 256 EXPECT_TRUE(dict->GetString("time", &time));
257 EXPECT_FALSE(time.empty()); 257 EXPECT_FALSE(time.empty());
258 } 258 }
259 259
260 TEST_F(WebRTCInternalsTest, OnAddStats) { 260 TEST_F(WebRTCInternalsTest, OnAddStats) {
261 const int rid = 0, pid = 1, lid = 2; 261 const int rid = 0, pid = 1, lid = 2;
262 scoped_ptr<MockWebRTCInternalsProxy> observer(new MockWebRTCInternalsProxy()); 262 scoped_ptr<MockWebRTCInternalsProxy> observer(new MockWebRTCInternalsProxy());
263 WebRTCInternals::GetInstance()->AddObserver(observer.get()); 263 WebRTCInternals::GetInstance()->AddObserver(observer.get());
264 WebRTCInternals::GetInstance()->OnAddPeerConnection( 264 WebRTCInternals::GetInstance()->OnAddPeerConnection(
265 rid, pid, lid, kUrl, kServers, kContraints); 265 rid, pid, lid, kUrl, kRtcConfiguration, kContraints);
266 266
267 base::ListValue list; 267 base::ListValue list;
268 list.AppendString("xxx"); 268 list.AppendString("xxx");
269 list.AppendString("yyy"); 269 list.AppendString("yyy");
270 WebRTCInternals::GetInstance()->OnAddStats(pid, lid, list); 270 WebRTCInternals::GetInstance()->OnAddStats(pid, lid, list);
271 271
272 EXPECT_EQ("addStats", observer->command()); 272 EXPECT_EQ("addStats", observer->command());
273 base::DictionaryValue* dict = NULL; 273 base::DictionaryValue* dict = NULL;
274 EXPECT_TRUE(observer->value()->GetAsDictionary(&dict)); 274 EXPECT_TRUE(observer->value()->GetAsDictionary(&dict));
275 275
276 VerifyInt(dict, "pid", pid); 276 VerifyInt(dict, "pid", pid);
277 VerifyInt(dict, "lid", lid); 277 VerifyInt(dict, "lid", lid);
278 VerifyList(dict, "reports", list); 278 VerifyList(dict, "reports", list);
279 } 279 }
280 280
281 TEST_F(WebRTCInternalsTest, AecRecordingFileSelectionCanceled) { 281 TEST_F(WebRTCInternalsTest, AecRecordingFileSelectionCanceled) {
282 scoped_ptr<MockWebRTCInternalsProxy> observer(new MockWebRTCInternalsProxy()); 282 scoped_ptr<MockWebRTCInternalsProxy> observer(new MockWebRTCInternalsProxy());
283 WebRTCInternals::GetInstance()->AddObserver(observer.get()); 283 WebRTCInternals::GetInstance()->AddObserver(observer.get());
284 WebRTCInternals::GetInstance()->FileSelectionCanceled(NULL); 284 WebRTCInternals::GetInstance()->FileSelectionCanceled(NULL);
285 EXPECT_EQ("aecRecordingFileSelectionCancelled", observer->command()); 285 EXPECT_EQ("aecRecordingFileSelectionCancelled", observer->command());
286 EXPECT_EQ(NULL, observer->value()); 286 EXPECT_EQ(NULL, observer->value());
287 } 287 }
288 288
289 } // namespace content 289 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698