| OLD | NEW | 
|---|
|  | (Empty) | 
| 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 |  | 
| 3 // found in the LICENSE file. |  | 
| 4 |  | 
| 5 #include "content/shell/renderer/test_runner/mock_webrtc_data_channel_handler.h" |  | 
| 6 |  | 
| 7 #include "base/logging.h" |  | 
| 8 #include "content/shell/renderer/test_runner/web_test_delegate.h" |  | 
| 9 #include "third_party/WebKit/public/platform/WebRTCDataChannelHandlerClient.h" |  | 
| 10 |  | 
| 11 using namespace blink; |  | 
| 12 |  | 
| 13 namespace content { |  | 
| 14 |  | 
| 15 class DataChannelReadyStateTask |  | 
| 16     : public WebMethodTask<MockWebRTCDataChannelHandler> { |  | 
| 17  public: |  | 
| 18   DataChannelReadyStateTask(MockWebRTCDataChannelHandler* object, |  | 
| 19                             WebRTCDataChannelHandlerClient* data_channel_client, |  | 
| 20                             WebRTCDataChannelHandlerClient::ReadyState state) |  | 
| 21       : WebMethodTask<MockWebRTCDataChannelHandler>(object), |  | 
| 22         data_channel_client_(data_channel_client), |  | 
| 23         state_(state) {} |  | 
| 24 |  | 
| 25   void RunIfValid() override { |  | 
| 26     data_channel_client_->didChangeReadyState(state_); |  | 
| 27   } |  | 
| 28 |  | 
| 29  private: |  | 
| 30   WebRTCDataChannelHandlerClient* data_channel_client_; |  | 
| 31   WebRTCDataChannelHandlerClient::ReadyState state_; |  | 
| 32 }; |  | 
| 33 |  | 
| 34 ///////////////////// |  | 
| 35 |  | 
| 36 MockWebRTCDataChannelHandler::MockWebRTCDataChannelHandler( |  | 
| 37     WebString label, |  | 
| 38     const WebRTCDataChannelInit& init, |  | 
| 39     WebTestDelegate* delegate) |  | 
| 40     : client_(0), label_(label), init_(init), delegate_(delegate) { |  | 
| 41   reliable_ = (init.ordered && init.maxRetransmits == -1 && |  | 
| 42                init.maxRetransmitTime == -1); |  | 
| 43 } |  | 
| 44 |  | 
| 45 void MockWebRTCDataChannelHandler::setClient( |  | 
| 46     WebRTCDataChannelHandlerClient* client) { |  | 
| 47   client_ = client; |  | 
| 48   if (client_) |  | 
| 49     delegate_->PostTask(new DataChannelReadyStateTask( |  | 
| 50         this, client_, WebRTCDataChannelHandlerClient::ReadyStateOpen)); |  | 
| 51 } |  | 
| 52 |  | 
| 53 blink::WebString MockWebRTCDataChannelHandler::label() { |  | 
| 54   return label_; |  | 
| 55 } |  | 
| 56 |  | 
| 57 bool MockWebRTCDataChannelHandler::isReliable() { |  | 
| 58   return reliable_; |  | 
| 59 } |  | 
| 60 |  | 
| 61 bool MockWebRTCDataChannelHandler::ordered() const { |  | 
| 62   return init_.ordered; |  | 
| 63 } |  | 
| 64 |  | 
| 65 unsigned short MockWebRTCDataChannelHandler::maxRetransmitTime() const { |  | 
| 66   return init_.maxRetransmitTime; |  | 
| 67 } |  | 
| 68 |  | 
| 69 unsigned short MockWebRTCDataChannelHandler::maxRetransmits() const { |  | 
| 70   return init_.maxRetransmits; |  | 
| 71 } |  | 
| 72 |  | 
| 73 WebString MockWebRTCDataChannelHandler::protocol() const { |  | 
| 74   return init_.protocol; |  | 
| 75 } |  | 
| 76 |  | 
| 77 bool MockWebRTCDataChannelHandler::negotiated() const { |  | 
| 78   return init_.negotiated; |  | 
| 79 } |  | 
| 80 |  | 
| 81 unsigned short MockWebRTCDataChannelHandler::id() const { |  | 
| 82   return init_.id; |  | 
| 83 } |  | 
| 84 |  | 
| 85 blink::WebRTCDataChannelHandlerClient::ReadyState |  | 
| 86     MockWebRTCDataChannelHandler::state() const { |  | 
| 87   return blink::WebRTCDataChannelHandlerClient::ReadyStateConnecting; |  | 
| 88 } |  | 
| 89 |  | 
| 90 unsigned long MockWebRTCDataChannelHandler::bufferedAmount() { |  | 
| 91   return 0; |  | 
| 92 } |  | 
| 93 |  | 
| 94 bool MockWebRTCDataChannelHandler::sendStringData(const WebString& data) { |  | 
| 95   DCHECK(client_); |  | 
| 96   client_->didReceiveStringData(data); |  | 
| 97   return true; |  | 
| 98 } |  | 
| 99 |  | 
| 100 bool MockWebRTCDataChannelHandler::sendRawData(const char* data, size_t size) { |  | 
| 101   DCHECK(client_); |  | 
| 102   client_->didReceiveRawData(data, size); |  | 
| 103   return true; |  | 
| 104 } |  | 
| 105 |  | 
| 106 void MockWebRTCDataChannelHandler::close() { |  | 
| 107   DCHECK(client_); |  | 
| 108   delegate_->PostTask(new DataChannelReadyStateTask( |  | 
| 109       this, client_, WebRTCDataChannelHandlerClient::ReadyStateClosed)); |  | 
| 110 } |  | 
| 111 |  | 
| 112 }  // namespace content |  | 
| OLD | NEW | 
|---|