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

Side by Side Diff: src/processor/exploitability_unittest.cc

Issue 1482363003: Fix ExploitabilityLinuxUtilsTest::DisassembleBytesTest to not fail when temp file ends with 0 (Closed) Base URL: https://chromium.googlesource.com/breakpad/breakpad.git@master
Patch Set: Created 5 years 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2010, Google Inc. 1 // Copyright (c) 2010, Google Inc.
2 // All rights reserved. 2 // All rights reserved.
3 // 3 //
4 // Redistribution and use in source and binary forms, with or without 4 // Redistribution and use in source and binary forms, with or without
5 // modification, are permitted provided that the following conditions are 5 // modification, are permitted provided that the following conditions are
6 // met: 6 // met:
7 // 7 //
8 // * Redistributions of source code must retain the above copyright 8 // * Redistributions of source code must retain the above copyright
9 // notice, this list of conditions and the following disclaimer. 9 // notice, this list of conditions and the following disclaimer.
10 // * Redistributions in binary form must reproduce the above 10 // * Redistributions in binary form must reproduce the above
(...skipping 176 matching lines...) Expand 10 before | Expand all | Expand 10 after
187 ASSERT_FALSE(ExploitabilityLinuxTest::DisassembleBytes("", NULL, 5, NULL)); 187 ASSERT_FALSE(ExploitabilityLinuxTest::DisassembleBytes("", NULL, 5, NULL));
188 uint8_t bytes[6] = {0xc7, 0x0, 0x5, 0x0, 0x0, 0x0}; 188 uint8_t bytes[6] = {0xc7, 0x0, 0x5, 0x0, 0x0, 0x0};
189 char buffer[1024] = {0}; 189 char buffer[1024] = {0};
190 ASSERT_TRUE(ExploitabilityLinuxTest::DisassembleBytes("i386:x86-64", 190 ASSERT_TRUE(ExploitabilityLinuxTest::DisassembleBytes("i386:x86-64",
191 bytes, 191 bytes,
192 1024, 192 1024,
193 buffer)); 193 buffer));
194 std::stringstream objdump_stream; 194 std::stringstream objdump_stream;
195 objdump_stream.str(string(buffer)); 195 objdump_stream.str(string(buffer));
196 string line = ""; 196 string line = "";
197 while ((line.find("0:") == string::npos) && getline(objdump_stream, line)) { 197 while ((line.find("<.data>") == string::npos) &&
198 getline(objdump_stream, line)) {
198 } 199 }
200 ASSERT_TRUE(getline(objdump_stream, line));
199 ASSERT_EQ(line, " 0:\tc7 00 05 00 00 00 \tmov DWORD PTR [rax],0x5"); 201 ASSERT_EQ(line, " 0:\tc7 00 05 00 00 00 \tmov DWORD PTR [rax],0x5");
200 } 202 }
201 203
202 TEST(ExploitabilityLinuxUtilsTest, TokenizeObjdumpInstructionTest) { 204 TEST(ExploitabilityLinuxUtilsTest, TokenizeObjdumpInstructionTest) {
203 ASSERT_FALSE(ExploitabilityLinuxTest::TokenizeObjdumpInstruction("", 205 ASSERT_FALSE(ExploitabilityLinuxTest::TokenizeObjdumpInstruction("",
204 NULL, 206 NULL,
205 NULL, 207 NULL,
206 NULL)); 208 NULL));
207 string line = "0: c7 00 05 00 00 00 mov DWORD PTR [rax],0x5"; 209 string line = "0: c7 00 05 00 00 00 mov DWORD PTR [rax],0x5";
208 string operation = ""; 210 string operation = "";
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
251 ASSERT_FALSE(ExploitabilityLinuxTest::CalculateAddress("rdx+rax", 253 ASSERT_FALSE(ExploitabilityLinuxTest::CalculateAddress("rdx+rax",
252 context, 254 context,
253 &write_address)); 255 &write_address));
254 ASSERT_FALSE(ExploitabilityLinuxTest::CalculateAddress("0x3482+0x4D2", 256 ASSERT_FALSE(ExploitabilityLinuxTest::CalculateAddress("0x3482+0x4D2",
255 context, 257 context,
256 &write_address)); 258 &write_address));
257 } 259 }
258 #endif // _WIN32 260 #endif // _WIN32
259 261
260 } // namespace 262 } // namespace
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698