Repository: mesos
Updated Branches:
  refs/heads/master 65e1712bc -> b175cfcdd


Added a helper testing functions for Labels.

Added createLabel(key, value) return a new "key":"value" Label.

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


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

Branch: refs/heads/master
Commit: 1afcf7c897442b3f7dae7f220620a9df1a9c34b4
Parents: 65e1712
Author: Kapil Arya <[email protected]>
Authored: Tue Jul 21 13:29:12 2015 -0700
Committer: Benjamin Hindman <[email protected]>
Committed: Tue Jul 21 13:29:15 2015 -0700

----------------------------------------------------------------------
 src/tests/hook_tests.cpp   | 14 +++-----
 src/tests/master_tests.cpp | 79 +++++++++--------------------------------
 src/tests/mesos.hpp        | 10 ++++++
 src/tests/slave_tests.cpp  | 52 ++++++---------------------
 4 files changed, 40 insertions(+), 115 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mesos/blob/1afcf7c8/src/tests/hook_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/hook_tests.cpp b/src/tests/hook_tests.cpp
index 09205fb..308ca9f 100644
--- a/src/tests/hook_tests.cpp
+++ b/src/tests/hook_tests.cpp
@@ -164,9 +164,8 @@ TEST_F(HookTest, VerifyMasterLaunchTaskHook)
 
   // Add label which will be removed by the hook.
   Labels* labels = task.mutable_labels();
-  Label* label = labels->add_labels();
-  label->set_key(testRemoveLabelKey);
-  label->set_value(testRemoveLabelValue);
+  labels->add_labels()->CopyFrom(createLabel(
+        testRemoveLabelKey, testRemoveLabelValue));
 
   vector<TaskInfo> tasks;
   tasks.push_back(task);
@@ -380,13 +379,8 @@ TEST_F(HookTest, VerifySlaveRunTaskHook)
   // available by the end of the launch task sequence when hooks are
   // used (to protect against hooks removing labels completely).
   Labels* labels = task.mutable_labels();
-  Label* label1 = labels->add_labels();
-  label1->set_key("foo");
-  label1->set_value("bar");
-
-  Label* label2 = labels->add_labels();
-  label2->set_key("bar");
-  label2->set_value("baz");
+  labels->add_labels()->CopyFrom(createLabel("foo", "bar"));
+  labels->add_labels()->CopyFrom(createLabel("bar", "baz"));
 
   vector<TaskInfo> tasks;
   tasks.push_back(task);

http://git-wip-us.apache.org/repos/asf/mesos/blob/1afcf7c8/src/tests/master_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/master_tests.cpp b/src/tests/master_tests.cpp
index 1e934c4..6bddc75 100644
--- a/src/tests/master_tests.cpp
+++ b/src/tests/master_tests.cpp
@@ -3061,17 +3061,9 @@ TEST_F(MasterTest, TaskLabels)
   // Add three labels to the task (two of which share the same key).
   Labels* labels = task.mutable_labels();
 
-  Label* label1 = labels->add_labels();
-  label1->set_key("foo");
-  label1->set_value("bar");
-
-  Label* label2 = labels->add_labels();
-  label2->set_key("bar");
-  label2->set_value("baz");
-
-  Label* label3 = labels->add_labels();
-  label3->set_key("bar");
-  label3->set_value("qux");
+  labels->add_labels()->CopyFrom(createLabel("foo", "bar"));
+  labels->add_labels()->CopyFrom(createLabel("bar", "baz"));
+  labels->add_labels()->CopyFrom(createLabel("bar", "qux"));
 
   vector<TaskInfo> tasks;
   tasks.push_back(task);
@@ -3117,38 +3109,13 @@ TEST_F(MasterTest, TaskLabels)
 
   JSON::Array labelsObject_ = labelsObject.get();
 
-  // Verify the content of 'foo:bar' pair.
-  Try<JSON::Value> expected = JSON::parse(
-      "{"
-      "  \"key\":\"foo\","
-      "  \"value\":\"bar\""
-      "}");
-
-  ASSERT_SOME(expected);
-  EXPECT_EQ(labelsObject_.values[0], expected.get());
-
-
-  // Verify the content of 'bar:baz' pair.
-  expected = JSON::parse(
-      "{"
-      "  \"key\":\"bar\","
-      "  \"value\":\"baz\""
-      "}");
-
-  ASSERT_SOME(expected);
-  EXPECT_EQ(labelsObject_.values[1], expected.get());
-
-
-  // Verify the content of 'bar:qux' pair.
-  expected = JSON::parse(
-      "{"
-      "  \"key\":\"bar\","
-      "  \"value\":\"qux\""
-      "}");
-
-  ASSERT_SOME(expected);
-  EXPECT_EQ(labelsObject_.values[2], expected.get());
-
+  // Verify the contents of 'foo:bar', 'bar:baz', and 'bar:qux' pairs.
+  EXPECT_EQ(labelsObject_.values[0],
+            JSON::Value(JSON::Protobuf(createLabel("foo", "bar"))));
+  EXPECT_EQ(labelsObject_.values[1],
+            JSON::Value(JSON::Protobuf(createLabel("bar", "baz"))));
+  EXPECT_EQ(labelsObject_.values[2],
+            JSON::Value(JSON::Protobuf(createLabel("bar", "qux"))));
 
   EXPECT_CALL(exec, shutdown(_))
     .Times(AtMost(1));
@@ -3273,12 +3240,8 @@ TEST_F(MasterTest, TaskDiscoveryInfo)
 
   // Add two labels to the discovery info.
   Labels* labels = info->mutable_labels();
-  Label* label1 = labels->add_labels();
-  label1->set_key("clearance");
-  label1->set_value("high");
-  Label* label2 = labels->add_labels();
-  label2->set_key("RPC");
-  label2->set_value("yes");
+  labels->add_labels()->CopyFrom(createLabel("clearance", "high"));
+  labels->add_labels()->CopyFrom(createLabel("RPC", "yes"));
 
   vector<TaskInfo> tasks;
   tasks.push_back(task);
@@ -3387,22 +3350,12 @@ TEST_F(MasterTest, TaskDiscoveryInfo)
   EXPECT_EQ(2u, labelsArray_.values.size());
 
   // Verify the content of 'clearance:high' pair.
-  expected = JSON::parse(
-      "{"
-      "  \"key\":\"clearance\","
-      "  \"value\":\"high\""
-      "}");
-  ASSERT_SOME(expected);
-  EXPECT_EQ(expected.get(), labelsArray_.values[0]);
+  EXPECT_EQ(labelsArray_.values[0],
+            JSON::Value(JSON::Protobuf(createLabel("clearance", "high"))));
 
   // Verify the content of 'RPC:yes' pair.
-  expected = JSON::parse(
-      "{"
-      "  \"key\":\"RPC\","
-      "  \"value\":\"yes\""
-      "}");
-  ASSERT_SOME(expected);
-  EXPECT_EQ(expected.get(), labelsArray_.values[1]);
+  EXPECT_EQ(labelsArray_.values[1],
+            JSON::Value(JSON::Protobuf(createLabel("RPC", "yes"))));
 
   EXPECT_CALL(exec, shutdown(_))
     .Times(AtMost(1));

http://git-wip-us.apache.org/repos/asf/mesos/blob/1afcf7c8/src/tests/mesos.hpp
----------------------------------------------------------------------
diff --git a/src/tests/mesos.hpp b/src/tests/mesos.hpp
index 23d9841..f14b8f7 100644
--- a/src/tests/mesos.hpp
+++ b/src/tests/mesos.hpp
@@ -46,6 +46,7 @@
 #include <stout/bytes.hpp>
 #include <stout/foreach.hpp>
 #include <stout/gtest.hpp>
+#include <stout/json.hpp>
 #include <stout/lambda.hpp>
 #include <stout/none.hpp>
 #include <stout/option.hpp>
@@ -1443,6 +1444,15 @@ void ExpectNoFutureUnionProtobufs(
 // StatusUpdate came from the corresponding task.
 MATCHER_P(TaskStatusEq, task, "") { return arg.task_id() == task.task_id(); }
 
+
+inline Label createLabel(const std::string& key, const std::string& value)
+{
+  Label label;
+  label.set_key(key);
+  label.set_value(value);
+  return label;
+}
+
 } // namespace tests {
 } // namespace internal {
 } // namespace mesos {

http://git-wip-us.apache.org/repos/asf/mesos/blob/1afcf7c8/src/tests/slave_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/slave_tests.cpp b/src/tests/slave_tests.cpp
index a16e4f4..7266cf1 100644
--- a/src/tests/slave_tests.cpp
+++ b/src/tests/slave_tests.cpp
@@ -2076,17 +2076,9 @@ TEST_F(SlaveTest, TaskLabels)
   // Add three labels to the task (two of which share the same key).
   Labels* labels = task.mutable_labels();
 
-  Label* label1 = labels->add_labels();
-  label1->set_key("foo");
-  label1->set_value("bar");
-
-  Label* label2 = labels->add_labels();
-  label2->set_key("bar");
-  label2->set_value("baz");
-
-  Label* label3 = labels->add_labels();
-  label3->set_key("bar");
-  label3->set_value("qux");
+  labels->add_labels()->CopyFrom(createLabel("foo", "bar"));
+  labels->add_labels()->CopyFrom(createLabel("bar", "baz"));
+  labels->add_labels()->CopyFrom(createLabel("bar", "qux"));
 
   vector<TaskInfo> tasks;
   tasks.push_back(task);
@@ -2132,37 +2124,13 @@ TEST_F(SlaveTest, TaskLabels)
 
   JSON::Array labelsObject_ = labelsObject.get();
 
-  // Verify the content of 'foo:bar' pair.
-  Try<JSON::Value> expected = JSON::parse(
-      "{"
-      "  \"key\":\"foo\","
-      "  \"value\":\"bar\""
-      "}");
-
-  ASSERT_SOME(expected);
-  EXPECT_EQ(labelsObject_.values[0], expected.get());
-
-
-  // Verify the content of 'bar:baz' pair.
-  expected = JSON::parse(
-      "{"
-      "  \"key\":\"bar\","
-      "  \"value\":\"baz\""
-      "}");
-
-  ASSERT_SOME(expected);
-  EXPECT_EQ(labelsObject_.values[1], expected.get());
-
-
-  // Verify the content of 'bar:qux' pair.
-  expected = JSON::parse(
-      "{"
-      "  \"key\":\"bar\","
-      "  \"value\":\"qux\""
-      "}");
-
-  ASSERT_SOME(expected);
-  EXPECT_EQ(labelsObject_.values[2], expected.get());
+  // Verify the contents of 'foo:bar', 'bar:baz', and 'bar:qux' pairs.
+  EXPECT_EQ(labelsObject_.values[0],
+            JSON::Value(JSON::Protobuf(createLabel("foo", "bar"))));
+  EXPECT_EQ(labelsObject_.values[1],
+            JSON::Value(JSON::Protobuf(createLabel("bar", "baz"))));
+  EXPECT_EQ(labelsObject_.values[2],
+            JSON::Value(JSON::Protobuf(createLabel("bar", "qux"))));
 
   EXPECT_CALL(exec, shutdown(_))
     .Times(AtMost(1));

Reply via email to