Repository: mesos Updated Branches: refs/heads/master e14c9f7e5 -> f6b018502
Ensured agent is recovered in SlaveEndpointTests. The tests in this case did either assume that e.g., requests for agent endpoints could always reliably be satisfied by a not yet fully recovered agent, or did not explicitly observe the recovery and instead relied on just settling the clock. Make sure agents are actually fully recovered, even if not strictly required right now. Also actually observe agent recovery calls like done elsewhere. Review: https://reviews.apache.org/r/52818/ Project: http://git-wip-us.apache.org/repos/asf/mesos/repo Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/f6b01850 Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/f6b01850 Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/f6b01850 Branch: refs/heads/master Commit: f6b0185024e72b927bc75cfcf0a64c0805ee1b89 Parents: e14c9f7 Author: Benjamin Bannier <benjamin.bann...@mesosphere.io> Authored: Fri Oct 21 09:16:04 2016 -0700 Committer: Anand Mazumdar <an...@apache.org> Committed: Fri Oct 21 09:16:04 2016 -0700 ---------------------------------------------------------------------- src/tests/slave_authorization_tests.cpp | 31 ++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/mesos/blob/f6b01850/src/tests/slave_authorization_tests.cpp ---------------------------------------------------------------------- diff --git a/src/tests/slave_authorization_tests.cpp b/src/tests/slave_authorization_tests.cpp index 6bd2aa9..b579ee9 100644 --- a/src/tests/slave_authorization_tests.cpp +++ b/src/tests/slave_authorization_tests.cpp @@ -293,11 +293,15 @@ TYPED_TEST(SlaveAuthorizerTest, ViewFlags) StandaloneMasterDetector detector; + Future<Nothing> recover = FUTURE_DISPATCH(_, &Slave::__recover); + Try<Owned<cluster::Slave>> agent = this->StartSlave(&detector, authorizer.get()); ASSERT_SOME(agent); + AWAIT_READY(recover); + // Ensure that the slave has finished recovery. Clock::pause(); Clock::settle(); @@ -392,9 +396,18 @@ TEST_P(SlaveEndpointTest, AuthorizedRequest) MockAuthorizer mockAuthorizer; + Future<Nothing> recover = FUTURE_DISPATCH(_, &Slave::__recover); + Try<Owned<cluster::Slave>> agent = StartSlave(&detector, &mockAuthorizer); ASSERT_SOME(agent); + AWAIT_READY(recover); + + // Ensure that the slave has finished recovery. + Clock::pause(); + Clock::settle(); + Clock::resume(); + Future<authorization::Request> request; EXPECT_CALL(mockAuthorizer, authorized(_)) .WillOnce(DoAll(FutureArg<0>(&request), @@ -433,9 +446,18 @@ TEST_P(SlaveEndpointTest, UnauthorizedRequest) MockAuthorizer mockAuthorizer; + Future<Nothing> recover = FUTURE_DISPATCH(_, &Slave::__recover); + Try<Owned<cluster::Slave>> agent = StartSlave(&detector, &mockAuthorizer); ASSERT_SOME(agent); + AWAIT_READY(recover); + + // Ensure that the slave has finished recovery. + Clock::pause(); + Clock::settle(); + Clock::resume(); + EXPECT_CALL(mockAuthorizer, authorized(_)) .WillOnce(Return(false)); @@ -458,9 +480,18 @@ TEST_P(SlaveEndpointTest, NoAuthorizer) StandaloneMasterDetector detector; + Future<Nothing> recover = FUTURE_DISPATCH(_, &Slave::__recover); + Try<Owned<cluster::Slave>> agent = StartSlave(&detector, CreateSlaveFlags()); ASSERT_SOME(agent); + AWAIT_READY(recover); + + // Ensure that the slave has finished recovery. + Clock::pause(); + Clock::settle(); + Clock::resume(); + Future<Response> response = http::get( agent.get()->pid, endpoint,