[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