| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "components/test_runner/mock_webrtc_peer_connection_handler.h" | 5 #include "components/test_runner/mock_webrtc_peer_connection_handler.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include <string> | 9 #include <string> |
| 10 #include <utility> | 10 #include <utility> |
| (...skipping 17 matching lines...) Expand all Loading... |
| 28 #include "third_party/WebKit/public/platform/WebRTCVoidRequest.h" | 28 #include "third_party/WebKit/public/platform/WebRTCVoidRequest.h" |
| 29 #include "third_party/WebKit/public/platform/WebString.h" | 29 #include "third_party/WebKit/public/platform/WebString.h" |
| 30 #include "third_party/WebKit/public/platform/WebVector.h" | 30 #include "third_party/WebKit/public/platform/WebVector.h" |
| 31 | 31 |
| 32 using namespace blink; | 32 using namespace blink; |
| 33 | 33 |
| 34 namespace test_runner { | 34 namespace test_runner { |
| 35 | 35 |
| 36 namespace { | 36 namespace { |
| 37 | 37 |
| 38 class MockWebRTCStats : public blink::WebRTCStats { | 38 class MockWebRTCLegacyStats : public blink::WebRTCLegacyStats { |
| 39 public: | 39 public: |
| 40 class MemberIterator : public blink::WebRTCStatsMemberIterator { | 40 class MemberIterator : public blink::WebRTCLegacyStatsMemberIterator { |
| 41 public: | 41 public: |
| 42 MemberIterator( | 42 MemberIterator( |
| 43 const std::vector<std::pair<std::string, std::string>>* values) | 43 const std::vector<std::pair<std::string, std::string>>* values) |
| 44 : values_(values) {} | 44 : values_(values) {} |
| 45 | 45 |
| 46 // blink::WebRTCStatsMemberIterator | 46 // blink::WebRTCLegacyStatsMemberIterator |
| 47 bool isEnd() const override { return i >= values_->size(); } | 47 bool isEnd() const override { return i >= values_->size(); } |
| 48 void next() override { ++i; } | 48 void next() override { ++i; } |
| 49 blink::WebRTCStatsMemberName name() const override { | 49 blink::WebString name() const override { |
| 50 return blink::WebRTCStatsMemberNameUnknown; | |
| 51 } | |
| 52 blink::WebString displayName() const override { | |
| 53 return blink::WebString::fromUTF8((*values_)[i].first); | 50 return blink::WebString::fromUTF8((*values_)[i].first); |
| 54 } | 51 } |
| 55 blink::WebRTCStatsMemberType type() const override { | 52 blink::WebRTCLegacyStatsMemberType type() const override { |
| 56 return blink::WebRTCStatsMemberTypeString; | 53 return blink::WebRTCLegacyStatsMemberTypeString; |
| 57 } | 54 } |
| 58 int valueInt() const override { | 55 int valueInt() const override { |
| 59 NOTREACHED(); | 56 NOTREACHED(); |
| 60 return 0; | 57 return 0; |
| 61 } | 58 } |
| 62 int64_t valueInt64() const override { | 59 int64_t valueInt64() const override { |
| 63 NOTREACHED(); | 60 NOTREACHED(); |
| 64 return 0; | 61 return 0; |
| 65 } | 62 } |
| 66 float valueFloat() const override { | 63 float valueFloat() const override { |
| 67 NOTREACHED(); | 64 NOTREACHED(); |
| 68 return 0.0f; | 65 return 0.0f; |
| 69 } | 66 } |
| 70 blink::WebString valueString() const override { | 67 blink::WebString valueString() const override { |
| 71 return blink::WebString::fromUTF8((*values_)[i].second); | 68 return blink::WebString::fromUTF8((*values_)[i].second); |
| 72 } | 69 } |
| 73 bool valueBool() const override { | 70 bool valueBool() const override { |
| 74 NOTREACHED(); | 71 NOTREACHED(); |
| 75 return false; | 72 return false; |
| 76 } | 73 } |
| 77 blink::WebString valueToString() const override { | 74 blink::WebString valueToString() const override { |
| 78 return valueString(); | 75 return valueString(); |
| 79 } | 76 } |
| 80 | 77 |
| 81 private: | 78 private: |
| 82 size_t i = 0; | 79 size_t i = 0; |
| 83 const std::vector<std::pair<std::string, std::string>>* values_; | 80 const std::vector<std::pair<std::string, std::string>>* values_; |
| 84 }; | 81 }; |
| 85 | 82 |
| 86 MockWebRTCStats(const char* id, const char* type_name, double timestamp) | 83 MockWebRTCLegacyStats(const char* id, const char* type_name, double timestamp) |
| 87 : id_(id), type_name_(type_name), timestamp_(timestamp) {} | 84 : id_(id), type_name_(type_name), timestamp_(timestamp) {} |
| 88 | 85 |
| 89 // blink::WebRTCStats | 86 // blink::WebRTCLegacyStats |
| 90 blink::WebString id() const override { | 87 blink::WebString id() const override { |
| 91 return blink::WebString::fromUTF8(id_); | 88 return blink::WebString::fromUTF8(id_); |
| 92 } | 89 } |
| 93 blink::WebRTCStatsType type() const override { | 90 blink::WebString type() const override { |
| 94 return blink::WebRTCStatsTypeUnknown; | |
| 95 } | |
| 96 blink::WebString typeToString() const override { | |
| 97 return blink::WebString::fromUTF8(type_name_); | 91 return blink::WebString::fromUTF8(type_name_); |
| 98 } | 92 } |
| 99 double timestamp() const override { | 93 double timestamp() const override { |
| 100 return timestamp_; | 94 return timestamp_; |
| 101 } | 95 } |
| 102 blink::WebRTCStatsMemberIterator* iterator() const override { | 96 blink::WebRTCLegacyStatsMemberIterator* iterator() const override { |
| 103 return new MemberIterator(&values_); | 97 return new MemberIterator(&values_); |
| 104 } | 98 } |
| 105 | 99 |
| 106 void addStatistic(const std::string& name, const std::string& value) { | 100 void addStatistic(const std::string& name, const std::string& value) { |
| 107 values_.push_back(std::make_pair(name, value)); | 101 values_.push_back(std::make_pair(name, value)); |
| 108 } | 102 } |
| 109 | 103 |
| 110 private: | 104 private: |
| 111 const std::string id_; | 105 const std::string id_; |
| 112 const std::string type_name_; | 106 const std::string type_name_; |
| (...skipping 259 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 372 client_->negotiationNeeded(); | 366 client_->negotiationNeeded(); |
| 373 } | 367 } |
| 374 | 368 |
| 375 void MockWebRTCPeerConnectionHandler::getStats( | 369 void MockWebRTCPeerConnectionHandler::getStats( |
| 376 const WebRTCStatsRequest& request) { | 370 const WebRTCStatsRequest& request) { |
| 377 WebRTCStatsResponse response = request.createResponse(); | 371 WebRTCStatsResponse response = request.createResponse(); |
| 378 double current_date = | 372 double current_date = |
| 379 interfaces_->GetDelegate()->GetCurrentTimeInMillisecond(); | 373 interfaces_->GetDelegate()->GetCurrentTimeInMillisecond(); |
| 380 if (request.hasSelector()) { | 374 if (request.hasSelector()) { |
| 381 // FIXME: There is no check that the fetched values are valid. | 375 // FIXME: There is no check that the fetched values are valid. |
| 382 MockWebRTCStats stats("Mock video", "ssrc", current_date); | 376 MockWebRTCLegacyStats stats("Mock video", "ssrc", current_date); |
| 383 stats.addStatistic("type", "video"); | 377 stats.addStatistic("type", "video"); |
| 384 response.addStats(stats); | 378 response.addStats(stats); |
| 385 } else { | 379 } else { |
| 386 for (int i = 0; i < stream_count_; ++i) { | 380 for (int i = 0; i < stream_count_; ++i) { |
| 387 MockWebRTCStats audio_stats("Mock audio", "ssrc", current_date); | 381 MockWebRTCLegacyStats audio_stats("Mock audio", "ssrc", current_date); |
| 388 audio_stats.addStatistic("type", "audio"); | 382 audio_stats.addStatistic("type", "audio"); |
| 389 response.addStats(audio_stats); | 383 response.addStats(audio_stats); |
| 390 | 384 |
| 391 MockWebRTCStats video_stats("Mock video", "ssrc", current_date); | 385 MockWebRTCLegacyStats video_stats("Mock video", "ssrc", current_date); |
| 392 video_stats.addStatistic("type", "video"); | 386 video_stats.addStatistic("type", "video"); |
| 393 response.addStats(video_stats); | 387 response.addStats(video_stats); |
| 394 } | 388 } |
| 395 } | 389 } |
| 396 interfaces_->GetDelegate()->PostTask(new WebCallbackTask( | 390 interfaces_->GetDelegate()->PostTask(new WebCallbackTask( |
| 397 base::Bind(&blink::WebRTCStatsRequest::requestSucceeded, | 391 base::Bind(&blink::WebRTCStatsRequest::requestSucceeded, |
| 398 base::Owned(new WebRTCStatsRequest(request)), response))); | 392 base::Owned(new WebRTCStatsRequest(request)), response))); |
| 399 } | 393 } |
| 400 | 394 |
| 401 void MockWebRTCPeerConnectionHandler::ReportCreationOfDataChannel() { | 395 void MockWebRTCPeerConnectionHandler::ReportCreationOfDataChannel() { |
| (...skipping 21 matching lines...) Expand all Loading... |
| 423 const WebMediaStreamTrack& track) { | 417 const WebMediaStreamTrack& track) { |
| 424 return new MockWebRTCDTMFSenderHandler(track, interfaces_->GetDelegate()); | 418 return new MockWebRTCDTMFSenderHandler(track, interfaces_->GetDelegate()); |
| 425 } | 419 } |
| 426 | 420 |
| 427 void MockWebRTCPeerConnectionHandler::stop() { | 421 void MockWebRTCPeerConnectionHandler::stop() { |
| 428 stopped_ = true; | 422 stopped_ = true; |
| 429 weak_factory_.InvalidateWeakPtrs(); | 423 weak_factory_.InvalidateWeakPtrs(); |
| 430 } | 424 } |
| 431 | 425 |
| 432 } // namespace test_runner | 426 } // namespace test_runner |
| OLD | NEW |