You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by vi...@apache.org on 2015/09/25 01:49:26 UTC
mesos git commit: Fixed flaky Executor HTTP tests.
Repository: mesos
Updated Branches:
refs/heads/master 2c17e5642 -> 16159a1aa
Fixed flaky Executor HTTP tests.
Review: https://reviews.apache.org/r/38645
Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/16159a1a
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/16159a1a
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/16159a1a
Branch: refs/heads/master
Commit: 16159a1aa0a04821168572df19a50ef98b458fe5
Parents: 2c17e56
Author: Anand Mazumdar <ma...@gmail.com>
Authored: Thu Sep 24 16:48:58 2015 -0700
Committer: Vinod Kone <vi...@gmail.com>
Committed: Thu Sep 24 16:48:58 2015 -0700
----------------------------------------------------------------------
src/tests/executor_http_api_tests.cpp | 66 +++++++++++++++++++++++++-----
1 file changed, 56 insertions(+), 10 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/mesos/blob/16159a1a/src/tests/executor_http_api_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/executor_http_api_tests.cpp b/src/tests/executor_http_api_tests.cpp
index 9dbc519..c2c05f4 100644
--- a/src/tests/executor_http_api_tests.cpp
+++ b/src/tests/executor_http_api_tests.cpp
@@ -22,6 +22,7 @@
#include <mesos/http.hpp>
+#include <process/clock.hpp>
#include <process/future.hpp>
#include <process/gtest.hpp>
#include <process/http.hpp>
@@ -39,6 +40,7 @@ using mesos::internal::slave::Slave;
using mesos::v1::executor::Call;
+using process::Clock;
using process::Future;
using process::PID;
@@ -85,13 +87,17 @@ TEST_F(ExecutorHttpApiTest, NoContentType)
Try<PID<Master>> master = StartMaster();
ASSERT_SOME(master);
+ Future<Nothing> __recover = FUTURE_DISPATCH(_, &Slave::__recover);
+
Try<PID<Slave>> slave = StartSlave();
ASSERT_SOME(slave);
- // Wait for recovery to be complete.
- Future<Nothing> __recover = FUTURE_DISPATCH(_, &Slave::__recover);
AWAIT_READY(__recover);
+ // Wait for recovery to be complete.
+ Clock::pause();
+ Clock::settle();
+
Call call;
call.set_type(Call::MESSAGE);
@@ -119,12 +125,17 @@ TEST_F(ExecutorHttpApiTest, ValidJsonButInvalidProtobuf)
Try<PID<Master>> master = StartMaster();
ASSERT_SOME(master);
+ Future<Nothing> __recover = FUTURE_DISPATCH(_, &Slave::__recover);
+
Try<PID<Slave>> slave = StartSlave();
ASSERT_SOME(slave);
- Future<Nothing> __recover = FUTURE_DISPATCH(_, &Slave::__recover);
AWAIT_READY(__recover);
+ // Wait for recovery to be complete.
+ Clock::pause();
+ Clock::settle();
+
JSON::Object object;
object.values["string"] = "valid_json";
@@ -151,12 +162,17 @@ TEST_P(ExecutorHttpApiTest, MalformedContent)
Try<PID<Master>> master = StartMaster();
ASSERT_SOME(master);
+ Future<Nothing> __recover = FUTURE_DISPATCH(_, &Slave::__recover);
+
Try<PID<Slave>> slave = StartSlave();
ASSERT_SOME(slave);
- Future<Nothing> __recover = FUTURE_DISPATCH(_, &Slave::__recover);
AWAIT_READY(__recover);
+ // Wait for recovery to be complete.
+ Clock::pause();
+ Clock::settle();
+
const string body = "MALFORMED_CONTENT";
const ContentType contentType = GetParam();
@@ -183,12 +199,17 @@ TEST_P(ExecutorHttpApiTest, UnsupportedContentMediaType)
Try<PID<Master>> master = StartMaster();
ASSERT_SOME(master);
+ Future<Nothing> __recover = FUTURE_DISPATCH(_, &Slave::__recover);
+
Try<PID<Slave>> slave = StartSlave();
ASSERT_SOME(slave);
- Future<Nothing> __recover = FUTURE_DISPATCH(_, &Slave::__recover);
AWAIT_READY(__recover);
+ // Wait for recovery to be complete.
+ Clock::pause();
+ Clock::settle();
+
ContentType contentType = GetParam();
hashmap<string, string> headers;
headers["Accept"] = stringify(contentType);
@@ -221,12 +242,17 @@ TEST_P(ExecutorHttpApiTest, MessageFromUnknownFramework)
Try<PID<Master>> master = StartMaster();
ASSERT_SOME(master);
+ Future<Nothing> __recover = FUTURE_DISPATCH(_, &Slave::__recover);
+
Try<PID<Slave>> slave = StartSlave();
ASSERT_SOME(slave);
- Future<Nothing> __recover = FUTURE_DISPATCH(_, &Slave::__recover);
AWAIT_READY(__recover);
+ // Wait for recovery to be complete.
+ Clock::pause();
+ Clock::settle();
+
ContentType contentType = GetParam();
hashmap<string, string> headers;
headers["Accept"] = stringify(contentType);
@@ -258,12 +284,17 @@ TEST_F(ExecutorHttpApiTest, GetRequest)
Try<PID<Master>> master = StartMaster();
ASSERT_SOME(master);
+ Future<Nothing> __recover = FUTURE_DISPATCH(_, &Slave::__recover);
+
Try<PID<Slave>> slave = StartSlave();
ASSERT_SOME(slave);
- Future<Nothing> __recover = FUTURE_DISPATCH(_, &Slave::__recover);
AWAIT_READY(__recover);
+ // Wait for recovery to be complete.
+ Clock::pause();
+ Clock::settle();
+
Future<Response> response = process::http::get(
slave.get(),
"api/v1/executor");
@@ -283,12 +314,17 @@ TEST_P(ExecutorHttpApiTest, DefaultAccept)
Try<PID<Master>> master = StartMaster();
ASSERT_SOME(master);
+ Future<Nothing> __recover = FUTURE_DISPATCH(_, &Slave::__recover);
+
Try<PID<Slave>> slave = StartSlave();
ASSERT_SOME(slave);
- Future<Nothing> __recover = FUTURE_DISPATCH(_, &Slave::__recover);
AWAIT_READY(__recover);
+ // Wait for recovery to be complete.
+ Clock::pause();
+ Clock::settle();
+
hashmap<string, string> headers;
headers["Accept"] = "*/*";
@@ -324,12 +360,17 @@ TEST_P(ExecutorHttpApiTest, NoAcceptHeader)
Try<PID<Master>> master = StartMaster();
ASSERT_SOME(master);
+ Future<Nothing> __recover = FUTURE_DISPATCH(_, &Slave::__recover);
+
Try<PID<Slave>> slave = StartSlave();
ASSERT_SOME(slave);
- Future<Nothing> __recover = FUTURE_DISPATCH(_, &Slave::__recover);
AWAIT_READY(__recover);
+ // Wait for recovery to be complete.
+ Clock::pause();
+ Clock::settle();
+
// Retrieve the parameter passed as content type to this test.
const ContentType contentType = GetParam();
@@ -365,12 +406,17 @@ TEST_P(ExecutorHttpApiTest, NotAcceptable)
Try<PID<Master>> master = StartMaster();
ASSERT_SOME(master);
+ Future<Nothing> __recover = FUTURE_DISPATCH(_, &Slave::__recover);
+
Try<PID<Slave>> slave = StartSlave();
ASSERT_SOME(slave);
- Future<Nothing> __recover = FUTURE_DISPATCH(_, &Slave::__recover);
AWAIT_READY(__recover);
+ // Wait for recovery to be complete.
+ Clock::pause();
+ Clock::settle();
+
// Retrieve the parameter passed as content type to this test.
const ContentType contentType = GetParam();