OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 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/async_socket_io_handler.h" | 5 #include "base/async_socket_io_handler.h" |
6 | 6 |
7 #include "base/bind.h" | 7 #include "base/bind.h" |
8 #include "testing/gtest/include/gtest/gtest.h" | 8 #include "testing/gtest/include/gtest/gtest.h" |
9 | 9 |
10 namespace { | 10 namespace { |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
49 EXPECT_GE(bytes_read, 0); | 49 EXPECT_GE(bytes_read, 0); |
50 } | 50 } |
51 ++callbacks_received_; | 51 ++callbacks_received_; |
52 if (number_of_reads_before_quit_ == callbacks_received_) { | 52 if (number_of_reads_before_quit_ == callbacks_received_) { |
53 base::MessageLoop::current()->Quit(); | 53 base::MessageLoop::current()->Quit(); |
54 } else if (issue_reads_from_callback_) { | 54 } else if (issue_reads_from_callback_) { |
55 IssueRead(); | 55 IssueRead(); |
56 } | 56 } |
57 } | 57 } |
58 | 58 |
59 media::AsyncSocketIoHandler io_handler; | 59 base::AsyncSocketIoHandler io_handler; |
60 base::CancelableSyncSocket* socket_; // Ownership lies outside the class. | 60 base::CancelableSyncSocket* socket_; // Ownership lies outside the class. |
61 char buffer_[kAsyncSocketIoTestStringLength]; | 61 char buffer_[kAsyncSocketIoTestStringLength]; |
62 int number_of_reads_before_quit_; | 62 int number_of_reads_before_quit_; |
63 int callbacks_received_; | 63 int callbacks_received_; |
64 bool issue_reads_from_callback_; | 64 bool issue_reads_from_callback_; |
65 bool expect_eof_; | 65 bool expect_eof_; |
66 }; | 66 }; |
67 | 67 |
68 // Workaround to be able to use a base::Closure for sending data. | 68 // Workaround to be able to use a base::Closure for sending data. |
69 // Send() returns int but a closure must return void. | 69 // Send() returns int but a closure must return void. |
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
159 | 159 |
160 const int kReadOperationCount = 1; | 160 const int kReadOperationCount = 1; |
161 TestSocketReader reader(&pair[0], kReadOperationCount, false, true); | 161 TestSocketReader reader(&pair[0], kReadOperationCount, false, true); |
162 EXPECT_TRUE(reader.IssueRead()); | 162 EXPECT_TRUE(reader.IssueRead()); |
163 | 163 |
164 pair[1].Close(); | 164 pair[1].Close(); |
165 | 165 |
166 base::MessageLoop::current()->Run(); | 166 base::MessageLoop::current()->Run(); |
167 EXPECT_EQ(kReadOperationCount, reader.callbacks_received()); | 167 EXPECT_EQ(kReadOperationCount, reader.callbacks_received()); |
168 } | 168 } |
OLD | NEW |