Mark Mentovai
3f48f6d798
minidump: Rename MinidumpCrashpadModuleInfoWriter files.
...
The classes were renamed in response to
https://codereview.chromium.org/675803002/diff/1/minidump/minidump_extensions.h#newcode334 ,
but the files were not.
TEST=minidump_test \
MinidumpCrashpadInfoWriter.*:MinidumpModuleCrashpadInfoWriter.*
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/645393005
2014-10-24 14:58:53 -04:00
Mark Mentovai
61af24848f
Add MinidumpModuleCrashpadInfo, its list form, their writers, and their
...
test.
Move SimpleAnnotations from being a property of the minidump to being a
property of the module, matching the Snapshot interface.
TEST=minidump_test MinidumpCrashpadInfo.*:MinidumpCrashpadModule.*
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/675803002
2014-10-24 14:44:55 -04:00
Mark Mentovai
38aeadc1c1
minidump: Use forward declarations in more places.
...
TEST=minidump_test
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/679443002
2014-10-23 18:47:27 -04:00
Mark Mentovai
44a839614b
minidump: Annotate existing virtual destructors that override a base
...
class virtual destructor with “override”.
TEST=minidump_test MinidumpContextWriter.*:MinidumpModuleWriter.*
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/675783006
2014-10-23 18:42:26 -04:00
Mark Mentovai
dcdbd2098f
minidump: Be consistent about setting the fields of WritableIoVec.
...
The iov_base field appears before the iov_len field, but for some
reason, sometimes the fields were being set in the reverse order.
TEST=minidump_test
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/678473003
2014-10-23 17:25:20 -04:00
Mark Mentovai
20f95a2f5b
minidump: Migrate the rest of the tests to
...
MinidumpWritableAtLocationDescriptor<>().
TEST=minidump_test
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/670853002
2014-10-22 18:35:18 -04:00
Mark Mentovai
8a6a4c68e4
Refactor minidump test utilities for MinidumpWritable,
...
MinidumpFileWriter, and Minidump*StringWriter.
TEST=minidump_test
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/664283002
2014-10-21 14:15:07 -04:00
Mark Mentovai
01c535b001
Move minidump/*_test_util.* to minidump/test.
...
Suggested at
https://codereview.chromium.org/654573003/diff/1/minidump/minidump_string_writer_test_util.h#newcode22
TEST=minidump_test
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/663093003
2014-10-20 12:11:14 -04:00
Mark Mentovai
b8a2f41156
Add MinidumpCrashpadInfoWriter and its test.
...
TEST=minidump_test MinidumpCrashpadInfoWriter.*
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/654573003
2014-10-17 18:00:41 -04:00
Mark Mentovai
c9db1b1d19
Add MinidumpSimpleStringDictionaryWriter and its test.
...
TEST=minidump_test MinidumpSimpleStringDictionaryWriter.*
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/656173003
2014-10-16 18:09:18 -04:00
Mark Mentovai
525de2c35a
Use exactly one of final, override, and virtual.
...
This change was generated mechanically by running:
find . \
\( -name \*.cc -or -name \*.mm -or -name \*.h \) \
-and -not -path ./third_party/\* -and -not -path ./out/\* -exec \
sed -i '' -E -e 's/virtual (.*) override final/\1 final/' {} +
find . \
\( -name \*.cc -or -name \*.mm -or -name \*.h \) \
-and -not -path ./third_party/\* -and -not -path ./out/\* -exec \
sed -i '' -E -e 's/virtual (.*) override/\1 override/' {} +
Additional changes were made manually based on:
git grep -E '^ {3,}.*override[;{]'
http://google-styleguide.googlecode.com/svn/trunk/cppguide.html?showone=The__define_Guard#Inheritance
TEST=*_test
BUG=
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/654933002
2014-10-14 11:11:57 -04:00
Mark Mentovai
5d74f120fc
Convert NULL to nullptr.
...
This change was generated mechanically by running:
find . \( -name \*.cc -or -name \*.mm -or -name \*.h \) \
-and -not -path ./third_party/\* -and -not -path ./out/\* \
-exec sed -i '' -E -e 's/(^|[^_])NULL/\1nullptr/g' {} +
Further manual fix-ups were applied to remove casts of nullptr to other
pointer types where possible, to preserve the intentional use of NULL
(as a short form of MACH_PORT_NULL) in exception_port_tool, and to fix
80-column violations.
https://groups.google.com/a/chromium.org/d/topic/chromium-dev/4mijeJHzxLg/discussion
TEST=*_test
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/656703002
2014-10-14 11:10:45 -04:00
Mark Mentovai
c182be95a2
Rename minidump_test_util.* to minidump_file_writer_test_util.*.
...
This is in line with the other new minidump_*_test_util files, namely,
the “context” and “memory” ones. minidump_file_writer_test_util.*
provides VerifyMinidumpHeader(), which is used to validate the
MINIDUMP_HEADER at the beginning of a minidump file, as written by
MinidumpFileWriter.
TEST=minidump_test
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/643643003
2014-10-09 17:07:59 -04:00
Mark Mentovai
b8684a8a3c
Add MinidumpThreadWriter, MinidumpThreadListWriter, and their test.
...
TEST=minidump_test MinidumpThreadWriter*
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/637503006
2014-10-09 15:31:29 -04:00
Mark Mentovai
8d36e3581c
minidump: Use variable names in tests that match parallel array indices.
...
Inspired by
https://codereview.chromium.org/637503006/diff/20001/minidump/minidump_thread_writer_test.cc#newcode409
TEST=minidump_test MinidumpMemoryWriter.*:MinidumpModuleWriter.*
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/643683003
2014-10-09 15:21:05 -04:00
Mark Mentovai
9d115e2391
Add MinidumpExceptionWriter and its test.
...
TEST=minidump_test MinidumpExceptionWriter*
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/639573002
2014-10-09 15:13:13 -04:00
Mark Mentovai
22350bd676
In tests, use ASSERT_NO_FATAL_FAILURE() instead of checking
...
testing::Test::HasFatalFailure() after calling functions that could fail
fatally.
Inspired by
https://codereview.chromium.org/637503006/diff/20001/minidump/minidump_thread_writer_test.cc#newcode437
TEST=client_test, minidump_test, util_test
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/640383002
2014-10-09 15:08:54 -04:00
Mark Mentovai
9c76cc60db
Pull test utilities from MinidumpMemoryWriter’s test out into their own file.
...
These utilities are also useful to MinidumpThreadWriter’s test.
TEST=minidump_test MinidumpMemoryWriter.*
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/639513002
2014-10-07 17:58:43 -04:00
Mark Mentovai
b677bc4ec0
Simplify MinidumpModuleWriter’s module name requirement implementation.
...
TEST=minidump_test MinidumpModuleWriter*
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/633163002
2014-10-07 17:31:43 -04:00
Mark Mentovai
6d1af6922f
Don’t use using directives (“using namespace”) in tests.
...
The contents of tests are moved into the namespace
crashpad::test::(anonymous namespace).
https://google-styleguide.googlecode.com/svn/trunk/cppguide.html#Namespaces
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/635883002
2014-10-07 17:28:50 -04:00
Mark Mentovai
e74a272ab5
Add MinidumpContextWriter test.
...
TEST=minidump_test MinidumpContextWriter.*
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/628153004
2014-10-07 17:27:11 -04:00
Scott Graham
d198c50abe
Convert COMPILE_ASSERT to static_assert
...
(Perhaps I should have just left it in mini_chromium, but anyway.)
R=mark@chromium.org
BUG=crashpad:1
Review URL: https://codereview.chromium.org/615923004
2014-10-01 12:29:01 -07:00
Mark Mentovai
5906513e30
MinidumpContext: fix some problems in AMD64 (x86_64) context enums.
...
This fixes a sloppy compliation error: “Redefinition of enumerator
'kMinidumpContextX86Xstate'”. It also fixes CONTEXT_FULL, which should
contain floating-point registers but not segment registers unlike the
its 32-bit x86 equivalent.
Some comments are revised to provide better, um, context.
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/620663002
2014-09-30 17:22:35 -04:00
Mark Mentovai
cb2288d174
Add MinidumpContext (X86 and AMD64 variants) and their writers.
...
These are fairly simple classes and it’s not valuable to test them
individually. They will be tested as part of MinidumpThreadWriter and
MinidumpExceptionWriter.
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/593583004
2014-09-24 13:34:45 -04:00
Mark Mentovai
9168ba47ac
Fix minidump_module_writer_test 32-bit x86 build.
...
time_t is a typedef for long on Mac OS X. In 32-bit x86 (ILP32), long is
a signed 32-bit quantity, and its range does not contain the range of
uint32_t, used to store times in time_t fashion in minidump files. A
cast is necessary to make these EXPECT_* macros do the right thing. This
is not a problem in x86_64 (LP64) where long is a signed 64-bit
quantity, which does contain the range of uint32_t.
clang’s error was “error: comparison of integers of different signs:
'const long' and 'const unsigned int' [-Werror,-Wsign-compare]”
BUG=
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/491023005
2014-08-20 18:32:06 -04:00
Mark Mentovai
7090b209ad
Use the gtest_main target for test executables.
...
There’s no need to build a separate copy of gtest_main.cc for each test
executable.
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/465363004
2014-08-13 15:28:59 -07:00
Mark Mentovai
e0a79bec5e
MinidumpMemoryWriter test: Don’t suffix uint64_t constants.
...
It’s not necessary.
TEST=minidump_test MinidumpMemoryWriter
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/467323003
2014-08-13 15:27:33 -07:00
Mark Mentovai
0ba9d2b065
Add MinidumpModuleWriter, MinidumpModuleListWriter, related classes, and
...
their test.
TEST=minidump_test MinidumpModuleTest
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/460933004
2014-08-13 15:26:21 -07:00
Mark Mentovai
3b2c6d32f4
Add MinidumpMemoryWriter, MinidumpMemoryListWriter, and their test.
...
TEST=minidump_test MinidumpMemoryWriter
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/459973002
2014-08-12 10:26:40 -07:00
Mark Mentovai
c73a97d4e3
Add MinidumpMiscInfoWriter and its test.
...
TEST=minidump_test MinidumpMiscInfoWriter
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/454073002
2014-08-11 11:42:12 -07:00
Mark Mentovai
aa3adf2c5b
Add MinidumpSystemInfoWriter and its test.
...
TEST=minidump_test MinidumpSystemInfoWriter
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/435243002
2014-08-07 14:58:26 -04:00
Mark Mentovai
859560f70d
Add MinidumpFileWriter and its test.
...
MinidumpFileWriter writes the top-level object to a minidump file. This
consists of a MINIDUMP_HEADER and a list of MINIDUMP_DIRECTORY entries
that point to streams, which are second-level objects in minidump files.
This change also adds the base class for stream writers,
MinidumpStreamWriter.
TEST=minidump_test MinidumpFileWriter*
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/432863006
2014-08-03 18:47:34 -04:00
Mark Mentovai
d2675ce50b
Introduce MinidumpStringWriter and its test.
...
MinidumpStringWriter is responsible for writing variable-length UTF-16
(MINIDUMP_STRING) and UTF-8 (MinidumpUTF8String) strings to minidump
files.
This change depends on https://codereview.chromium.org/430003003/ and
https://codereview.chromium.org/435013002/ .
TEST=minidump_test MinidumpStringWriter.*
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/431363002
2014-08-01 14:44:57 -04:00
Mark Mentovai
5ba343ccf1
Add minidump_extensions.h, which defines Crashpad/Breakpad extensions to
...
the standard minidump format defined in dbghelp.h.
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/435013002
2014-08-01 14:37:20 -04:00
Mark Mentovai
995012534e
Introduce MinidumpWritable, its dependencies, and their tests.
...
MinidumpWritable is the base class for all minidump-writing operations.
R=rsesek@chromium.org
Review URL: https://codereview.chromium.org/432003005
2014-08-01 12:48:28 -04:00