aboutsummaryrefslogtreecommitdiff
path: root/absl/random
diff options
context:
space:
mode:
authorEvan Brown <ezb@google.com>2024-03-12 07:18:14 -0700
committerCopybara-Service <copybara-worker@google.com>2024-03-12 07:19:08 -0700
commit6cd8cf090d1ee521ad1aadeb961601d036f00cae (patch)
tree6459d1651940092d136db33cceb72b193a03e07f /absl/random
parente20285c6529eafba57521153790bcb9a4d4244c3 (diff)
downloadabseil-6cd8cf090d1ee521ad1aadeb961601d036f00cae.tar.gz
abseil-6cd8cf090d1ee521ad1aadeb961601d036f00cae.tar.bz2
abseil-6cd8cf090d1ee521ad1aadeb961601d036f00cae.zip
Make flaky failures much less likely in BasicMocking.MocksNotTriggeredForIncorrectTypes test.
PiperOrigin-RevId: 615030645 Change-Id: Ia0ff3e649c6155c44d4772ce32fbcd4c5b273cc7
Diffstat (limited to 'absl/random')
-rw-r--r--absl/random/mocking_bit_gen_test.cc17
1 files changed, 12 insertions, 5 deletions
diff --git a/absl/random/mocking_bit_gen_test.cc b/absl/random/mocking_bit_gen_test.cc
index c713ceaf..9ccdf568 100644
--- a/absl/random/mocking_bit_gen_test.cc
+++ b/absl/random/mocking_bit_gen_test.cc
@@ -16,6 +16,7 @@
#include "absl/random/mocking_bit_gen.h"
#include <cmath>
+#include <cstdint>
#include <numeric>
#include <random>
@@ -176,12 +177,18 @@ TEST(BasicMocking, MultipleGenerators) {
EXPECT_NE(get_value(mocked_with_11), 11);
}
-TEST(BasicMocking, MocksNotTrigeredForIncorrectTypes) {
+TEST(BasicMocking, MocksNotTriggeredForIncorrectTypes) {
absl::MockingBitGen gen;
- EXPECT_CALL(absl::MockUniform<uint32_t>(), Call(gen)).WillOnce(Return(42));
-
- EXPECT_NE(absl::Uniform<uint16_t>(gen), 42); // Not mocked
- EXPECT_EQ(absl::Uniform<uint32_t>(gen), 42); // Mock triggered
+ EXPECT_CALL(absl::MockUniform<uint32_t>(), Call(gen))
+ .WillRepeatedly(Return(42));
+
+ bool uint16_always42 = true;
+ for (int i = 0; i < 10000; i++) {
+ EXPECT_EQ(absl::Uniform<uint32_t>(gen), 42); // Mock triggered.
+ // uint16_t not mocked.
+ uint16_always42 = uint16_always42 && absl::Uniform<uint16_t>(gen) == 42;
+ }
+ EXPECT_FALSE(uint16_always42);
}
TEST(BasicMocking, FailsOnUnsatisfiedMocks) {