You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by be...@apache.org on 2013/05/26 18:57:28 UTC

[03/28] git commit: Performed GTEST_IS_THREADSAFE check.

Performed GTEST_IS_THREADSAFE check.

Review: https://reviews.apache.org/r/11264


Project: http://git-wip-us.apache.org/repos/asf/incubator-mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-mesos/commit/f5be4131
Tree: http://git-wip-us.apache.org/repos/asf/incubator-mesos/tree/f5be4131
Diff: http://git-wip-us.apache.org/repos/asf/incubator-mesos/diff/f5be4131

Branch: refs/heads/master
Commit: f5be4131d1aa4bd858eeedcbefffb842d7252252
Parents: 304835d
Author: Benjamin Hindman <be...@twitter.com>
Authored: Thu Apr 25 17:33:12 2013 -0700
Committer: Benjamin Hindman <be...@twitter.com>
Committed: Fri May 24 22:05:05 2013 -0700

----------------------------------------------------------------------
 src/tests/environment.cpp                 |    5 ++++
 src/tests/exception_tests.cpp             |    6 -----
 src/tests/fault_tolerance_tests.cpp       |   26 ------------------------
 src/tests/gc_tests.cpp                    |   10 ---------
 src/tests/master_detector_tests.cpp       |    2 -
 src/tests/master_tests.cpp                |   24 ----------------------
 src/tests/reaper_tests.cpp                |    2 -
 src/tests/resource_offers_tests.cpp       |   17 ---------------
 src/tests/slave_recovery_tests.cpp        |    2 -
 src/tests/status_update_manager_tests.cpp |    8 -------
 10 files changed, 5 insertions(+), 97 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-mesos/blob/f5be4131/src/tests/environment.cpp
----------------------------------------------------------------------
diff --git a/src/tests/environment.cpp b/src/tests/environment.cpp
index c94c85f..15ef205 100644
--- a/src/tests/environment.cpp
+++ b/src/tests/environment.cpp
@@ -24,6 +24,7 @@
 #include <process/gmock.hpp>
 #include <process/gtest.hpp>
 
+#include <stout/exit.hpp>
 #include <stout/os.hpp>
 #include <stout/strings.hpp>
 
@@ -172,6 +173,10 @@ void Environment::SetUp()
 {
   // Clear any MESOS_ environment variables so they don't affect our tests.
   Configurator::clearMesosEnvironmentVars();
+
+  if (!GTEST_IS_THREADSAFE) {
+    EXIT(1) << "Testing environment is not thread safe, bailing!";
+  }
 }
 
 

http://git-wip-us.apache.org/repos/asf/incubator-mesos/blob/f5be4131/src/tests/exception_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/exception_tests.cpp b/src/tests/exception_tests.cpp
index f405a61..911e786 100644
--- a/src/tests/exception_tests.cpp
+++ b/src/tests/exception_tests.cpp
@@ -62,8 +62,6 @@ using testing::SaveArg;
 
 TEST(ExceptionTest, DeactivateFrameworkOnAbort)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   PID<Master> master = local::launch(1, 2, 1 * Gigabyte,1 * Gigabyte,  false);
 
   MockScheduler sched;
@@ -98,8 +96,6 @@ TEST(ExceptionTest, DeactivateFrameworkOnAbort)
 
 TEST(ExceptionTest, DisallowSchedulerActionsOnAbort)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   PID<Master> master = local::launch(1, 2, 1 * Gigabyte, 1 * Gigabyte, false);
 
   MockScheduler sched;
@@ -131,8 +127,6 @@ TEST(ExceptionTest, DisallowSchedulerActionsOnAbort)
 
 TEST(ExceptionTest, DisallowSchedulerCallbacksOnAbort)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   PID<Master> master = local::launch(1, 2, 1 * Gigabyte, 1 * Gigabyte, false);
 
   MockScheduler sched;

http://git-wip-us.apache.org/repos/asf/incubator-mesos/blob/f5be4131/src/tests/fault_tolerance_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/fault_tolerance_tests.cpp b/src/tests/fault_tolerance_tests.cpp
index 2e9416e..bcfe5db 100644
--- a/src/tests/fault_tolerance_tests.cpp
+++ b/src/tests/fault_tolerance_tests.cpp
@@ -92,8 +92,6 @@ class FaultToleranceTest : public MesosTest {};
 // its offer(s) is rescinded.
 TEST_F(FaultToleranceTest, SlaveLost)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   HierarchicalDRFAllocatorProcess allocator;
   Allocator a(&allocator);
   Files files;
@@ -149,8 +147,6 @@ TEST_F(FaultToleranceTest, SlaveLost)
 // message for a partioned slave.
 TEST_F(FaultToleranceTest, PartitionedSlave)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   Clock::pause();
 
   // Set these expectations up before we spawn the slave (in
@@ -662,8 +658,6 @@ TEST_F(FaultToleranceClusterTest, MasterFailover)
 
 TEST_F(FaultToleranceTest, SchedulerFailover)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   PID<Master> master = local::launch(1, 2, 1 * Gigabyte, 1 * Gigabyte, false);
 
   // Launch the first (i.e., failing) scheduler and wait until
@@ -732,8 +726,6 @@ TEST_F(FaultToleranceTest, SchedulerFailover)
 
 TEST_F(FaultToleranceTest, FrameworkReliableRegistration)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   Clock::pause();
 
   PID<Master> master = local::launch(1, 2, 1 * Gigabyte, 1 * Gigabyte, false);
@@ -775,8 +767,6 @@ TEST_F(FaultToleranceTest, FrameworkReliableRegistration)
 
 TEST_F(FaultToleranceTest, FrameworkReregister)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   PID<Master> master = local::launch(1, 2, 1 * Gigabyte, 1 * Gigabyte, false);
 
   MockScheduler sched;
@@ -828,8 +818,6 @@ TEST_F(FaultToleranceTest, FrameworkReregister)
 
 TEST_F(FaultToleranceTest, TaskLost)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   HierarchicalDRFAllocatorProcess allocator;
   Allocator a(&allocator);
   Files files;
@@ -906,8 +894,6 @@ TEST_F(FaultToleranceTest, TaskLost)
 // retried status update.
 TEST_F(FaultToleranceTest, SchedulerFailoverStatusUpdate)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   Clock::pause();
 
   HierarchicalDRFAllocatorProcess allocator;
@@ -1025,8 +1011,6 @@ TEST_F(FaultToleranceTest, SchedulerFailoverStatusUpdate)
 
 TEST_F(FaultToleranceTest, ForwardStatusUpdateUnknownExecutor)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   HierarchicalDRFAllocatorProcess allocator;
   Allocator a(&allocator);
   Files files;
@@ -1120,8 +1104,6 @@ TEST_F(FaultToleranceTest, ForwardStatusUpdateUnknownExecutor)
 
 TEST_F(FaultToleranceTest, SchedulerFailoverFrameworkMessage)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   HierarchicalDRFAllocatorProcess allocator;
   Allocator a(&allocator);
   Files files;
@@ -1228,8 +1210,6 @@ TEST_F(FaultToleranceTest, SchedulerFailoverFrameworkMessage)
 // This test checks that a scheduler exit shuts down the executor.
 TEST_F(FaultToleranceTest, SchedulerExit)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   HierarchicalDRFAllocatorProcess allocator;
   Allocator a(&allocator);
   Files files;
@@ -1305,8 +1285,6 @@ TEST_F(FaultToleranceTest, SchedulerExit)
 
 TEST_F(FaultToleranceTest, SlaveReliableRegistration)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   Clock::pause();
 
   HierarchicalDRFAllocatorProcess allocator;
@@ -1359,8 +1337,6 @@ TEST_F(FaultToleranceTest, SlaveReliableRegistration)
 
 TEST_F(FaultToleranceTest, SlaveReregisterOnZKExpiration)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   HierarchicalDRFAllocatorProcess allocator;
   Allocator a(&allocator);
   Files files;
@@ -1418,8 +1394,6 @@ TEST_F(FaultToleranceTest, SlaveReregisterOnZKExpiration)
 // TODO(vinod): Use 'Cluster' abstraction.
 TEST_F(FaultToleranceTest, ConsolidateTasksOnSlaveReregistration)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   HierarchicalDRFAllocatorProcess allocator;
   Allocator a(&allocator);
   Files files;

http://git-wip-us.apache.org/repos/asf/incubator-mesos/blob/f5be4131/src/tests/gc_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/gc_tests.cpp b/src/tests/gc_tests.cpp
index 97d2685..949678c 100644
--- a/src/tests/gc_tests.cpp
+++ b/src/tests/gc_tests.cpp
@@ -253,8 +253,6 @@ class GarbageCollectorIntegrationTest : public MesosClusterTest {};
 
 TEST_F(GarbageCollectorIntegrationTest, Restart)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   Try<PID<Master> > master = cluster.masters.start();
   ASSERT_SOME(master);
 
@@ -354,8 +352,6 @@ TEST_F(GarbageCollectorIntegrationTest, Restart)
 
 TEST_F(GarbageCollectorIntegrationTest, ExitedFramework)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   Try<PID<Master> > master = cluster.masters.start();
   ASSERT_SOME(master);
 
@@ -453,8 +449,6 @@ TEST_F(GarbageCollectorIntegrationTest, ExitedFramework)
 
 TEST_F(GarbageCollectorIntegrationTest, ExitedExecutor)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   Try<PID<Master> > master = cluster.masters.start();
   ASSERT_SOME(master);
 
@@ -545,8 +539,6 @@ TEST_F(GarbageCollectorIntegrationTest, ExitedExecutor)
 
 TEST_F(GarbageCollectorIntegrationTest, DiskUsage)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   Try<PID<Master> > master = cluster.masters.start();
   ASSERT_SOME(master);
 
@@ -649,8 +641,6 @@ TEST_F(GarbageCollectorIntegrationTest, DiskUsage)
 // created by an old executor (with the same id).
 TEST_F(GarbageCollectorIntegrationTest, Unschedule)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   Try<PID<Master> > master = cluster.masters.start();
   ASSERT_SOME(master);
 

http://git-wip-us.apache.org/repos/asf/incubator-mesos/blob/f5be4131/src/tests/master_detector_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/master_detector_tests.cpp b/src/tests/master_detector_tests.cpp
index 521f027..3a7b3b4 100644
--- a/src/tests/master_detector_tests.cpp
+++ b/src/tests/master_detector_tests.cpp
@@ -65,8 +65,6 @@ class MasterDetectorTest : public MesosClusterTest {};
 
 TEST_F(MasterDetectorTest, File)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   Try<PID<Master> > master = cluster.masters.start();
   ASSERT_SOME(master);
 

http://git-wip-us.apache.org/repos/asf/incubator-mesos/blob/f5be4131/src/tests/master_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/master_tests.cpp b/src/tests/master_tests.cpp
index fe823f6..f99157e 100644
--- a/src/tests/master_tests.cpp
+++ b/src/tests/master_tests.cpp
@@ -77,8 +77,6 @@ class MasterTest : public MesosClusterTest {};
 
 TEST_F(MasterTest, TaskRunning)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   Try<PID<Master> > master = cluster.masters.start();
   ASSERT_SOME(master);
 
@@ -152,8 +150,6 @@ TEST_F(MasterTest, TaskRunning)
 
 TEST_F(MasterTest, ShutdownFrameworkWhileTaskRunning)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   Try<PID<Master> > master = cluster.masters.start();
   ASSERT_SOME(master);
 
@@ -229,8 +225,6 @@ TEST_F(MasterTest, ShutdownFrameworkWhileTaskRunning)
 
 TEST_F(MasterTest, KillTask)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   Try<PID<Master> > master = cluster.masters.start();
   ASSERT_SOME(master);
 
@@ -309,8 +303,6 @@ TEST_F(MasterTest, KillTask)
 
 TEST_F(MasterTest, StatusUpdateAck)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   Try<PID<Master> > master = cluster.masters.start();
   ASSERT_SOME(master);
 
@@ -381,8 +373,6 @@ TEST_F(MasterTest, StatusUpdateAck)
 
 TEST_F(MasterTest, RecoverResources)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   Try<PID<Master> > master = cluster.masters.start();
   ASSERT_SOME(master);
 
@@ -504,8 +494,6 @@ TEST_F(MasterTest, RecoverResources)
 
 TEST_F(MasterTest, FrameworkMessage)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   Try<PID<Master> > master = cluster.masters.start();
   ASSERT_SOME(master);
 
@@ -590,8 +578,6 @@ TEST_F(MasterTest, FrameworkMessage)
 
 TEST_F(MasterTest, MultipleExecutors)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   Try<PID<Master> > master = cluster.masters.start();
   ASSERT_SOME(master);
 
@@ -708,8 +694,6 @@ TEST_F(MasterTest, MultipleExecutors)
 
 TEST_F(MasterTest, ShutdownUnregisteredExecutor)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   Try<PID<Master> > master = cluster.masters.start();
   ASSERT_SOME(master);
 
@@ -793,8 +777,6 @@ TEST_F(MasterTest, ShutdownUnregisteredExecutor)
 
 TEST_F(MasterTest, MasterInfo)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   Try<PID<Master> > master = cluster.masters.start();
   ASSERT_SOME(master);
 
@@ -826,8 +808,6 @@ TEST_F(MasterTest, MasterInfo)
 
 TEST_F(MasterTest, MasterInfoOnReElection)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   Try<PID<Master> > master = cluster.masters.start();
   ASSERT_SOME(master);
 
@@ -895,8 +875,6 @@ protected:
 
 TEST_F(WhitelistTest, WhitelistSlave)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   // Add some hosts to the white list.
   Try<string> hostname = os::hostname();
   ASSERT_SOME(hostname);
@@ -934,8 +912,6 @@ TEST_F(WhitelistTest, WhitelistSlave)
 
 TEST_F(MasterTest, MasterLost)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   Try<PID<Master> > master = cluster.masters.start();
   ASSERT_SOME(master);
 

http://git-wip-us.apache.org/repos/asf/incubator-mesos/blob/f5be4131/src/tests/reaper_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/reaper_tests.cpp b/src/tests/reaper_tests.cpp
index 0809c1f..c1fc1c3 100644
--- a/src/tests/reaper_tests.cpp
+++ b/src/tests/reaper_tests.cpp
@@ -44,8 +44,6 @@ using testing::DoDefault;
 // This test checks that the Reaper can monitor a non-child process.
 TEST(ReaperTest, NonChildProcess)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   // Use pipes to determine the pid of the grand child process.
   int pipes[2];
   ASSERT_NE(-1, pipe(pipes));

http://git-wip-us.apache.org/repos/asf/incubator-mesos/blob/f5be4131/src/tests/resource_offers_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/resource_offers_tests.cpp b/src/tests/resource_offers_tests.cpp
index 5e53a89..0be5497 100644
--- a/src/tests/resource_offers_tests.cpp
+++ b/src/tests/resource_offers_tests.cpp
@@ -53,8 +53,6 @@ using testing::Return;
 
 TEST(ResourceOffersTest, ResourceOfferWithMultipleSlaves)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   PID<Master> master = local::launch(10, 2, 1 * Gigabyte, 1 * Gigabyte, false);
 
   MockScheduler sched;
@@ -87,8 +85,6 @@ TEST(ResourceOffersTest, ResourceOfferWithMultipleSlaves)
 
 TEST(ResourceOffersTest, TaskUsesNoResources)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   PID<Master> master = local::launch(1, 2, 1 * Gigabyte, 1 * Gigabyte, false);
 
   MockScheduler sched;
@@ -137,8 +133,6 @@ TEST(ResourceOffersTest, TaskUsesNoResources)
 
 TEST(ResourceOffersTest, TaskUsesInvalidResources)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   PID<Master> master = local::launch(1, 2, 1 * Gigabyte, 1 * Gigabyte, false);
 
   MockScheduler sched;
@@ -192,8 +186,6 @@ TEST(ResourceOffersTest, TaskUsesInvalidResources)
 
 TEST(ResourceOffersTest, TaskUsesMoreResourcesThanOffered)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   PID<Master> master = local::launch(1, 2, 1 * Gigabyte, 1 * Gigabyte, false);
 
   MockScheduler sched;
@@ -248,7 +240,6 @@ TEST(ResourceOffersTest, TaskUsesMoreResourcesThanOffered)
 
 TEST(ResourceOffersTest, ResourcesGetReofferedAfterFrameworkStops)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
 
   PID<Master> master = local::launch(1, 2, 1 * Gigabyte, 1 * Gigabyte, false);
 
@@ -292,8 +283,6 @@ TEST(ResourceOffersTest, ResourcesGetReofferedAfterFrameworkStops)
 
 TEST(ResourceOffersTest, ResourcesGetReofferedWhenUnused)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   PID<Master> master = local::launch(1, 2, 1 * Gigabyte, 1 * Gigabyte, false);
 
   MockScheduler sched1;
@@ -340,8 +329,6 @@ TEST(ResourceOffersTest, ResourcesGetReofferedWhenUnused)
 
 TEST(ResourceOffersTest, ResourcesGetReofferedAfterTaskInfoError)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   PID<Master> master = local::launch(1, 2, 1 * Gigabyte, 1 * Gigabyte, false);
 
   MockScheduler sched1;
@@ -424,8 +411,6 @@ TEST(ResourceOffersTest, ResourcesGetReofferedAfterTaskInfoError)
 
 TEST(ResourceOffersTest, Request)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   Cluster cluster;
 
   MockAllocatorProcess<HierarchicalDRFAllocatorProcess> allocator;
@@ -484,8 +469,6 @@ class MultipleExecutorsTest : public MesosClusterTest {};
 
 TEST_F(MultipleExecutorsTest, TasksExecutorInfoDiffers)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   Try<PID<Master> > master = cluster.masters.start();
   ASSERT_SOME(master);
 

http://git-wip-us.apache.org/repos/asf/incubator-mesos/blob/f5be4131/src/tests/slave_recovery_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/slave_recovery_tests.cpp b/src/tests/slave_recovery_tests.cpp
index d963ce1..fd6b9ac 100644
--- a/src/tests/slave_recovery_tests.cpp
+++ b/src/tests/slave_recovery_tests.cpp
@@ -132,8 +132,6 @@ public:
   {
     IsolatorTest<T>::SetUp();
 
-    ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
     a = new Allocator(&allocator);
     m = new Master(a, &files);
     master = process::spawn(m);

http://git-wip-us.apache.org/repos/asf/incubator-mesos/blob/f5be4131/src/tests/status_update_manager_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/status_update_manager_tests.cpp b/src/tests/status_update_manager_tests.cpp
index e375898..042201a 100644
--- a/src/tests/status_update_manager_tests.cpp
+++ b/src/tests/status_update_manager_tests.cpp
@@ -90,8 +90,6 @@ class StatusUpdateManagerTest: public MesosClusterTest {};
 
 TEST_F(StatusUpdateManagerTest, CheckpointStatusUpdate)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   Try<PID<Master> > master = cluster.masters.start();
   ASSERT_SOME(master);
 
@@ -193,8 +191,6 @@ TEST_F(StatusUpdateManagerTest, CheckpointStatusUpdate)
 
 TEST_F(StatusUpdateManagerTest, RetryStatusUpdate)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   Try<PID<Master> > master = cluster.masters.start();
   ASSERT_SOME(master);
 
@@ -272,8 +268,6 @@ TEST_F(StatusUpdateManagerTest, RetryStatusUpdate)
 // duplicate ACK is for a retried update.
 TEST_F(StatusUpdateManagerTest, IgnoreDuplicateStatusUpdateAck)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   Try<PID<Master> > master = cluster.masters.start();
   ASSERT_SOME(master);
 
@@ -394,8 +388,6 @@ TEST_F(StatusUpdateManagerTest, IgnoreDuplicateStatusUpdateAck)
 // for the original update and sending a random ACK to the slave.
 TEST_F(StatusUpdateManagerTest, IgnoreUnexpectedStatusUpdateAck)
 {
-  ASSERT_TRUE(GTEST_IS_THREADSAFE);
-
   Try<PID<Master> > master = cluster.masters.start();
   ASSERT_SOME(master);