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 2016/12/02 21:29:09 UTC

[02/10] mesos git commit: Improved TeardownTest.Success.

Improved TeardownTest.Success.

Check that when a framework is shutdown, this is appropriately reflected
in the content of the master's "/state" endpoint.

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


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

Branch: refs/heads/master
Commit: 4b9dd048fda7fa10b40e289435cc5376b77375a2
Parents: b83add1
Author: Neil Conway <ne...@gmail.com>
Authored: Fri Dec 2 13:28:00 2016 -0800
Committer: Vinod Kone <vi...@gmail.com>
Committed: Fri Dec 2 13:28:00 2016 -0800

----------------------------------------------------------------------
 src/tests/teardown_tests.cpp | 49 +++++++++++++++++++++++++++++++++------
 1 file changed, 42 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mesos/blob/4b9dd048/src/tests/teardown_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/teardown_tests.cpp b/src/tests/teardown_tests.cpp
index b14816f..125e180 100644
--- a/src/tests/teardown_tests.cpp
+++ b/src/tests/teardown_tests.cpp
@@ -77,14 +77,49 @@ TEST_F(TeardownTest, Success)
 
   AWAIT_READY(frameworkId);
 
-  Future<Response> response = process::http::post(
-      master.get()->pid,
-      "teardown",
-      createBasicAuthHeaders(DEFAULT_CREDENTIAL),
-      "frameworkId=" + frameworkId.get().value());
+  {
+    Future<Response> response = process::http::post(
+        master.get()->pid,
+        "teardown",
+        createBasicAuthHeaders(DEFAULT_CREDENTIAL),
+        "frameworkId=" + frameworkId.get().value());
 
-  AWAIT_READY(response);
-  AWAIT_EXPECT_RESPONSE_STATUS_EQ(OK().status, response);
+    AWAIT_READY(response);
+    AWAIT_EXPECT_RESPONSE_STATUS_EQ(OK().status, response);
+  }
+
+  // Check that the framework that was shutdown appears in the
+  // "completed_frameworks" list in the master's "/state" endpoint.
+  {
+    Future<Response> response = process::http::get(
+        master.get()->pid,
+        "state",
+        None(),
+        createBasicAuthHeaders(DEFAULT_CREDENTIAL));
+
+    AWAIT_EXPECT_RESPONSE_STATUS_EQ(OK().status, response);
+    AWAIT_EXPECT_RESPONSE_HEADER_EQ(APPLICATION_JSON, "Content-Type", response);
+
+    Try<JSON::Object> parse = JSON::parse<JSON::Object>(response.get().body);
+    ASSERT_SOME(parse);
+
+    JSON::Array frameworks = parse->values["frameworks"].as<JSON::Array>();
+
+    EXPECT_TRUE(frameworks.values.empty());
+
+    JSON::Array completedFrameworks =
+      parse->values["completed_frameworks"].as<JSON::Array>();
+
+    ASSERT_EQ(1u, completedFrameworks.values.size());
+
+    JSON::Object completedFramework =
+      completedFrameworks.values.front().as<JSON::Object>();
+
+    JSON::String completedFrameworkId =
+      completedFramework.values["id"].as<JSON::String>();
+
+    EXPECT_EQ(frameworkId.get(), completedFrameworkId.value);
+  }
 
   driver.stop();
   driver.join();