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