[svn] commit: r958 - /branches/each-ds/src/lib/dns/cpp/hex_unittest.cc

BIND 10 source code commits bind10-changes at lists.isc.org
Thu Feb 25 05:16:41 UTC 2010


Author: jinmei
Date: Thu Feb 25 05:16:41 2010
New Revision: 958

Log:
added some suggested necessary tests (currently they don't pass)
with some minor cleanup

Modified:
    branches/each-ds/src/lib/dns/cpp/hex_unittest.cc

Modified: branches/each-ds/src/lib/dns/cpp/hex_unittest.cc
==============================================================================
--- branches/each-ds/src/lib/dns/cpp/hex_unittest.cc (original)
+++ branches/each-ds/src/lib/dns/cpp/hex_unittest.cc Thu Feb 25 05:16:41 2010
@@ -33,14 +33,14 @@
 class HexTest : public ::testing::Test {
 protected:
     HexTest() {}
-    static const std::string hex_txt;
 };
 
-const std::string HexTest::hex_txt("DEADBEEFDECADE");
+const std::string hex_txt("DEADBEEFDECADE");
+const std::string hex_txt_lower("deadbeefdecade");
 
 TEST_F(HexTest, encodeHex) {
-    std::vector<uint8_t>data;
-    std::string s;
+    std::vector<uint8_t> data;
+
     data.push_back(0xde);
     data.push_back(0xad);
     data.push_back(0xbe);
@@ -51,18 +51,32 @@
     EXPECT_EQ(hex_txt, encodeHex(data));
 }
 
+void
+compareData(const std::vector<uint8_t>& data)
+{
+    EXPECT_EQ(0xde, data[0]);
+    EXPECT_EQ(0xad, data[1]);
+    EXPECT_EQ(0xbe, data[2]);
+    EXPECT_EQ(0xef, data[3]);
+    EXPECT_EQ(0xde, data[4]);
+    EXPECT_EQ(0xca, data[5]);
+    EXPECT_EQ(0xde, data[6]);
+}
+
 TEST_F(HexTest, decodeHex) {
-    std::vector<uint8_t>result;
+    std::vector<uint8_t> result;
+
+    decodeHex(hex_txt, result);
+    compareData(result);
+
+    // lower case hex digits should be accepted
     result.clear();
-    decodeHex(hex_txt, result);
-    EXPECT_EQ(0xde, result[0]);
-    EXPECT_EQ(0xad, result[1]);
-    EXPECT_EQ(0xbe, result[2]);
-    EXPECT_EQ(0xef, result[3]);
-    EXPECT_EQ(0xde, result[4]);
-    EXPECT_EQ(0xca, result[5]);
-    EXPECT_EQ(0xde, result[6]);
+    decodeHex(hex_txt_lower, result);
+    compareData(result);
 
+    // Bogus input: should fail
+    result.clear();
+    decodeHex("1x", result);
 }
 
 }




More information about the bind10-changes mailing list