Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(591)

Side by Side Diff: extensions/browser/api/cast_channel/cast_framer_unittest.cc

Issue 598173003: Run clang-modernize -use-nullptr over src/extensions/. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 "extensions/browser/api/cast_channel/cast_framer.h" 5 #include "extensions/browser/api/cast_channel/cast_framer.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "extensions/browser/api/cast_channel/cast_channel.pb.h" 9 #include "extensions/browser/api/cast_channel/cast_channel.pb.h"
10 #include "testing/gtest/include/gtest/gtest.h" 10 #include "testing/gtest/include/gtest/gtest.h"
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
43 }; 43 };
44 44
45 TEST_F(CastFramerTest, TestMessageFramerCompleteMessage) { 45 TEST_F(CastFramerTest, TestMessageFramerCompleteMessage) {
46 ChannelError error; 46 ChannelError error;
47 size_t message_length; 47 size_t message_length;
48 48
49 WriteToBuffer(cast_message_str_); 49 WriteToBuffer(cast_message_str_);
50 50
51 // Receive 1 byte of the header, framer demands 3 more bytes. 51 // Receive 1 byte of the header, framer demands 3 more bytes.
52 EXPECT_EQ(4u, framer_->BytesRequested()); 52 EXPECT_EQ(4u, framer_->BytesRequested());
53 EXPECT_EQ(NULL, framer_->Ingest(1, &message_length, &error).get()); 53 EXPECT_EQ(nullptr, framer_->Ingest(1, &message_length, &error).get());
54 EXPECT_EQ(cast_channel::CHANNEL_ERROR_NONE, error); 54 EXPECT_EQ(cast_channel::CHANNEL_ERROR_NONE, error);
55 EXPECT_EQ(3u, framer_->BytesRequested()); 55 EXPECT_EQ(3u, framer_->BytesRequested());
56 56
57 // Ingest remaining 3, expect that the framer has moved on to requesting the 57 // Ingest remaining 3, expect that the framer has moved on to requesting the
58 // body contents. 58 // body contents.
59 EXPECT_EQ(NULL, framer_->Ingest(3, &message_length, &error).get()); 59 EXPECT_EQ(nullptr, framer_->Ingest(3, &message_length, &error).get());
60 EXPECT_EQ(cast_channel::CHANNEL_ERROR_NONE, error); 60 EXPECT_EQ(cast_channel::CHANNEL_ERROR_NONE, error);
61 EXPECT_EQ( 61 EXPECT_EQ(
62 cast_message_str_.size() - MessageFramer::MessageHeader::header_size(), 62 cast_message_str_.size() - MessageFramer::MessageHeader::header_size(),
63 framer_->BytesRequested()); 63 framer_->BytesRequested());
64 64
65 // Remainder of packet sent over the wire. 65 // Remainder of packet sent over the wire.
66 scoped_ptr<CastMessage> message; 66 scoped_ptr<CastMessage> message;
67 message = framer_->Ingest(framer_->BytesRequested(), &message_length, &error); 67 message = framer_->Ingest(framer_->BytesRequested(), &message_length, &error);
68 EXPECT_NE(static_cast<CastMessage*>(NULL), message.get()); 68 EXPECT_NE(static_cast<CastMessage*>(nullptr), message.get());
69 EXPECT_EQ(cast_channel::CHANNEL_ERROR_NONE, error); 69 EXPECT_EQ(cast_channel::CHANNEL_ERROR_NONE, error);
70 EXPECT_EQ(message->SerializeAsString(), cast_message_.SerializeAsString()); 70 EXPECT_EQ(message->SerializeAsString(), cast_message_.SerializeAsString());
71 EXPECT_EQ(4u, framer_->BytesRequested()); 71 EXPECT_EQ(4u, framer_->BytesRequested());
72 EXPECT_EQ(message->SerializeAsString().size(), message_length); 72 EXPECT_EQ(message->SerializeAsString().size(), message_length);
73 } 73 }
74 74
75 TEST_F(CastFramerTest, TestSerializeErrorMessageTooLarge) { 75 TEST_F(CastFramerTest, TestSerializeErrorMessageTooLarge) {
76 std::string serialized; 76 std::string serialized;
77 CastMessage big_message; 77 CastMessage big_message;
78 big_message.CopyFrom(cast_message_); 78 big_message.CopyFrom(cast_message_);
79 std::string payload; 79 std::string payload;
80 payload.append(MessageFramer::MessageHeader::max_message_size() + 1, 'x'); 80 payload.append(MessageFramer::MessageHeader::max_message_size() + 1, 'x');
81 big_message.set_payload_utf8(payload); 81 big_message.set_payload_utf8(payload);
82 EXPECT_FALSE(MessageFramer::Serialize(big_message, &serialized)); 82 EXPECT_FALSE(MessageFramer::Serialize(big_message, &serialized));
83 } 83 }
84 84
85 TEST_F(CastFramerTest, TestIngestIllegalLargeMessage) { 85 TEST_F(CastFramerTest, TestIngestIllegalLargeMessage) {
86 std::string mangled_cast_message = cast_message_str_; 86 std::string mangled_cast_message = cast_message_str_;
87 mangled_cast_message[0] = 88; 87 mangled_cast_message[0] = 88;
88 mangled_cast_message[1] = 88; 88 mangled_cast_message[1] = 88;
89 mangled_cast_message[2] = 88; 89 mangled_cast_message[2] = 88;
90 mangled_cast_message[3] = 88; 90 mangled_cast_message[3] = 88;
91 WriteToBuffer(mangled_cast_message); 91 WriteToBuffer(mangled_cast_message);
92 92
93 size_t bytes_ingested; 93 size_t bytes_ingested;
94 ChannelError error; 94 ChannelError error;
95 EXPECT_EQ(4u, framer_->BytesRequested()); 95 EXPECT_EQ(4u, framer_->BytesRequested());
96 EXPECT_EQ(NULL, framer_->Ingest(4, &bytes_ingested, &error).get()); 96 EXPECT_EQ(nullptr, framer_->Ingest(4, &bytes_ingested, &error).get());
97 EXPECT_EQ(cast_channel::CHANNEL_ERROR_INVALID_MESSAGE, error); 97 EXPECT_EQ(cast_channel::CHANNEL_ERROR_INVALID_MESSAGE, error);
98 EXPECT_EQ(0u, framer_->BytesRequested()); 98 EXPECT_EQ(0u, framer_->BytesRequested());
99 99
100 // Test that the parser enters a terminal error state. 100 // Test that the parser enters a terminal error state.
101 WriteToBuffer(cast_message_str_); 101 WriteToBuffer(cast_message_str_);
102 EXPECT_EQ(0u, framer_->BytesRequested()); 102 EXPECT_EQ(0u, framer_->BytesRequested());
103 EXPECT_EQ(NULL, framer_->Ingest(4, &bytes_ingested, &error).get()); 103 EXPECT_EQ(nullptr, framer_->Ingest(4, &bytes_ingested, &error).get());
104 EXPECT_EQ(cast_channel::CHANNEL_ERROR_INVALID_MESSAGE, error); 104 EXPECT_EQ(cast_channel::CHANNEL_ERROR_INVALID_MESSAGE, error);
105 EXPECT_EQ(0u, framer_->BytesRequested()); 105 EXPECT_EQ(0u, framer_->BytesRequested());
106 } 106 }
107 107
108 TEST_F(CastFramerTest, TestUnparsableBodyProto) { 108 TEST_F(CastFramerTest, TestUnparsableBodyProto) {
109 // Message header is OK, but the body is replaced with "x"en. 109 // Message header is OK, but the body is replaced with "x"en.
110 std::string mangled_cast_message = cast_message_str_; 110 std::string mangled_cast_message = cast_message_str_;
111 for (size_t i = MessageFramer::MessageHeader::header_size(); 111 for (size_t i = MessageFramer::MessageHeader::header_size();
112 i < mangled_cast_message.size(); 112 i < mangled_cast_message.size();
113 ++i) { 113 ++i) {
114 std::fill(mangled_cast_message.begin() + 114 std::fill(mangled_cast_message.begin() +
115 MessageFramer::MessageHeader::header_size(), 115 MessageFramer::MessageHeader::header_size(),
116 mangled_cast_message.end(), 116 mangled_cast_message.end(),
117 'x'); 117 'x');
118 } 118 }
119 WriteToBuffer(mangled_cast_message); 119 WriteToBuffer(mangled_cast_message);
120 120
121 // Send header. 121 // Send header.
122 size_t message_length; 122 size_t message_length;
123 ChannelError error; 123 ChannelError error;
124 EXPECT_EQ(4u, framer_->BytesRequested()); 124 EXPECT_EQ(4u, framer_->BytesRequested());
125 EXPECT_EQ(NULL, framer_->Ingest(4, &message_length, &error).get()); 125 EXPECT_EQ(nullptr, framer_->Ingest(4, &message_length, &error).get());
126 EXPECT_EQ(cast_channel::CHANNEL_ERROR_NONE, error); 126 EXPECT_EQ(cast_channel::CHANNEL_ERROR_NONE, error);
127 EXPECT_EQ(cast_message_str_.size() - 4, framer_->BytesRequested()); 127 EXPECT_EQ(cast_message_str_.size() - 4, framer_->BytesRequested());
128 128
129 // Send body, expect an error. 129 // Send body, expect an error.
130 scoped_ptr<CastMessage> message; 130 scoped_ptr<CastMessage> message;
131 EXPECT_EQ(NULL, 131 EXPECT_EQ(nullptr,
132 framer_->Ingest(framer_->BytesRequested(), &message_length, &error) 132 framer_->Ingest(framer_->BytesRequested(), &message_length, &error)
133 .get()); 133 .get());
134 EXPECT_EQ(cast_channel::CHANNEL_ERROR_INVALID_MESSAGE, error); 134 EXPECT_EQ(cast_channel::CHANNEL_ERROR_INVALID_MESSAGE, error);
135 } 135 }
136 } // namespace cast_channel 136 } // namespace cast_channel
137 } // namespace core_api 137 } // namespace core_api
138 } // namespace extensions 138 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698