| 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 <string> | 5 #include <string> |
| 6 | 6 |
| 7 #include "base/memory/ref_counted.h" | 7 #include "base/memory/ref_counted.h" |
| 8 #include "base/memory/scoped_ptr.h" | 8 #include "base/memory/scoped_ptr.h" |
| 9 #include "base/message_loop/message_loop.h" | 9 #include "base/message_loop/message_loop.h" |
| 10 #include "base/run_loop.h" | 10 #include "base/run_loop.h" |
| (...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 77 int Start() { | 77 int Start() { |
| 78 return transaction_->Start( | 78 return transaction_->Start( |
| 79 GetRequest(), completion_callback_, net::BoundNetLog()); | 79 GetRequest(), completion_callback_, net::BoundNetLog()); |
| 80 } | 80 } |
| 81 | 81 |
| 82 int Read() { | 82 int Read() { |
| 83 return transaction_->Read(buffer_.get(), 64, completion_callback_); | 83 return transaction_->Read(buffer_.get(), 64, completion_callback_); |
| 84 } | 84 } |
| 85 | 85 |
| 86 bool ShouldFail() { | 86 bool ShouldFail() { |
| 87 return transaction_->interceptor_->ShouldFail(); | 87 if (transaction_->interceptor_) |
| 88 return transaction_->interceptor_->ShouldFail(); |
| 89 base::WeakPtr<DevToolsNetworkInterceptor> interceptor = |
| 90 controller_.GetInterceptor(kClientId); |
| 91 EXPECT_TRUE(!!interceptor); |
| 92 return interceptor->ShouldFail(); |
| 93 } |
| 94 |
| 95 bool HasStarted() { |
| 96 return !!transaction_->request_; |
| 97 } |
| 98 |
| 99 bool HasFailed() { |
| 100 return transaction_->failed_; |
| 88 } | 101 } |
| 89 | 102 |
| 90 ~DevToolsNetworkControllerHelper() { | 103 ~DevToolsNetworkControllerHelper() { |
| 91 RemoveMockTransaction(&mock_transaction_); | 104 RemoveMockTransaction(&mock_transaction_); |
| 92 } | 105 } |
| 93 | 106 |
| 94 TestCallback* callback() { return &callback_; } | 107 TestCallback* callback() { return &callback_; } |
| 95 MockTransaction* mock_transaction() { return &mock_transaction_; } | 108 MockTransaction* mock_transaction() { return &mock_transaction_; } |
| 96 DevToolsNetworkController* controller() { return &controller_; } | 109 DevToolsNetworkController* controller() { return &controller_; } |
| 97 DevToolsNetworkTransaction* transaction() { return transaction_.get(); } | 110 DevToolsNetworkTransaction* transaction() { return transaction_.get(); } |
| (...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 177 helper.SetNetworkState(kClientId, true); | 190 helper.SetNetworkState(kClientId, true); |
| 178 EXPECT_EQ(callback->run_count(), 1); | 191 EXPECT_EQ(callback->run_count(), 1); |
| 179 } | 192 } |
| 180 | 193 |
| 181 TEST(DevToolsNetworkControllerTest, ReadAfterFail) { | 194 TEST(DevToolsNetworkControllerTest, ReadAfterFail) { |
| 182 DevToolsNetworkControllerHelper helper; | 195 DevToolsNetworkControllerHelper helper; |
| 183 helper.SetNetworkState(kClientId, false); | 196 helper.SetNetworkState(kClientId, false); |
| 184 | 197 |
| 185 int rv = helper.Start(); | 198 int rv = helper.Start(); |
| 186 EXPECT_EQ(rv, net::OK); | 199 EXPECT_EQ(rv, net::OK); |
| 187 EXPECT_TRUE(helper.transaction()->HasStarted()); | 200 EXPECT_TRUE(helper.HasStarted()); |
| 188 | 201 |
| 189 helper.SetNetworkState(kClientId, true); | 202 helper.SetNetworkState(kClientId, true); |
| 190 EXPECT_TRUE(helper.transaction()->HasFailed()); | 203 EXPECT_TRUE(helper.HasFailed()); |
| 191 | 204 |
| 192 scoped_refptr<net::IOBuffer> buffer(new net::IOBuffer(64)); | 205 scoped_refptr<net::IOBuffer> buffer(new net::IOBuffer(64)); |
| 193 rv = helper.Read(); | 206 rv = helper.Read(); |
| 194 EXPECT_EQ(rv, net::ERR_INTERNET_DISCONNECTED); | 207 EXPECT_EQ(rv, net::ERR_INTERNET_DISCONNECTED); |
| 195 | 208 |
| 196 // Check that callback is never invoked. | 209 // Check that callback is never invoked. |
| 197 base::RunLoop().RunUntilIdle(); | 210 base::RunLoop().RunUntilIdle(); |
| 198 EXPECT_EQ(helper.callback()->run_count(), 0); | 211 EXPECT_EQ(helper.callback()->run_count(), 0); |
| 199 } | 212 } |
| 200 | 213 |
| 201 } // namespace test | 214 } // namespace test |
| OLD | NEW |