mirror of
https://github.com/zebrajr/node.git
synced 2026-01-15 12:15:26 +00:00
deps: update googletest to c875c4e
PR-URL: https://github.com/nodejs/node/pull/48964 Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Moshe Atlow <moshe@atlow.co.il> Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com> Reviewed-By: Tobias Nießen <tniessen@tnie.de>
This commit is contained in:
committed by
GitHub
parent
88094bba3c
commit
1fea67cbed
22
deps/googletest/include/gtest/gtest-printers.h
vendored
22
deps/googletest/include/gtest/gtest-printers.h
vendored
@@ -43,6 +43,9 @@
|
||||
// 1. foo::PrintTo(const T&, ostream*)
|
||||
// 2. operator<<(ostream&, const T&) defined in either foo or the
|
||||
// global namespace.
|
||||
// * Prefer AbslStringify(..) to operator<<(..), per https://abseil.io/tips/215.
|
||||
// * Define foo::PrintTo(..) if the type already has AbslStringify(..), but an
|
||||
// alternative presentation in test results is of interest.
|
||||
//
|
||||
// However if T is an STL-style container then it is printed element-wise
|
||||
// unless foo::PrintTo(const T&, ostream*) is defined. Note that
|
||||
@@ -112,6 +115,10 @@
|
||||
#include <utility>
|
||||
#include <vector>
|
||||
|
||||
#ifdef GTEST_HAS_ABSL
|
||||
#include "absl/strings/internal/has_absl_stringify.h"
|
||||
#include "absl/strings/str_cat.h"
|
||||
#endif // GTEST_HAS_ABSL
|
||||
#include "gtest/internal/gtest-internal.h"
|
||||
#include "gtest/internal/gtest-port.h"
|
||||
|
||||
@@ -260,6 +267,18 @@ struct ConvertibleToStringViewPrinter {
|
||||
#endif
|
||||
};
|
||||
|
||||
#ifdef GTEST_HAS_ABSL
|
||||
struct ConvertibleToAbslStringifyPrinter {
|
||||
template <
|
||||
typename T,
|
||||
typename = typename std::enable_if<
|
||||
absl::strings_internal::HasAbslStringify<T>::value>::type> // NOLINT
|
||||
static void PrintValue(const T& value, ::std::ostream* os) {
|
||||
*os << absl::StrCat(value);
|
||||
}
|
||||
};
|
||||
#endif // GTEST_HAS_ABSL
|
||||
|
||||
// Prints the given number of bytes in the given object to the given
|
||||
// ostream.
|
||||
GTEST_API_ void PrintBytesInObjectTo(const unsigned char* obj_bytes,
|
||||
@@ -308,6 +327,9 @@ void PrintWithFallback(const T& value, ::std::ostream* os) {
|
||||
using Printer = typename FindFirstPrinter<
|
||||
T, void, ContainerPrinter, FunctionPointerPrinter, PointerPrinter,
|
||||
ProtobufPrinter,
|
||||
#ifdef GTEST_HAS_ABSL
|
||||
ConvertibleToAbslStringifyPrinter,
|
||||
#endif // GTEST_HAS_ABSL
|
||||
internal_stream_operator_without_lexical_name_lookup::StreamPrinter,
|
||||
ConvertibleToIntegerPrinter, ConvertibleToStringViewPrinter,
|
||||
RawBytesPrinter, FallbackPrinter>::type;
|
||||
|
||||
4
deps/googletest/include/gtest/gtest.h
vendored
4
deps/googletest/include/gtest/gtest.h
vendored
@@ -2101,8 +2101,8 @@ class GTEST_API_ ScopedTrace {
|
||||
// Assuming that each thread maintains its own stack of traces.
|
||||
// Therefore, a SCOPED_TRACE() would (correctly) only affect the
|
||||
// assertions in its own thread.
|
||||
#define SCOPED_TRACE(message) \
|
||||
::testing::ScopedTrace GTEST_CONCAT_TOKEN_(gtest_trace_, __LINE__)( \
|
||||
#define SCOPED_TRACE(message) \
|
||||
const ::testing::ScopedTrace GTEST_CONCAT_TOKEN_(gtest_trace_, __LINE__)( \
|
||||
__FILE__, __LINE__, (message))
|
||||
|
||||
// Compile-time assertion for type equality.
|
||||
|
||||
@@ -1497,19 +1497,20 @@ class NeverThrown {
|
||||
gtest_ar_, text, #actual, #expected) \
|
||||
.c_str())
|
||||
|
||||
#define GTEST_TEST_NO_FATAL_FAILURE_(statement, fail) \
|
||||
GTEST_AMBIGUOUS_ELSE_BLOCKER_ \
|
||||
if (::testing::internal::AlwaysTrue()) { \
|
||||
::testing::internal::HasNewFatalFailureHelper gtest_fatal_failure_checker; \
|
||||
GTEST_SUPPRESS_UNREACHABLE_CODE_WARNING_BELOW_(statement); \
|
||||
if (gtest_fatal_failure_checker.has_new_fatal_failure()) { \
|
||||
goto GTEST_CONCAT_TOKEN_(gtest_label_testnofatal_, __LINE__); \
|
||||
} \
|
||||
} else \
|
||||
GTEST_CONCAT_TOKEN_(gtest_label_testnofatal_, __LINE__) \
|
||||
: fail("Expected: " #statement \
|
||||
" doesn't generate new fatal " \
|
||||
"failures in the current thread.\n" \
|
||||
#define GTEST_TEST_NO_FATAL_FAILURE_(statement, fail) \
|
||||
GTEST_AMBIGUOUS_ELSE_BLOCKER_ \
|
||||
if (::testing::internal::AlwaysTrue()) { \
|
||||
const ::testing::internal::HasNewFatalFailureHelper \
|
||||
gtest_fatal_failure_checker; \
|
||||
GTEST_SUPPRESS_UNREACHABLE_CODE_WARNING_BELOW_(statement); \
|
||||
if (gtest_fatal_failure_checker.has_new_fatal_failure()) { \
|
||||
goto GTEST_CONCAT_TOKEN_(gtest_label_testnofatal_, __LINE__); \
|
||||
} \
|
||||
} else /* NOLINT */ \
|
||||
GTEST_CONCAT_TOKEN_(gtest_label_testnofatal_, __LINE__) \
|
||||
: fail("Expected: " #statement \
|
||||
" doesn't generate new fatal " \
|
||||
"failures in the current thread.\n" \
|
||||
" Actual: it does.")
|
||||
|
||||
// Expands to the name of the class that implements the given test.
|
||||
|
||||
@@ -115,6 +115,8 @@
|
||||
#define GTEST_OS_QURT 1
|
||||
#elif defined(CPU_QN9090) || defined(CPU_QN9090HN)
|
||||
#define GTEST_OS_NXP_QN9090 1
|
||||
#elif defined(NRF52)
|
||||
#define GTEST_OS_NRF52 1
|
||||
#endif // __CYGWIN__
|
||||
|
||||
#endif // GOOGLETEST_INCLUDE_GTEST_INTERNAL_GTEST_PORT_ARCH_H_
|
||||
|
||||
@@ -506,7 +506,7 @@ typedef struct _RTL_CRITICAL_SECTION GTEST_CRITICAL_SECTION;
|
||||
defined(GTEST_OS_SOLARIS) || defined(GTEST_OS_HAIKU) || \
|
||||
defined(GTEST_OS_ESP32) || defined(GTEST_OS_ESP8266) || \
|
||||
defined(GTEST_OS_XTENSA) || defined(GTEST_OS_QURT) || \
|
||||
defined(GTEST_OS_NXP_QN9090)))
|
||||
defined(GTEST_OS_NXP_QN9090) || defined(GTEST_OS_NRF52)))
|
||||
#define GTEST_HAS_STD_WSTRING 1
|
||||
#else
|
||||
#define GTEST_HAS_STD_WSTRING 0
|
||||
@@ -1146,47 +1146,6 @@ inline To ImplicitCast_(To x) {
|
||||
return x;
|
||||
}
|
||||
|
||||
// When you upcast (that is, cast a pointer from type Foo to type
|
||||
// SuperclassOfFoo), it's fine to use ImplicitCast_<>, since upcasts
|
||||
// always succeed. When you downcast (that is, cast a pointer from
|
||||
// type Foo to type SubclassOfFoo), static_cast<> isn't safe, because
|
||||
// how do you know the pointer is really of type SubclassOfFoo? It
|
||||
// could be a bare Foo, or of type DifferentSubclassOfFoo. Thus,
|
||||
// when you downcast, you should use this macro. In debug mode, we
|
||||
// use dynamic_cast<> to double-check the downcast is legal (we die
|
||||
// if it's not). In normal mode, we do the efficient static_cast<>
|
||||
// instead. Thus, it's important to test in debug mode to make sure
|
||||
// the cast is legal!
|
||||
// This is the only place in the code we should use dynamic_cast<>.
|
||||
// In particular, you SHOULDN'T be using dynamic_cast<> in order to
|
||||
// do RTTI (eg code like this:
|
||||
// if (dynamic_cast<Subclass1>(foo)) HandleASubclass1Object(foo);
|
||||
// if (dynamic_cast<Subclass2>(foo)) HandleASubclass2Object(foo);
|
||||
// You should design the code some other way not to need this.
|
||||
//
|
||||
// This relatively ugly name is intentional. It prevents clashes with
|
||||
// similar functions users may have (e.g., down_cast). The internal
|
||||
// namespace alone is not enough because the function can be found by ADL.
|
||||
template <typename To, typename From> // use like this: DownCast_<T*>(foo);
|
||||
inline To DownCast_(From* f) { // so we only accept pointers
|
||||
// Ensures that To is a sub-type of From *. This test is here only
|
||||
// for compile-time type checking, and has no overhead in an
|
||||
// optimized build at run-time, as it will be optimized away
|
||||
// completely.
|
||||
GTEST_INTENTIONAL_CONST_COND_PUSH_()
|
||||
if (false) {
|
||||
GTEST_INTENTIONAL_CONST_COND_POP_()
|
||||
const To to = nullptr;
|
||||
::testing::internal::ImplicitCast_<From*>(to);
|
||||
}
|
||||
|
||||
#if GTEST_HAS_RTTI
|
||||
// RTTI: debug mode only!
|
||||
GTEST_CHECK_(f == nullptr || dynamic_cast<To>(f) != nullptr);
|
||||
#endif
|
||||
return static_cast<To>(f);
|
||||
}
|
||||
|
||||
// Downcasts the pointer of type Base to Derived.
|
||||
// Derived must be a subclass of Base. The parameter MUST
|
||||
// point to a class of type Derived, not any subclass of it.
|
||||
|
||||
6
deps/googletest/src/gtest-filepath.cc
vendored
6
deps/googletest/src/gtest-filepath.cc
vendored
@@ -102,7 +102,8 @@ FilePath FilePath::GetCurrentDir() {
|
||||
#if defined(GTEST_OS_WINDOWS_MOBILE) || defined(GTEST_OS_WINDOWS_PHONE) || \
|
||||
defined(GTEST_OS_WINDOWS_RT) || defined(GTEST_OS_ESP8266) || \
|
||||
defined(GTEST_OS_ESP32) || defined(GTEST_OS_XTENSA) || \
|
||||
defined(GTEST_OS_QURT) || defined(GTEST_OS_NXP_QN9090)
|
||||
defined(GTEST_OS_QURT) || defined(GTEST_OS_NXP_QN9090) || \
|
||||
defined(GTEST_OS_NRF52)
|
||||
// These platforms do not have a current directory, so we just return
|
||||
// something reasonable.
|
||||
return FilePath(kCurrentDirectoryString);
|
||||
@@ -356,7 +357,8 @@ bool FilePath::CreateFolder() const {
|
||||
#elif defined(GTEST_OS_WINDOWS)
|
||||
int result = _mkdir(pathname_.c_str());
|
||||
#elif defined(GTEST_OS_ESP8266) || defined(GTEST_OS_XTENSA) || \
|
||||
defined(GTEST_OS_QURT) || defined(GTEST_OS_NXP_QN9090)
|
||||
defined(GTEST_OS_QURT) || defined(GTEST_OS_NXP_QN9090) || \
|
||||
defined(GTEST_OS_NRF52)
|
||||
// do nothing
|
||||
int result = 0;
|
||||
#else
|
||||
|
||||
3
deps/googletest/src/gtest_main.cc
vendored
3
deps/googletest/src/gtest_main.cc
vendored
@@ -31,7 +31,8 @@
|
||||
|
||||
#include "gtest/gtest.h"
|
||||
|
||||
#if defined(GTEST_OS_ESP8266) || defined(GTEST_OS_ESP32)
|
||||
#if defined(GTEST_OS_ESP8266) || defined(GTEST_OS_ESP32) || \
|
||||
(defined(GTEST_OS_NRF52) && defined(ARDUINO))
|
||||
// Arduino-like platforms: program entry points are setup/loop instead of main.
|
||||
|
||||
#ifdef GTEST_OS_ESP8266
|
||||
|
||||
@@ -15,7 +15,7 @@ This a list of all the dependencies:
|
||||
* [c-ares 1.19.0][]
|
||||
* [cjs-module-lexer 1.2.2][]
|
||||
* [corepack][]
|
||||
* [googletest cc36671][]
|
||||
* [googletest c875c4e][]
|
||||
* [histogram 0.11.8][]
|
||||
* [icu-small 73.2][]
|
||||
* [libuv 1.46.0][]
|
||||
@@ -189,7 +189,7 @@ In practical terms, Corepack will let you use Yarn and pnpm without having to
|
||||
install them - just like what currently happens with npm, which is shipped
|
||||
by Node.js by default.
|
||||
|
||||
### googletest cc36671
|
||||
### googletest c875c4e
|
||||
|
||||
The [googletest](https://github.com/google/googletest) dependency is Google’s
|
||||
C++ testing and mocking framework.
|
||||
@@ -326,7 +326,7 @@ performance improvements not currently available in standard zlib.
|
||||
[cjs-module-lexer 1.2.2]: #cjs-module-lexer-122
|
||||
[corepack]: #corepack
|
||||
[dependency-update-action]: ../../../.github/workflows/tools.yml
|
||||
[googletest cc36671]: #googletest-cc36671
|
||||
[googletest c875c4e]: #googletest-c875c4e
|
||||
[histogram 0.11.8]: #histogram-0118
|
||||
[icu-small 73.2]: #icu-small-732
|
||||
[libuv 1.46.0]: #libuv-1460
|
||||
|
||||
Reference in New Issue
Block a user