This is an automated email from the ASF dual-hosted git repository.

mzhu pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/mesos.git

commit f9d473f36d9983e6d4cdc83e05bba770e5db3451
Author: Meng Zhu <[email protected]>
AuthorDate: Tue Mar 12 16:08:59 2019 -0700

    Improved `ResourceQuantities` test's readability.
    
    Review: https://reviews.apache.org/r/70069
---
 src/tests/resource_quantities_tests.cpp | 72 +++++++++++++--------------------
 1 file changed, 28 insertions(+), 44 deletions(-)

diff --git a/src/tests/resource_quantities_tests.cpp 
b/src/tests/resource_quantities_tests.cpp
index 192f1ee..7e9819d 100644
--- a/src/tests/resource_quantities_tests.cpp
+++ b/src/tests/resource_quantities_tests.cpp
@@ -38,31 +38,37 @@ namespace internal {
 namespace tests {
 
 
+static vector<pair<string, double>> toVector(
+  const ResourceQuantities& quantities)
+{
+  vector<pair<string, double>> result;
+
+  foreach (auto&& quantity, quantities) {
+    result.push_back(std::make_pair(quantity.first, quantity.second.value()));
+  }
+
+  return result;
+}
+
+
 TEST(QuantitiesTest, FromStringValid)
 {
   // A single resource.
   ResourceQuantities resourceQuantities =
     CHECK_NOTERROR(ResourceQuantities::fromString("cpus:10"));
-  EXPECT_EQ(1u, resourceQuantities.size());
-  EXPECT_EQ("cpus", resourceQuantities.begin()->first);
-  EXPECT_DOUBLE_EQ(10, resourceQuantities.begin()->second.value());
+  vector<pair<string, double>> expected = {{"cpus", 10}};
+  EXPECT_EQ(expected, toVector(resourceQuantities));
 
   resourceQuantities =
     CHECK_NOTERROR(ResourceQuantities::fromString("cpus:3.14"));
-  EXPECT_EQ(1u, resourceQuantities.size());
-  EXPECT_EQ("cpus", resourceQuantities.begin()->first);
-  EXPECT_DOUBLE_EQ(3.14, resourceQuantities.begin()->second.value());
+  expected = {{"cpus", 3.14}};
+  EXPECT_EQ(expected, toVector(resourceQuantities));
 
   // Whitespace is trimmed.
   resourceQuantities =
     CHECK_NOTERROR(ResourceQuantities::fromString(" cpus : 3.14 ; disk : 10 
"));
-  EXPECT_EQ(2u, resourceQuantities.size());
-  auto it = resourceQuantities.begin();
-  EXPECT_EQ("cpus", it->first);
-  EXPECT_DOUBLE_EQ(3.14, it->second.value());
-  ++it;
-  EXPECT_EQ("disk", it->first);
-  EXPECT_DOUBLE_EQ(10, it->second.value());
+  expected = {{"cpus", 3.14}, {"disk", 10}};
+  EXPECT_EQ(expected, toVector(resourceQuantities));
 
   // Zero value.
   resourceQuantities = 
CHECK_NOTERROR(ResourceQuantities::fromString("cpus:0"));
@@ -71,35 +77,20 @@ TEST(QuantitiesTest, FromStringValid)
   // Two resources.
   resourceQuantities =
     CHECK_NOTERROR(ResourceQuantities::fromString("cpus:10.5;ports:1"));
-  EXPECT_EQ(2u, resourceQuantities.size());
-  it = resourceQuantities.begin();
-  EXPECT_EQ("cpus", it->first);
-  EXPECT_DOUBLE_EQ(10.5, it->second.value());
-  ++it;
-  EXPECT_EQ("ports", it->first);
-  EXPECT_DOUBLE_EQ(1, it->second.value());
+  expected = {{"cpus", 10.5}, {"ports", 1}};
+  EXPECT_EQ(expected, toVector(resourceQuantities));
 
   // Two resources with names out of alphabetical order.
   resourceQuantities =
     CHECK_NOTERROR(ResourceQuantities::fromString("ports:3;cpus:10.5"));
-  EXPECT_EQ(2u, resourceQuantities.size());
-  it = resourceQuantities.begin();
-  EXPECT_EQ("cpus", it->first);
-  EXPECT_DOUBLE_EQ(10.5, it->second.value());
-  ++it;
-  EXPECT_EQ("ports", it->first);
-  EXPECT_DOUBLE_EQ(3, it->second.value());
+  expected = {{"cpus", 10.5}, {"ports", 3}};
+  EXPECT_EQ(expected, toVector(resourceQuantities));
 
   // Duplicate resource names.
   resourceQuantities =
     CHECK_NOTERROR(ResourceQuantities::fromString("ports:3;cpus:1;cpus:10.5"));
-  EXPECT_EQ(2u, resourceQuantities.size());
-  it = resourceQuantities.begin();
-  EXPECT_EQ("cpus", it->first);
-  EXPECT_DOUBLE_EQ(11.5, it->second.value());
-  ++it;
-  EXPECT_EQ("ports", it->first);
-  EXPECT_DOUBLE_EQ(3, it->second.value());
+  expected = {{"cpus", 11.5}, {"ports", 3}};
+  EXPECT_EQ(expected, toVector(resourceQuantities));
 }
 
 
@@ -151,16 +142,9 @@ TEST(QuantitiesTest, FromScalarResources)
   // Result entries are ordered alphabetically.
   quantities = ResourceQuantities::fromScalarResources(
     CHECK_NOTERROR(Resources::parse("cpus:1;mem:512;disk:800")));
-  EXPECT_EQ(3u, quantities.size());
-  auto it = quantities.begin();
-  EXPECT_EQ("cpus", it->first);
-  EXPECT_DOUBLE_EQ(1, it->second.value());
-  ++it;
-  EXPECT_EQ("disk", it->first);
-  EXPECT_DOUBLE_EQ(800, it->second.value());
-  ++it;
-  EXPECT_EQ("mem", it->first);
-  EXPECT_DOUBLE_EQ(512, it->second.value());
+  vector<pair<string, double>> expected = {
+    {"cpus", 1}, {"disk", 800}, {"mem", 512}};
+  EXPECT_EQ(expected, toVector(quantities));
 }
 
 

Reply via email to