diff options
Diffstat (limited to 'sandbox/linux/tests')
-rw-r--r-- | sandbox/linux/tests/unit_tests.h | 2 | ||||
-rw-r--r-- | sandbox/linux/tests/unit_tests_unittest.cc | 32 |
2 files changed, 33 insertions, 1 deletions
diff --git a/sandbox/linux/tests/unit_tests.h b/sandbox/linux/tests/unit_tests.h index 74aabe4..3f6092e 100644 --- a/sandbox/linux/tests/unit_tests.h +++ b/sandbox/linux/tests/unit_tests.h @@ -47,7 +47,7 @@ bool IsRunningOnValgrind(); sandbox::UnitTests::DeathExitCode, \ reinterpret_cast<void*>(static_cast<intptr_t>(rc)) #define DEATH_BY_SIGNAL(s) \ - sandbox::UnitTests::DeathExitCode, \ + sandbox::UnitTests::DeathBySignal, \ reinterpret_cast<void*>(static_cast<intptr_t>(s)) // A SANDBOX_DEATH_TEST is just like a SANDBOX_TEST (see below), but it assumes diff --git a/sandbox/linux/tests/unit_tests_unittest.cc b/sandbox/linux/tests/unit_tests_unittest.cc new file mode 100644 index 0000000..2084b97 --- /dev/null +++ b/sandbox/linux/tests/unit_tests_unittest.cc @@ -0,0 +1,32 @@ +// Copyright 2014 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include <signal.h> +#include <stdlib.h> + +#include "sandbox/linux/tests/unit_tests.h" + +namespace sandbox { + +namespace { + +const int kExpectedExitCode = 42; + +SANDBOX_DEATH_TEST(UnitTests, + DeathExitCode, + DEATH_EXIT_CODE(kExpectedExitCode)) { + exit(kExpectedExitCode); +} + +const int kExpectedSignalNumber = SIGKILL; + +SANDBOX_DEATH_TEST(UnitTests, + DeathBySignal, + DEATH_BY_SIGNAL(kExpectedSignalNumber)) { + raise(kExpectedSignalNumber); +} + +} // namespace + +} // namespace sandbox |