summaryrefslogtreecommitdiff
path: root/src/mongo/db/process_health/health_observer_test.cpp
diff options
context:
space:
mode:
authorAndrew Shuvalov <andrew.shuvalov@mongodb.com>2021-10-21 01:50:32 +0000
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2021-10-21 02:22:39 +0000
commit05f90673ab20eca2857e673b5ef8d3d26e3bbb21 (patch)
tree8e55c6db8b99ed5e104edc3150817300aab66e33 /src/mongo/db/process_health/health_observer_test.cpp
parent13093cdb3f878f20e8ebda8ac78f329d1b33a52f (diff)
downloadmongo-05f90673ab20eca2857e673b5ef8d3d26e3bbb21.tar.gz
SERVER-60587 Implement FaultFacet and make necessary changes in HealthCheckStatus
Diffstat (limited to 'src/mongo/db/process_health/health_observer_test.cpp')
-rw-r--r--src/mongo/db/process_health/health_observer_test.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/mongo/db/process_health/health_observer_test.cpp b/src/mongo/db/process_health/health_observer_test.cpp
index c53e54c6f77..9780c45209e 100644
--- a/src/mongo/db/process_health/health_observer_test.cpp
+++ b/src/mongo/db/process_health/health_observer_test.cpp
@@ -100,6 +100,8 @@ TEST_F(FaultManagerTest, SeverityIsMaxFromAllFacetsSeverity) {
manager().healthCheckTest();
do {
waitForFaultBeingCreated();
+ advanceTime(Milliseconds(100));
+ manager().healthCheckTest();
} while (manager().getFault().getFacets().size() != 2); // Race between two facets.
auto currentFault = manager().currentFault();
@@ -121,6 +123,7 @@ TEST_F(FaultManagerTest, HealthCheckCreatesFacetThenIsGarbageCollectedAndStateTr
ASSERT_FALSE(manager().currentFault());
// State is transitioned.
ASSERT_EQ(FaultState::kOk, manager().getFaultState());
+ resetManager(); // Before atomic fields above go out of scope.
}
TEST_F(FaultManagerTest, HealthCheckCreates2FacetsThenIsGarbageCollected) {
@@ -133,6 +136,8 @@ TEST_F(FaultManagerTest, HealthCheckCreates2FacetsThenIsGarbageCollected) {
while (manager().getFault().getFacets().size() != 2) {
sleepFor(Milliseconds(1));
+ advanceTime(Milliseconds(100));
+ manager().healthCheckTest();
}
// Resolve one facet and it should be garbage collected.
@@ -149,6 +154,7 @@ TEST_F(FaultManagerTest, HealthCheckCreates2FacetsThenIsGarbageCollected) {
}
ASSERT_FALSE(internalFault.getFaultFacet(FaultFacetType::kMock1));
ASSERT_TRUE(internalFault.getFaultFacet(FaultFacetType::kMock2));
+ resetManager(); // Before atomic fields above go out of scope.
}
TEST_F(FaultManagerTest, HealthCheckWithOffFacetCreatesNoFault) {
@@ -178,6 +184,7 @@ TEST_F(FaultManagerTest, DoesNotRestartCheckBeforeIntervalExpired) {
waitForFaultBeingCreated();
currentFault = manager().currentFault();
ASSERT_TRUE(currentFault); // The fault was created.
+ resetManager(); // Before atomic fields above go out of scope.
}
TEST_F(FaultManagerTest, HealthCheckWithCriticalFacetCreatesFault) {