Bump `cmake_minimum_required` to 3.5.
Delete conditional branches exclusive to older versions.
Notable dependents:
- github.com/grpc/grpc >= 3.5.1
- github.com/abseil/abseil-cpp >= 3.5
- github.com/googleapis/google-cloud-cpp >= 3.5
On the other hand, github.com/protocolbuffers/protobuf is >= 3.1.3, but it only depends on GoogleTest 1.10.
Fixes#3523
PiperOrigin-RevId: 392073834
Standardize access to GoogleTest flags on GTEST_FLAG_GET/GTEST_FLAG_SET
Custom implementations can decide how access to flags is performed depending on the implementation of flags being used.
PiperOrigin-RevId: 391971115
In line number 39 I added an anchor tag in "see detail above", it will redirect user to to particular section i.e. Contributor License Agreements section.
Standardize access to GoogleTest flags on GTEST_FLAG_GET/GTEST_FLAG_SET
Custom implementations can decide how access to flags is performed depending on the implementation of flags being used.
PiperOrigin-RevId: 388181424
Add `Conditional` wrapper to gtest
This follows an initial proposal for an 'EqIff` matcher. `Conditional` was considered more precise as an EqIff() matcher may suffer from `Iff` not being universally understood.
PiperOrigin-RevId: 383407665
gtest: Add a flag to only set up/tear down test environments once when repeating
Currently when running a test multiple times using `--gtest_repeat` the global
test environment(s) are set up and torn down for each iteration of the test.
When checking for flakes in tests that have expensive dependencies that are set
up in the test environment (subprocesses, external dependencies, etc) this can
become expensive.
To support finding flakes in tests that fit into this category, where the setup
phase is expensive but each test case is fast, allow callers to specify via
`--gtest_recreate_environments_when_repeating=false` that the test environments
should only be set up once, for the first iteration, and only torn down once, on
the last iteration. This makes running a test with `--gtest_repeat=1000` a much
faster and more pleasant experience.
PiperOrigin-RevId: 382748942
The documentation is clear that the FOO we'll be guarding always matches
the spelling of the DONT macro. A single guard macro should not toggle
more than one implementation macro.
This fixes a regression in 7413280c52.
Relatedly, improve the documentation of the DONT macros to bring the
list of valid FOO values up to date.
Implement 'Contains(e).Times(n)' matcher modifier which allows to test for arbitrary occurrences including absence with Times(0).
PiperOrigin-RevId: 382210276