| OLD | NEW |
| 1 // Copyright 2014 The Crashpad Authors. All rights reserved. | 1 // Copyright 2014 The Crashpad Authors. All rights reserved. |
| 2 // | 2 // |
| 3 // Licensed under the Apache License, Version 2.0 (the "License"); | 3 // Licensed under the Apache License, Version 2.0 (the "License"); |
| 4 // you may not use this file except in compliance with the License. | 4 // you may not use this file except in compliance with the License. |
| 5 // You may obtain a copy of the License at | 5 // You may obtain a copy of the License at |
| 6 // | 6 // |
| 7 // http://www.apache.org/licenses/LICENSE-2.0 | 7 // http://www.apache.org/licenses/LICENSE-2.0 |
| 8 // | 8 // |
| 9 // Unless required by applicable law or agreed to in writing, software | 9 // Unless required by applicable law or agreed to in writing, software |
| 10 // distributed under the License is distributed on an "AS IS" BASIS, | 10 // distributed under the License is distributed on an "AS IS" BASIS, |
| (...skipping 154 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 165 | 165 |
| 166 TEST(MinidumpMiscInfoWriter, Empty) { | 166 TEST(MinidumpMiscInfoWriter, Empty) { |
| 167 MinidumpFileWriter minidump_file_writer; | 167 MinidumpFileWriter minidump_file_writer; |
| 168 auto misc_info_writer = make_scoped_ptr(new MinidumpMiscInfoWriter()); | 168 auto misc_info_writer = make_scoped_ptr(new MinidumpMiscInfoWriter()); |
| 169 | 169 |
| 170 minidump_file_writer.AddStream(misc_info_writer.Pass()); | 170 minidump_file_writer.AddStream(misc_info_writer.Pass()); |
| 171 | 171 |
| 172 StringFileWriter file_writer; | 172 StringFileWriter file_writer; |
| 173 ASSERT_TRUE(minidump_file_writer.WriteEverything(&file_writer)); | 173 ASSERT_TRUE(minidump_file_writer.WriteEverything(&file_writer)); |
| 174 | 174 |
| 175 const MINIDUMP_MISC_INFO* observed; | 175 const MINIDUMP_MISC_INFO* observed = nullptr; |
| 176 ASSERT_NO_FATAL_FAILURE(GetMiscInfoStream(file_writer.string(), &observed)); | 176 ASSERT_NO_FATAL_FAILURE(GetMiscInfoStream(file_writer.string(), &observed)); |
| 177 | 177 |
| 178 MINIDUMP_MISC_INFO expected = {}; | 178 MINIDUMP_MISC_INFO expected = {}; |
| 179 | 179 |
| 180 ExpectMiscInfoEqual(&expected, observed); | 180 ExpectMiscInfoEqual(&expected, observed); |
| 181 } | 181 } |
| 182 | 182 |
| 183 TEST(MinidumpMiscInfoWriter, ProcessId) { | 183 TEST(MinidumpMiscInfoWriter, ProcessId) { |
| 184 MinidumpFileWriter minidump_file_writer; | 184 MinidumpFileWriter minidump_file_writer; |
| 185 auto misc_info_writer = make_scoped_ptr(new MinidumpMiscInfoWriter()); | 185 auto misc_info_writer = make_scoped_ptr(new MinidumpMiscInfoWriter()); |
| 186 | 186 |
| 187 const uint32_t kProcessId = 12345; | 187 const uint32_t kProcessId = 12345; |
| 188 | 188 |
| 189 misc_info_writer->SetProcessID(kProcessId); | 189 misc_info_writer->SetProcessID(kProcessId); |
| 190 | 190 |
| 191 minidump_file_writer.AddStream(misc_info_writer.Pass()); | 191 minidump_file_writer.AddStream(misc_info_writer.Pass()); |
| 192 | 192 |
| 193 StringFileWriter file_writer; | 193 StringFileWriter file_writer; |
| 194 ASSERT_TRUE(minidump_file_writer.WriteEverything(&file_writer)); | 194 ASSERT_TRUE(minidump_file_writer.WriteEverything(&file_writer)); |
| 195 | 195 |
| 196 const MINIDUMP_MISC_INFO* observed; | 196 const MINIDUMP_MISC_INFO* observed = nullptr; |
| 197 ASSERT_NO_FATAL_FAILURE(GetMiscInfoStream(file_writer.string(), &observed)); | 197 ASSERT_NO_FATAL_FAILURE(GetMiscInfoStream(file_writer.string(), &observed)); |
| 198 | 198 |
| 199 MINIDUMP_MISC_INFO expected = {}; | 199 MINIDUMP_MISC_INFO expected = {}; |
| 200 expected.Flags1 = MINIDUMP_MISC1_PROCESS_ID; | 200 expected.Flags1 = MINIDUMP_MISC1_PROCESS_ID; |
| 201 expected.ProcessId = kProcessId; | 201 expected.ProcessId = kProcessId; |
| 202 | 202 |
| 203 ExpectMiscInfoEqual(&expected, observed); | 203 ExpectMiscInfoEqual(&expected, observed); |
| 204 } | 204 } |
| 205 | 205 |
| 206 TEST(MinidumpMiscInfoWriter, ProcessTimes) { | 206 TEST(MinidumpMiscInfoWriter, ProcessTimes) { |
| 207 MinidumpFileWriter minidump_file_writer; | 207 MinidumpFileWriter minidump_file_writer; |
| 208 auto misc_info_writer = make_scoped_ptr(new MinidumpMiscInfoWriter()); | 208 auto misc_info_writer = make_scoped_ptr(new MinidumpMiscInfoWriter()); |
| 209 | 209 |
| 210 const time_t kProcessCreateTime = 0x15252f00; | 210 const time_t kProcessCreateTime = 0x15252f00; |
| 211 const uint32_t kProcessUserTime = 10; | 211 const uint32_t kProcessUserTime = 10; |
| 212 const uint32_t kProcessKernelTime = 5; | 212 const uint32_t kProcessKernelTime = 5; |
| 213 | 213 |
| 214 misc_info_writer->SetProcessTimes( | 214 misc_info_writer->SetProcessTimes( |
| 215 kProcessCreateTime, kProcessUserTime, kProcessKernelTime); | 215 kProcessCreateTime, kProcessUserTime, kProcessKernelTime); |
| 216 | 216 |
| 217 minidump_file_writer.AddStream(misc_info_writer.Pass()); | 217 minidump_file_writer.AddStream(misc_info_writer.Pass()); |
| 218 | 218 |
| 219 StringFileWriter file_writer; | 219 StringFileWriter file_writer; |
| 220 ASSERT_TRUE(minidump_file_writer.WriteEverything(&file_writer)); | 220 ASSERT_TRUE(minidump_file_writer.WriteEverything(&file_writer)); |
| 221 | 221 |
| 222 const MINIDUMP_MISC_INFO* observed; | 222 const MINIDUMP_MISC_INFO* observed = nullptr; |
| 223 ASSERT_NO_FATAL_FAILURE(GetMiscInfoStream(file_writer.string(), &observed)); | 223 ASSERT_NO_FATAL_FAILURE(GetMiscInfoStream(file_writer.string(), &observed)); |
| 224 | 224 |
| 225 MINIDUMP_MISC_INFO expected = {}; | 225 MINIDUMP_MISC_INFO expected = {}; |
| 226 expected.Flags1 = MINIDUMP_MISC1_PROCESS_TIMES; | 226 expected.Flags1 = MINIDUMP_MISC1_PROCESS_TIMES; |
| 227 expected.ProcessCreateTime = kProcessCreateTime; | 227 expected.ProcessCreateTime = kProcessCreateTime; |
| 228 expected.ProcessUserTime = kProcessUserTime; | 228 expected.ProcessUserTime = kProcessUserTime; |
| 229 expected.ProcessKernelTime = kProcessKernelTime; | 229 expected.ProcessKernelTime = kProcessKernelTime; |
| 230 | 230 |
| 231 ExpectMiscInfoEqual(&expected, observed); | 231 ExpectMiscInfoEqual(&expected, observed); |
| 232 } | 232 } |
| (...skipping 12 matching lines...) Expand all Loading... |
| 245 kProcessorCurrentMhz, | 245 kProcessorCurrentMhz, |
| 246 kProcessorMhzLimit, | 246 kProcessorMhzLimit, |
| 247 kProcessorMaxIdleState, | 247 kProcessorMaxIdleState, |
| 248 kProcessorCurrentIdleState); | 248 kProcessorCurrentIdleState); |
| 249 | 249 |
| 250 minidump_file_writer.AddStream(misc_info_writer.Pass()); | 250 minidump_file_writer.AddStream(misc_info_writer.Pass()); |
| 251 | 251 |
| 252 StringFileWriter file_writer; | 252 StringFileWriter file_writer; |
| 253 ASSERT_TRUE(minidump_file_writer.WriteEverything(&file_writer)); | 253 ASSERT_TRUE(minidump_file_writer.WriteEverything(&file_writer)); |
| 254 | 254 |
| 255 const MINIDUMP_MISC_INFO_2* observed; | 255 const MINIDUMP_MISC_INFO_2* observed = nullptr; |
| 256 ASSERT_NO_FATAL_FAILURE(GetMiscInfoStream(file_writer.string(), &observed)); | 256 ASSERT_NO_FATAL_FAILURE(GetMiscInfoStream(file_writer.string(), &observed)); |
| 257 | 257 |
| 258 MINIDUMP_MISC_INFO_2 expected = {}; | 258 MINIDUMP_MISC_INFO_2 expected = {}; |
| 259 expected.Flags1 = MINIDUMP_MISC1_PROCESSOR_POWER_INFO; | 259 expected.Flags1 = MINIDUMP_MISC1_PROCESSOR_POWER_INFO; |
| 260 expected.ProcessorMaxMhz = kProcessorMaxMhz; | 260 expected.ProcessorMaxMhz = kProcessorMaxMhz; |
| 261 expected.ProcessorCurrentMhz = kProcessorCurrentMhz; | 261 expected.ProcessorCurrentMhz = kProcessorCurrentMhz; |
| 262 expected.ProcessorMhzLimit = kProcessorMhzLimit; | 262 expected.ProcessorMhzLimit = kProcessorMhzLimit; |
| 263 expected.ProcessorMaxIdleState = kProcessorMaxIdleState; | 263 expected.ProcessorMaxIdleState = kProcessorMaxIdleState; |
| 264 expected.ProcessorCurrentIdleState = kProcessorCurrentIdleState; | 264 expected.ProcessorCurrentIdleState = kProcessorCurrentIdleState; |
| 265 | 265 |
| 266 ExpectMiscInfoEqual(&expected, observed); | 266 ExpectMiscInfoEqual(&expected, observed); |
| 267 } | 267 } |
| 268 | 268 |
| 269 TEST(MinidumpMiscInfoWriter, ProcessIntegrityLevel) { | 269 TEST(MinidumpMiscInfoWriter, ProcessIntegrityLevel) { |
| 270 MinidumpFileWriter minidump_file_writer; | 270 MinidumpFileWriter minidump_file_writer; |
| 271 auto misc_info_writer = make_scoped_ptr(new MinidumpMiscInfoWriter()); | 271 auto misc_info_writer = make_scoped_ptr(new MinidumpMiscInfoWriter()); |
| 272 | 272 |
| 273 const uint32_t kProcessIntegrityLevel = 0x2000; | 273 const uint32_t kProcessIntegrityLevel = 0x2000; |
| 274 | 274 |
| 275 misc_info_writer->SetProcessIntegrityLevel(kProcessIntegrityLevel); | 275 misc_info_writer->SetProcessIntegrityLevel(kProcessIntegrityLevel); |
| 276 | 276 |
| 277 minidump_file_writer.AddStream(misc_info_writer.Pass()); | 277 minidump_file_writer.AddStream(misc_info_writer.Pass()); |
| 278 | 278 |
| 279 StringFileWriter file_writer; | 279 StringFileWriter file_writer; |
| 280 ASSERT_TRUE(minidump_file_writer.WriteEverything(&file_writer)); | 280 ASSERT_TRUE(minidump_file_writer.WriteEverything(&file_writer)); |
| 281 | 281 |
| 282 const MINIDUMP_MISC_INFO_3* observed; | 282 const MINIDUMP_MISC_INFO_3* observed = nullptr; |
| 283 ASSERT_NO_FATAL_FAILURE(GetMiscInfoStream(file_writer.string(), &observed)); | 283 ASSERT_NO_FATAL_FAILURE(GetMiscInfoStream(file_writer.string(), &observed)); |
| 284 | 284 |
| 285 MINIDUMP_MISC_INFO_3 expected = {}; | 285 MINIDUMP_MISC_INFO_3 expected = {}; |
| 286 expected.Flags1 = MINIDUMP_MISC3_PROCESS_INTEGRITY; | 286 expected.Flags1 = MINIDUMP_MISC3_PROCESS_INTEGRITY; |
| 287 expected.ProcessIntegrityLevel = kProcessIntegrityLevel; | 287 expected.ProcessIntegrityLevel = kProcessIntegrityLevel; |
| 288 | 288 |
| 289 ExpectMiscInfoEqual(&expected, observed); | 289 ExpectMiscInfoEqual(&expected, observed); |
| 290 } | 290 } |
| 291 | 291 |
| 292 TEST(MinidumpMiscInfoWriter, ProcessExecuteFlags) { | 292 TEST(MinidumpMiscInfoWriter, ProcessExecuteFlags) { |
| 293 MinidumpFileWriter minidump_file_writer; | 293 MinidumpFileWriter minidump_file_writer; |
| 294 auto misc_info_writer = make_scoped_ptr(new MinidumpMiscInfoWriter()); | 294 auto misc_info_writer = make_scoped_ptr(new MinidumpMiscInfoWriter()); |
| 295 | 295 |
| 296 const uint32_t kProcessExecuteFlags = 0x13579bdf; | 296 const uint32_t kProcessExecuteFlags = 0x13579bdf; |
| 297 | 297 |
| 298 misc_info_writer->SetProcessExecuteFlags(kProcessExecuteFlags); | 298 misc_info_writer->SetProcessExecuteFlags(kProcessExecuteFlags); |
| 299 | 299 |
| 300 minidump_file_writer.AddStream(misc_info_writer.Pass()); | 300 minidump_file_writer.AddStream(misc_info_writer.Pass()); |
| 301 | 301 |
| 302 StringFileWriter file_writer; | 302 StringFileWriter file_writer; |
| 303 ASSERT_TRUE(minidump_file_writer.WriteEverything(&file_writer)); | 303 ASSERT_TRUE(minidump_file_writer.WriteEverything(&file_writer)); |
| 304 | 304 |
| 305 const MINIDUMP_MISC_INFO_3* observed; | 305 const MINIDUMP_MISC_INFO_3* observed = nullptr; |
| 306 ASSERT_NO_FATAL_FAILURE(GetMiscInfoStream(file_writer.string(), &observed)); | 306 ASSERT_NO_FATAL_FAILURE(GetMiscInfoStream(file_writer.string(), &observed)); |
| 307 | 307 |
| 308 MINIDUMP_MISC_INFO_3 expected = {}; | 308 MINIDUMP_MISC_INFO_3 expected = {}; |
| 309 expected.Flags1 = MINIDUMP_MISC3_PROCESS_EXECUTE_FLAGS; | 309 expected.Flags1 = MINIDUMP_MISC3_PROCESS_EXECUTE_FLAGS; |
| 310 expected.ProcessExecuteFlags = kProcessExecuteFlags; | 310 expected.ProcessExecuteFlags = kProcessExecuteFlags; |
| 311 | 311 |
| 312 ExpectMiscInfoEqual(&expected, observed); | 312 ExpectMiscInfoEqual(&expected, observed); |
| 313 } | 313 } |
| 314 | 314 |
| 315 TEST(MinidumpMiscInfoWriter, ProtectedProcess) { | 315 TEST(MinidumpMiscInfoWriter, ProtectedProcess) { |
| 316 MinidumpFileWriter minidump_file_writer; | 316 MinidumpFileWriter minidump_file_writer; |
| 317 auto misc_info_writer = make_scoped_ptr(new MinidumpMiscInfoWriter()); | 317 auto misc_info_writer = make_scoped_ptr(new MinidumpMiscInfoWriter()); |
| 318 | 318 |
| 319 const uint32_t kProtectedProcess = 1; | 319 const uint32_t kProtectedProcess = 1; |
| 320 | 320 |
| 321 misc_info_writer->SetProtectedProcess(kProtectedProcess); | 321 misc_info_writer->SetProtectedProcess(kProtectedProcess); |
| 322 | 322 |
| 323 minidump_file_writer.AddStream(misc_info_writer.Pass()); | 323 minidump_file_writer.AddStream(misc_info_writer.Pass()); |
| 324 | 324 |
| 325 StringFileWriter file_writer; | 325 StringFileWriter file_writer; |
| 326 ASSERT_TRUE(minidump_file_writer.WriteEverything(&file_writer)); | 326 ASSERT_TRUE(minidump_file_writer.WriteEverything(&file_writer)); |
| 327 | 327 |
| 328 const MINIDUMP_MISC_INFO_3* observed; | 328 const MINIDUMP_MISC_INFO_3* observed = nullptr; |
| 329 ASSERT_NO_FATAL_FAILURE(GetMiscInfoStream(file_writer.string(), &observed)); | 329 ASSERT_NO_FATAL_FAILURE(GetMiscInfoStream(file_writer.string(), &observed)); |
| 330 | 330 |
| 331 MINIDUMP_MISC_INFO_3 expected = {}; | 331 MINIDUMP_MISC_INFO_3 expected = {}; |
| 332 expected.Flags1 = MINIDUMP_MISC3_PROTECTED_PROCESS; | 332 expected.Flags1 = MINIDUMP_MISC3_PROTECTED_PROCESS; |
| 333 expected.ProtectedProcess = kProtectedProcess; | 333 expected.ProtectedProcess = kProtectedProcess; |
| 334 | 334 |
| 335 ExpectMiscInfoEqual(&expected, observed); | 335 ExpectMiscInfoEqual(&expected, observed); |
| 336 } | 336 } |
| 337 | 337 |
| 338 TEST(MinidumpMiscInfoWriter, TimeZone) { | 338 TEST(MinidumpMiscInfoWriter, TimeZone) { |
| (...skipping 16 matching lines...) Expand all Loading... |
| 355 kStandardBias, | 355 kStandardBias, |
| 356 kDaylightName, | 356 kDaylightName, |
| 357 kDaylightDate, | 357 kDaylightDate, |
| 358 kDaylightBias); | 358 kDaylightBias); |
| 359 | 359 |
| 360 minidump_file_writer.AddStream(misc_info_writer.Pass()); | 360 minidump_file_writer.AddStream(misc_info_writer.Pass()); |
| 361 | 361 |
| 362 StringFileWriter file_writer; | 362 StringFileWriter file_writer; |
| 363 ASSERT_TRUE(minidump_file_writer.WriteEverything(&file_writer)); | 363 ASSERT_TRUE(minidump_file_writer.WriteEverything(&file_writer)); |
| 364 | 364 |
| 365 const MINIDUMP_MISC_INFO_3* observed; | 365 const MINIDUMP_MISC_INFO_3* observed = nullptr; |
| 366 ASSERT_NO_FATAL_FAILURE(GetMiscInfoStream(file_writer.string(), &observed)); | 366 ASSERT_NO_FATAL_FAILURE(GetMiscInfoStream(file_writer.string(), &observed)); |
| 367 | 367 |
| 368 MINIDUMP_MISC_INFO_3 expected = {}; | 368 MINIDUMP_MISC_INFO_3 expected = {}; |
| 369 expected.Flags1 = MINIDUMP_MISC3_TIMEZONE; | 369 expected.Flags1 = MINIDUMP_MISC3_TIMEZONE; |
| 370 expected.TimeZoneId = kTimeZoneId; | 370 expected.TimeZoneId = kTimeZoneId; |
| 371 expected.TimeZone.Bias = kBias; | 371 expected.TimeZone.Bias = kBias; |
| 372 base::string16 standard_name_utf16 = base::UTF8ToUTF16(kStandardName); | 372 base::string16 standard_name_utf16 = base::UTF8ToUTF16(kStandardName); |
| 373 c16lcpy(expected.TimeZone.StandardName, | 373 c16lcpy(expected.TimeZone.StandardName, |
| 374 standard_name_utf16.c_str(), | 374 standard_name_utf16.c_str(), |
| 375 arraysize(expected.TimeZone.StandardName)); | 375 arraysize(expected.TimeZone.StandardName)); |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 415 kStandardBias, | 415 kStandardBias, |
| 416 daylight_name, | 416 daylight_name, |
| 417 kSystemTimeZero, | 417 kSystemTimeZero, |
| 418 kDaylightBias); | 418 kDaylightBias); |
| 419 | 419 |
| 420 minidump_file_writer.AddStream(misc_info_writer.Pass()); | 420 minidump_file_writer.AddStream(misc_info_writer.Pass()); |
| 421 | 421 |
| 422 StringFileWriter file_writer; | 422 StringFileWriter file_writer; |
| 423 ASSERT_TRUE(minidump_file_writer.WriteEverything(&file_writer)); | 423 ASSERT_TRUE(minidump_file_writer.WriteEverything(&file_writer)); |
| 424 | 424 |
| 425 const MINIDUMP_MISC_INFO_3* observed; | 425 const MINIDUMP_MISC_INFO_3* observed = nullptr; |
| 426 ASSERT_NO_FATAL_FAILURE(GetMiscInfoStream(file_writer.string(), &observed)); | 426 ASSERT_NO_FATAL_FAILURE(GetMiscInfoStream(file_writer.string(), &observed)); |
| 427 | 427 |
| 428 MINIDUMP_MISC_INFO_3 expected = {}; | 428 MINIDUMP_MISC_INFO_3 expected = {}; |
| 429 expected.Flags1 = MINIDUMP_MISC3_TIMEZONE; | 429 expected.Flags1 = MINIDUMP_MISC3_TIMEZONE; |
| 430 expected.TimeZoneId = kTimeZoneId; | 430 expected.TimeZoneId = kTimeZoneId; |
| 431 expected.TimeZone.Bias = kBias; | 431 expected.TimeZone.Bias = kBias; |
| 432 base::string16 standard_name_utf16 = base::UTF8ToUTF16(standard_name); | 432 base::string16 standard_name_utf16 = base::UTF8ToUTF16(standard_name); |
| 433 c16lcpy(expected.TimeZone.StandardName, | 433 c16lcpy(expected.TimeZone.StandardName, |
| 434 standard_name_utf16.c_str(), | 434 standard_name_utf16.c_str(), |
| 435 arraysize(expected.TimeZone.StandardName)); | 435 arraysize(expected.TimeZone.StandardName)); |
| (...skipping 20 matching lines...) Expand all Loading... |
| 456 const char kBuildString[] = "build string"; | 456 const char kBuildString[] = "build string"; |
| 457 const char kDebugBuildString[] = "debug build string"; | 457 const char kDebugBuildString[] = "debug build string"; |
| 458 | 458 |
| 459 misc_info_writer->SetBuildString(kBuildString, kDebugBuildString); | 459 misc_info_writer->SetBuildString(kBuildString, kDebugBuildString); |
| 460 | 460 |
| 461 minidump_file_writer.AddStream(misc_info_writer.Pass()); | 461 minidump_file_writer.AddStream(misc_info_writer.Pass()); |
| 462 | 462 |
| 463 StringFileWriter file_writer; | 463 StringFileWriter file_writer; |
| 464 ASSERT_TRUE(minidump_file_writer.WriteEverything(&file_writer)); | 464 ASSERT_TRUE(minidump_file_writer.WriteEverything(&file_writer)); |
| 465 | 465 |
| 466 const MINIDUMP_MISC_INFO_4* observed; | 466 const MINIDUMP_MISC_INFO_4* observed = nullptr; |
| 467 ASSERT_NO_FATAL_FAILURE(GetMiscInfoStream(file_writer.string(), &observed)); | 467 ASSERT_NO_FATAL_FAILURE(GetMiscInfoStream(file_writer.string(), &observed)); |
| 468 | 468 |
| 469 MINIDUMP_MISC_INFO_4 expected = {}; | 469 MINIDUMP_MISC_INFO_4 expected = {}; |
| 470 expected.Flags1 = MINIDUMP_MISC4_BUILDSTRING; | 470 expected.Flags1 = MINIDUMP_MISC4_BUILDSTRING; |
| 471 base::string16 build_string_utf16 = base::UTF8ToUTF16(kBuildString); | 471 base::string16 build_string_utf16 = base::UTF8ToUTF16(kBuildString); |
| 472 c16lcpy(expected.BuildString, | 472 c16lcpy(expected.BuildString, |
| 473 build_string_utf16.c_str(), | 473 build_string_utf16.c_str(), |
| 474 arraysize(expected.BuildString)); | 474 arraysize(expected.BuildString)); |
| 475 base::string16 debug_build_string_utf16 = | 475 base::string16 debug_build_string_utf16 = |
| 476 base::UTF8ToUTF16(kDebugBuildString); | 476 base::UTF8ToUTF16(kDebugBuildString); |
| (...skipping 15 matching lines...) Expand all Loading... |
| 492 std::string build_string(arraysize(tmp.BuildString) + 1, 'B'); | 492 std::string build_string(arraysize(tmp.BuildString) + 1, 'B'); |
| 493 std::string debug_build_string(arraysize(tmp.DbgBldStr), 'D'); | 493 std::string debug_build_string(arraysize(tmp.DbgBldStr), 'D'); |
| 494 | 494 |
| 495 misc_info_writer->SetBuildString(build_string, debug_build_string); | 495 misc_info_writer->SetBuildString(build_string, debug_build_string); |
| 496 | 496 |
| 497 minidump_file_writer.AddStream(misc_info_writer.Pass()); | 497 minidump_file_writer.AddStream(misc_info_writer.Pass()); |
| 498 | 498 |
| 499 StringFileWriter file_writer; | 499 StringFileWriter file_writer; |
| 500 ASSERT_TRUE(minidump_file_writer.WriteEverything(&file_writer)); | 500 ASSERT_TRUE(minidump_file_writer.WriteEverything(&file_writer)); |
| 501 | 501 |
| 502 const MINIDUMP_MISC_INFO_4* observed; | 502 const MINIDUMP_MISC_INFO_4* observed = nullptr; |
| 503 ASSERT_NO_FATAL_FAILURE(GetMiscInfoStream(file_writer.string(), &observed)); | 503 ASSERT_NO_FATAL_FAILURE(GetMiscInfoStream(file_writer.string(), &observed)); |
| 504 | 504 |
| 505 MINIDUMP_MISC_INFO_4 expected = {}; | 505 MINIDUMP_MISC_INFO_4 expected = {}; |
| 506 expected.Flags1 = MINIDUMP_MISC4_BUILDSTRING; | 506 expected.Flags1 = MINIDUMP_MISC4_BUILDSTRING; |
| 507 base::string16 build_string_utf16 = base::UTF8ToUTF16(build_string); | 507 base::string16 build_string_utf16 = base::UTF8ToUTF16(build_string); |
| 508 c16lcpy(expected.BuildString, | 508 c16lcpy(expected.BuildString, |
| 509 build_string_utf16.c_str(), | 509 build_string_utf16.c_str(), |
| 510 arraysize(expected.BuildString)); | 510 arraysize(expected.BuildString)); |
| 511 base::string16 debug_build_string_utf16 = | 511 base::string16 debug_build_string_utf16 = |
| 512 base::UTF8ToUTF16(debug_build_string); | 512 base::UTF8ToUTF16(debug_build_string); |
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 562 kDaylightName, | 562 kDaylightName, |
| 563 kSystemTimeZero, | 563 kSystemTimeZero, |
| 564 kDaylightBias); | 564 kDaylightBias); |
| 565 misc_info_writer->SetBuildString(kBuildString, kDebugBuildString); | 565 misc_info_writer->SetBuildString(kBuildString, kDebugBuildString); |
| 566 | 566 |
| 567 minidump_file_writer.AddStream(misc_info_writer.Pass()); | 567 minidump_file_writer.AddStream(misc_info_writer.Pass()); |
| 568 | 568 |
| 569 StringFileWriter file_writer; | 569 StringFileWriter file_writer; |
| 570 ASSERT_TRUE(minidump_file_writer.WriteEverything(&file_writer)); | 570 ASSERT_TRUE(minidump_file_writer.WriteEverything(&file_writer)); |
| 571 | 571 |
| 572 const MINIDUMP_MISC_INFO_4* observed; | 572 const MINIDUMP_MISC_INFO_4* observed = nullptr; |
| 573 ASSERT_NO_FATAL_FAILURE(GetMiscInfoStream(file_writer.string(), &observed)); | 573 ASSERT_NO_FATAL_FAILURE(GetMiscInfoStream(file_writer.string(), &observed)); |
| 574 | 574 |
| 575 MINIDUMP_MISC_INFO_4 expected = {}; | 575 MINIDUMP_MISC_INFO_4 expected = {}; |
| 576 expected.Flags1 = | 576 expected.Flags1 = |
| 577 MINIDUMP_MISC1_PROCESS_ID | MINIDUMP_MISC1_PROCESS_TIMES | | 577 MINIDUMP_MISC1_PROCESS_ID | MINIDUMP_MISC1_PROCESS_TIMES | |
| 578 MINIDUMP_MISC1_PROCESSOR_POWER_INFO | MINIDUMP_MISC3_PROCESS_INTEGRITY | | 578 MINIDUMP_MISC1_PROCESSOR_POWER_INFO | MINIDUMP_MISC3_PROCESS_INTEGRITY | |
| 579 MINIDUMP_MISC3_PROCESS_EXECUTE_FLAGS | MINIDUMP_MISC3_PROTECTED_PROCESS | | 579 MINIDUMP_MISC3_PROCESS_EXECUTE_FLAGS | MINIDUMP_MISC3_PROTECTED_PROCESS | |
| 580 MINIDUMP_MISC3_TIMEZONE | MINIDUMP_MISC4_BUILDSTRING; | 580 MINIDUMP_MISC3_TIMEZONE | MINIDUMP_MISC4_BUILDSTRING; |
| 581 expected.ProcessId = kProcessId; | 581 expected.ProcessId = kProcessId; |
| 582 expected.ProcessCreateTime = kProcessCreateTime; | 582 expected.ProcessCreateTime = kProcessCreateTime; |
| (...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 702 | 702 |
| 703 auto misc_info_writer = make_scoped_ptr(new MinidumpMiscInfoWriter()); | 703 auto misc_info_writer = make_scoped_ptr(new MinidumpMiscInfoWriter()); |
| 704 misc_info_writer->InitializeFromSnapshot(&process_snapshot); | 704 misc_info_writer->InitializeFromSnapshot(&process_snapshot); |
| 705 | 705 |
| 706 MinidumpFileWriter minidump_file_writer; | 706 MinidumpFileWriter minidump_file_writer; |
| 707 minidump_file_writer.AddStream(misc_info_writer.Pass()); | 707 minidump_file_writer.AddStream(misc_info_writer.Pass()); |
| 708 | 708 |
| 709 StringFileWriter file_writer; | 709 StringFileWriter file_writer; |
| 710 ASSERT_TRUE(minidump_file_writer.WriteEverything(&file_writer)); | 710 ASSERT_TRUE(minidump_file_writer.WriteEverything(&file_writer)); |
| 711 | 711 |
| 712 const MINIDUMP_MISC_INFO_4* misc_info; | 712 const MINIDUMP_MISC_INFO_4* misc_info = nullptr; |
| 713 ASSERT_NO_FATAL_FAILURE(GetMiscInfoStream(file_writer.string(), &misc_info)); | 713 ASSERT_NO_FATAL_FAILURE(GetMiscInfoStream(file_writer.string(), &misc_info)); |
| 714 | 714 |
| 715 ExpectMiscInfoEqual(&expect_misc_info, misc_info); | 715 ExpectMiscInfoEqual(&expect_misc_info, misc_info); |
| 716 } | 716 } |
| 717 | 717 |
| 718 } // namespace | 718 } // namespace |
| 719 } // namespace test | 719 } // namespace test |
| 720 } // namespace crashpad | 720 } // namespace crashpad |
| OLD | NEW |