improve tests

This commit is contained in:
bert hubert
2018-04-13 21:25:59 +02:00
parent dd32361a94
commit b2c530f14e
2 changed files with 16 additions and 1 deletions

View File

@ -84,7 +84,10 @@ struct DNSName
auto size() { return d_name.size(); } auto size() { return d_name.size(); }
void clear() { d_name.clear(); } void clear() { d_name.clear(); }
bool makeRelative(const DNSName& root); bool makeRelative(const DNSName& root);
bool operator==(const DNSName& rhs) const
{
return std::lexicographical_compare(begin(), end(), rhs.begin(), rhs.end())==0;
}
std::deque<DNSLabel> d_name; std::deque<DNSLabel> d_name;
}; };

View File

@ -28,3 +28,15 @@ TEST_CASE( "DNSName escaping", "[escapes]" ) {
str<<test2; str<<test2;
REQUIRE(str.str() == "p\\000werdns.com."); REQUIRE(str.str() == "p\\000werdns.com.");
}; };
TEST_CASE("DNSName operations", "[dnsname]") {
DNSName test({"www", "powerdns", "org"}), test2;
test2 = test;
REQUIRE(test2 == test);
test.pop_back();
REQUIRE(test == DNSName({"www", "powerdns"}));
REQUIRE(test2.makeRelative({"org"}));
REQUIRE(test2 == DNSName({"www", "powerdns"}));
}