Index: debugger/rsp/rsp_packets_test.cc |
=================================================================== |
--- debugger/rsp/rsp_packets_test.cc (revision 931) |
+++ debugger/rsp/rsp_packets_test.cc (working copy) |
@@ -89,6 +89,8 @@ |
packs.push_back(new rsp::QXferReply); |
packs.push_back(new rsp::GetThreadInfoCommand); |
packs.push_back(new rsp::GetThreadInfoReply); |
+ packs.push_back(new rsp::GetOffsetsCommand); |
+ packs.push_back(new rsp::GetOffsetsReply); |
std::map<int, int> type_ids; |
for (size_t i = 0; i < packs.size(); i++) { |
@@ -336,6 +338,9 @@ |
"qfThreadInfo")); |
EXPECT_TRUE(TestParseAndPrintout(new rsp::GetThreadInfoCommand, |
"qsThreadInfo")); |
+ |
+ EXPECT_TRUE(TestParseAndPrintout(new rsp::GetOffsetsCommand, |
+ "qOffsets")); |
} |
TEST_F(RspPacketTest, WriteRegistersCommand) { |
@@ -457,5 +462,20 @@ |
EXPECT_STREQ(kMsg, blob.ToString().c_str()); |
delete obj; |
} |
+ |
+TEST_F(RspPacketTest, GetOffsetsReply) { |
+ const char* kMsg = "Text=c00000000;Data=c00000001"; |
+ rsp::GetOffsetsReply* obj = |
+ rsp::packet_cast<rsp::GetOffsetsReply>( |
+ ParseMsg(kMsg, "qOffsets$Reply")); |
+ ASSERT_NE(kNullPacketPtr, obj); |
+ EXPECT_EQ(0xc00000000, obj->text_offset()); |
+ EXPECT_EQ(0xc00000001, obj->data_offset()); |
+ |
+ debug::Blob blob; |
+ obj->ToBlob(&blob); |
+ EXPECT_STREQ(kMsg, blob.ToString().c_str()); |
+ delete obj; |
+} |
} // namespace |