aboutsummaryrefslogtreecommitdiffhomepage
path: root/Firestore/core/test/firebase/firestore/util/executor_std_test.cc
diff options
context:
space:
mode:
Diffstat (limited to 'Firestore/core/test/firebase/firestore/util/executor_std_test.cc')
-rw-r--r--Firestore/core/test/firebase/firestore/util/executor_std_test.cc8
1 files changed, 6 insertions, 2 deletions
diff --git a/Firestore/core/test/firebase/firestore/util/executor_std_test.cc b/Firestore/core/test/firebase/firestore/util/executor_std_test.cc
index 43cad60..59c3c32 100644
--- a/Firestore/core/test/firebase/firestore/util/executor_std_test.cc
+++ b/Firestore/core/test/firebase/firestore/util/executor_std_test.cc
@@ -70,7 +70,6 @@ TEST_F(ScheduleTest, PopIfDue_Delayed) {
schedule.Push(2, start_time + chr::milliseconds(3));
schedule.Push(3, start_time + chr::milliseconds(1));
- EXPECT_FALSE(schedule.PopIfDue().has_value());
std::this_thread::sleep_for(chr::milliseconds(5));
EXPECT_EQ(schedule.PopIfDue().value(), 3);
@@ -212,11 +211,16 @@ TEST_F(ScheduleTest, PopBlockingIsNotAffectedByIrrelevantRemovals) {
EXPECT_EQ(schedule.PopBlocking(), 1);
});
- while (schedule.empty()) {
+ // Wait (with timeout) for both values to appear in the schedule.
+ while (schedule.size() != 2) {
+ if (now() - start_time >= kTimeout) {
+ Abort();
+ }
std::this_thread::sleep_for(chr::milliseconds(1));
}
const auto maybe_removed =
schedule.RemoveIf([](const int v) { return v == 2; });
+ ASSERT_TRUE(maybe_removed.has_value());
EXPECT_EQ(maybe_removed.value(), 2);
ABORT_ON_TIMEOUT(future);
}