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

Unified Diff: device/u2f/u2f_message_unittest.cc

Issue 2771673002: Use vectors instead of IOBuffer for U2fPackets (Closed)
Patch Set: Use vectors instead of IOBuffer for U2fPackets Created 3 years, 9 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 side-by-side diff with in-line comments
Download patch
Index: device/u2f/u2f_message_unittest.cc
diff --git a/device/u2f/u2f_message_unittest.cc b/device/u2f/u2f_message_unittest.cc
index 947eb78750dbe92db72bec70fbd234fecb9817e4..9d445f9cbd786b34f8b84491d5e9a55dd1c81b8c 100644
--- a/device/u2f/u2f_message_unittest.cc
+++ b/device/u2f/u2f_message_unittest.cc
@@ -19,11 +19,12 @@ TEST_F(U2fMessageTest, TestPacketSize) {
auto init_packet =
base::MakeUnique<U2fInitPacket>(channel_id, 0, data, data.size());
- EXPECT_EQ(65, init_packet->GetSerializedBuffer()->size());
+ EXPECT_EQ(static_cast<size_t>(65), init_packet->GetSerializedData().size());
auto continuation_packet =
base::MakeUnique<U2fContinuationPacket>(channel_id, 0, data);
- EXPECT_EQ(65, continuation_packet->GetSerializedBuffer()->size());
+ EXPECT_EQ(static_cast<size_t>(65),
+ continuation_packet->GetSerializedData().size());
}
/*
@@ -42,35 +43,22 @@ TEST_F(U2fMessageTest, TestPacketData) {
uint8_t cmd = static_cast<uint8_t>(U2fMessage::Type::CMD_WINK);
auto init_packet =
base::MakeUnique<U2fInitPacket>(channel_id, cmd, data, data.size());
- int index = 0;
-
- EXPECT_EQ(0, init_packet->GetSerializedBuffer()->data()[index++]);
- EXPECT_EQ((channel_id >> 24) & 0xff,
- static_cast<uint8_t>(
- init_packet->GetSerializedBuffer()->data()[index++]));
- EXPECT_EQ((channel_id >> 16) & 0xff,
- static_cast<uint8_t>(
- init_packet->GetSerializedBuffer()->data()[index++]));
- EXPECT_EQ((channel_id >> 8) & 0xff,
- static_cast<uint8_t>(
- init_packet->GetSerializedBuffer()->data()[index++]));
- EXPECT_EQ(channel_id & 0xff,
- static_cast<uint8_t>(
- init_packet->GetSerializedBuffer()->data()[index++]));
- EXPECT_EQ(cmd, static_cast<uint8_t>(
- init_packet->GetSerializedBuffer()->data()[index++]));
-
- EXPECT_EQ(data.size() >> 8,
- static_cast<uint8_t>(
- init_packet->GetSerializedBuffer()->data()[index++]));
- EXPECT_EQ(data.size() & 0xff,
- static_cast<uint8_t>(
- init_packet->GetSerializedBuffer()->data()[index++]));
- EXPECT_EQ(data.at(0), init_packet->GetSerializedBuffer()->data()[index++]);
- EXPECT_EQ(data.at(1), init_packet->GetSerializedBuffer()->data()[index++]);
- for (; index < init_packet->GetSerializedBuffer()->size(); index++) {
- EXPECT_EQ(0, init_packet->GetSerializedBuffer()->data()[index])
- << "mismatch at index " << index;
+ size_t index = 0;
+
+ std::vector<uint8_t> serialized = init_packet->GetSerializedData();
+ EXPECT_EQ(0, serialized[index++]);
+ EXPECT_EQ((channel_id >> 24) & 0xff, serialized[index++]);
+ EXPECT_EQ((channel_id >> 16) & 0xff, serialized[index++]);
+ EXPECT_EQ((channel_id >> 8) & 0xff, serialized[index++]);
+ EXPECT_EQ(channel_id & 0xff, serialized[index++]);
+ EXPECT_EQ(cmd, serialized[index++]);
+
+ EXPECT_EQ(data.size() >> 8, serialized[index++]);
+ EXPECT_EQ(data.size() & 0xff, serialized[index++]);
+ EXPECT_EQ(data.at(0), serialized[index++]);
+ EXPECT_EQ(data.at(1), serialized[index++]);
+ for (; index < serialized.size(); index++) {
+ EXPECT_EQ(0, serialized[index]) << "mismatch at index " << index;
}
}
@@ -83,8 +71,8 @@ TEST_F(U2fMessageTest, TestPacketConstructors) {
size_t payload_length = static_cast<size_t>(orig_packet->payload_length());
std::unique_ptr<U2fInitPacket> reconstructed_packet =
- U2fInitPacket::CreateFromSerializedData(
- orig_packet->GetSerializedBuffer(), &payload_length);
+ U2fInitPacket::CreateFromSerializedData(orig_packet->GetSerializedData(),
+ &payload_length);
EXPECT_EQ(orig_packet->command(), reconstructed_packet->command());
EXPECT_EQ(orig_packet->payload_length(),
reconstructed_packet->payload_length());
@@ -93,14 +81,8 @@ TEST_F(U2fMessageTest, TestPacketConstructors) {
EXPECT_EQ(channel_id, reconstructed_packet->channel_id());
- ASSERT_EQ(orig_packet->GetSerializedBuffer()->size(),
- reconstructed_packet->GetSerializedBuffer()->size());
- for (size_t i = 0;
- i < static_cast<size_t>(orig_packet->GetSerializedBuffer()->size());
- ++i) {
- EXPECT_EQ(orig_packet->GetSerializedBuffer()->data()[i],
- reconstructed_packet->GetSerializedBuffer()->data()[i]);
- }
+ EXPECT_THAT(orig_packet->GetSerializedData(),
+ testing::ContainerEq(reconstructed_packet->GetSerializedData()));
}
TEST_F(U2fMessageTest, TestMaxLengthPacketConstructors) {
@@ -113,12 +95,20 @@ TEST_F(U2fMessageTest, TestMaxLengthPacketConstructors) {
std::unique_ptr<U2fMessage> orig_msg =
U2fMessage::Create(channel_id, cmd, data);
auto it = orig_msg->begin();
+ std::vector<uint8_t> serialized = (*it)->GetSerializedData();
+ auto serialized_buffer =
+ make_scoped_refptr(new net::IOBufferWithSize(serialized.size()));
+ memcpy(serialized_buffer->data(), serialized.data(), serialized.size());
std::unique_ptr<U2fMessage> new_msg =
- U2fMessage::CreateFromSerializedData((*it)->GetSerializedBuffer());
+ U2fMessage::CreateFromSerializedData(serialized_buffer);
it++;
- for (; it != orig_msg->end(); ++it)
- new_msg->AddContinuationPacket((*it)->GetSerializedBuffer());
+ for (; it != orig_msg->end(); ++it) {
+ serialized = (*it)->GetSerializedData();
+ serialized_buffer =
+ make_scoped_refptr(new net::IOBufferWithSize(serialized.size()));
+ new_msg->AddContinuationPacket(serialized_buffer);
+ }
auto orig_it = orig_msg->begin();
auto new_it = new_msg->begin();
@@ -130,14 +120,8 @@ TEST_F(U2fMessageTest, TestMaxLengthPacketConstructors) {
EXPECT_EQ((*orig_it)->channel_id(), (*new_it)->channel_id());
- ASSERT_EQ((*orig_it)->GetSerializedBuffer()->size(),
- (*new_it)->GetSerializedBuffer()->size());
- for (size_t i = 0;
- i < static_cast<size_t>((*new_it)->GetSerializedBuffer()->size());
- ++i) {
- EXPECT_EQ((*orig_it)->GetSerializedBuffer()->data()[i],
- (*new_it)->GetSerializedBuffer()->data()[i]);
- }
+ EXPECT_THAT((*orig_it)->GetSerializedData(),
+ testing::ContainerEq((*new_it)->GetSerializedData()));
}
}

Powered by Google App Engine
This is Rietveld 408576698