| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
Signed-off-by: Ryan Egesdahl <ryan.egesdahl@mongodb.com>
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Put all references to ExitCode enumerators under an enum class to namespace
all the enumerators and avoid polluting the mongo namespace with possible
naming collisions.
- Added magic-number exit codes to exit_code.h like 50 & 51
(LauncherMiddleError & LauncherError respectively).
- Reserved a range of exit codes to account for FreeBSD's usage of 64-78.
- Renamed all enums with removal of EXIT_ which could conflict or get confused
with built-in macros.
- camelCased all ExitCode enum values.
- Added the generic - ExitCode::fail - for returning 1 as failure.
- Added explicit dependency on the exit_code.h header for all files using
ExitCode's.
- Removed all references to implementation-defined exit codes like EXIT_FAILURE
and EXIT_SUCCESS.
- Narrowed return values of the shell's undocumented quit() argument to portable
values within 0-255, 0/ExitCode::clean otherwise.
- Deprecated 8 unused ExitCode's
- java
- oomMalloc
- oomRealloc
- fs
- clockSkew
- windowsServiceStop
- possibleCorruption
- test
- Wrapped the 2 Windows-only ExitCode's in #ifdef's
- ntServiceError
- windowsServiceStop
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
This reverts commit b372b25622b9ec4dd7ae5b8e3424218b8eaa774a.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
(cherry picked from commit bd82bb0ad816d68ff8b5a89647a3394b6acdac9d)
|
| |
|
| |
|
| |
|
|
|
|
| |
Add logv2::LogComponent::kTest
|
|
|
|
| |
Added LOGV2_FATAL_NOTRACE and LOGV2_CONTINUE to have different behavior.
|
|
|
|
|
|
|
|
|
|
|
|
| |
o death_test.cpp was allowing throwing "children" to escape their
context to become test running "parents" and run more "children"
thus recursion
o assert_util_test.cpp was testing that uassert and massert die,
but uassert and massert don't die
o fix RollbackFailsOnUnknownOplogEntryCommandType which was throwing
instead of dying in a death test
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Segregate old-style dbtests into their own Suite initialization
system: OldStyleSuiteSpecification. This is where the funky
deprecated features can live on without interfering with the
Suite API. It also gives us a searchable base class to identify
them in the future.
OldStyleSuite has `setupTests()` and an `add<T>()` that
Suite does not have. Suite API can shrink when it doesn't
have to support these dbtest adaptor features.
Suite only needs non-template `add(name, callback)`.
- Add OldStyleSuiteInitializer to some dbtests that were missing it!
These didn't use SuiteInstance to register themselves and were
incorrect. They would self register, resulting in _allSuites()
holding a std::shared_ptr to a static-duration Suite object!
- Change `getSuite()` to return `Suite&` instead of `Suite*`.
- No more "self-registering" in Suite constructor. Registration
must be done as a separate post-construction step. This removes
some unusual lifetime management code and is easier to document.
Suite::getSuite(name) is the only way to make a Suite, and it
does the make_shared and registration calls with a pseudo-private
ConstructorEnable idiom.
- Suite->run() returns std::unique_ptr<Result> instead of
raw `Result*`. It's virtual to support OldStyleSuite behavior.
- Suite._ran does nothing. Removed.
- Result.cur does nothing. Removed.
- Switch to pass-by-value and std::move for most ctor args.
- Add explicit on 1-arg ctors.
- Get rid of TestHolder. It's just a 2-field struct.
- use fmt instead of snprintf
- TEST and TEST_F macros: generate TEST_TYPE once.
- TEST and TEST_F macros: inline the _agent variable.
- Mark _doRun as `override`.
- Terminology: replace CASE_NAME with SUITE_NAME.
- rename DeathTestImpl -> DeathTestBase
- move getDeathTestPattern into the test as a static member function
- refactor out some repetition from the comparator decl macros
- use if-constexpr and diamond relops to clean up the
ComparisonAssertion class.
- dbtests: conditionally skip some add<T> calls
- further dedup (DEATH_)TEST(_F) macros
|
| |
|
|
|
|
|
|
|
|
| |
Death tests run in a child process. That process communicates its
stdout and stderr to its parent via a pipe. The results are
searched for a death-test string. We now output the child's
output to the parent's stream, after collecting it for a later
search.
|
| |
|
|
|
|
|
|
| |
Remove leading comments that are just stating the filename.
Move any file-level comments below the copyright banner.
Remove leading blank lines.
|
| |
|
| |
|
|
|
|
| |
death tests.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Use a SCons invocation like the following to attach to the correct SDK
and targeting options.
// macOS native build:
> python buildscripts/scons.py CCFLAGS="-isysroot `xcrun --sdk macosx --show-sdk-path` -mmacosx-version-min=10.10" LINKFLAGS="-Wl,-syslibroot,`xcrun --sdk macosx --show-sdk-path` -mmacosx-version-min=10.10" CC=`xcrun -f --sdk macosx clang` CXX=`xcrun -f --sdk macosx clang++`all
// iOS Cross:
> python buildscripts/scons.py CCFLAGS="-arch arm64 -isysroot `xcrun --sdk iphoneos --show-sdk-path` -miphoneos-version-min=10.2" LINKFLAGS="-arch arm64 -Wl,-syslibroot,`xcrun --sdk iphoneos --show-sdk-path` -miphoneos-version-min=10.2" CC=`xcrun -f --sdk iphoneos clang` CXX=`xcrun -f --sdk iphoneos clang++` TARGET_OS=iOS TARGET_ARCH=aarch64 all
// iOS Simulator Cross:
> python buildscripts/scons.py CCFLAGS="-isysroot `xcrun --sdk iphonesimulator --show-sdk-path` -miphoneos-version-min=10.2" LINKFLAGS="-Wl,-syslibroot,`xcrun --sdk iphonesimulator --show-sdk-path` -miphoneos-version-min=10.2" CC=`xcrun -f --sdk iphonesimulator clang` CXX=`xcrun -f --sdk iphonesimulator clang++` TARGET_OS=iOS-sim all
// tvOS Cross:
> python buildscripts/scons.py CCFLAGS="-arch arm64 -isysroot `xcrun --sdk appletvos --show-sdk-path` -mtvos-version-min=10.1" LINKFLAGS="-arch arm64 -Wl,-syslibroot,`xcrun --sdk appletvos --show-sdk-path` -mtvos-version-min=10.1" CC=`xcrun -f --sdk appletvos clang` CXX=`xcrun -f --sdk appletvos clang++` TARGET_OS=tvOS TARGET_ARCH=aarch64 all
// tvOS Simulator Cross:
> python buildscripts/scons.py CCFLAGS="-isysroot `xcrun --sdk appletvsimulator --show-sdk-path` -mtvos-version-min=10.1" LINKFLAGS="-Wl,-syslibroot,`xcrun --sdk appletvsimulator --show-sdk-path` -mtvos-version-min=10.1" CC=`xcrun -f --sdk appletvsimulator clang` CXX=`xcrun -f --sdk appletvsimulator clang++` TARGET_OS=tvOS-sim
To run the resulting binaries under the simulator, boot a particular
target machine with 'xcrun simctl':
> xcrun simctl boot 'Apple TV 1080p'
Find the ID of the instance that was booted:
> xcrun simctl list | grep 'Apple TV 1080p'
And then spawn the intended binary inside the simulator with that ID:
> xcrun simctl spawn CEEC6346-6D21-4092-A091-E5A3862A357F build/opt/mongo/mongod --dbpath=tmp
|
| |
|
|
|