| Index: extensions/browser/api/cast_channel/logger_unittest.cc
|
| diff --git a/extensions/browser/api/cast_channel/logger_unittest.cc b/extensions/browser/api/cast_channel/logger_unittest.cc
|
| index d1ec5fcdbbf2d676c92814e2eb21fdd5e3a7b7bc..604ad8e86dd2cb5aef178270c603c542b6089f37 100644
|
| --- a/extensions/browser/api/cast_channel/logger_unittest.cc
|
| +++ b/extensions/browser/api/cast_channel/logger_unittest.cc
|
| @@ -122,6 +122,52 @@ TEST_F(CastChannelLoggerTest, BasicLogging) {
|
| }
|
| }
|
|
|
| +TEST_F(CastChannelLoggerTest, LogSocketReadWrite) {
|
| + logger_->LogSocketEventWithRv(1, EventType::SOCKET_READ, 50);
|
| + clock_->Advance(base::TimeDelta::FromMicroseconds(1));
|
| + logger_->LogSocketEventWithRv(1, EventType::SOCKET_READ, 30);
|
| + clock_->Advance(base::TimeDelta::FromMicroseconds(1));
|
| + logger_->LogSocketEventWithRv(1, EventType::SOCKET_READ, -1);
|
| + clock_->Advance(base::TimeDelta::FromMicroseconds(1));
|
| + logger_->LogSocketEventWithRv(1, EventType::SOCKET_WRITE, 20);
|
| + clock_->Advance(base::TimeDelta::FromMicroseconds(1));
|
| +
|
| + logger_->LogSocketEventWithRv(2, EventType::SOCKET_READ, 100);
|
| + clock_->Advance(base::TimeDelta::FromMicroseconds(1));
|
| + logger_->LogSocketEventWithRv(2, EventType::SOCKET_WRITE, 100);
|
| + clock_->Advance(base::TimeDelta::FromMicroseconds(1));
|
| + logger_->LogSocketEventWithRv(2, EventType::SOCKET_WRITE, -5);
|
| + clock_->Advance(base::TimeDelta::FromMicroseconds(1));
|
| +
|
| + std::string output;
|
| + bool success = logger_->LogToString(&output);
|
| + ASSERT_TRUE(success);
|
| +
|
| + Log log;
|
| + success = log.ParseFromString(output);
|
| + ASSERT_TRUE(success);
|
| +
|
| + EXPECT_EQ(180, log.total_bytes_read());
|
| + EXPECT_EQ(120, log.total_bytes_written());
|
| + ASSERT_EQ(2, log.aggregated_socket_event_size());
|
| + {
|
| + const AggregatedSocketEvent& aggregated_socket_event =
|
| + log.aggregated_socket_event(0);
|
| + EXPECT_EQ(1, aggregated_socket_event.id());
|
| + EXPECT_EQ(4, aggregated_socket_event.socket_event_size());
|
| + EXPECT_EQ(80, aggregated_socket_event.bytes_read());
|
| + EXPECT_EQ(20, aggregated_socket_event.bytes_written());
|
| + }
|
| + {
|
| + const AggregatedSocketEvent& aggregated_socket_event =
|
| + log.aggregated_socket_event(1);
|
| + EXPECT_EQ(2, aggregated_socket_event.id());
|
| + EXPECT_EQ(3, aggregated_socket_event.socket_event_size());
|
| + EXPECT_EQ(100, aggregated_socket_event.bytes_read());
|
| + EXPECT_EQ(100, aggregated_socket_event.bytes_written());
|
| + }
|
| +}
|
| +
|
| TEST_F(CastChannelLoggerTest, TooManySockets) {
|
| for (int i = 0; i < kMaxSocketsToLog + 5; i++) {
|
| logger_->LogSocketEvent(i, EventType::CAST_SOCKET_CREATED);
|
|
|