Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(360)

Unified Diff: net/dns/record_parsed_unittest.cc

Issue 15733008: Multicast DNS implementation (initial) (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@mdns_implementation2
Patch Set: Created 7 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: net/dns/record_parsed_unittest.cc
diff --git a/net/dns/record_parsed_unittest.cc b/net/dns/record_parsed_unittest.cc
index 593e553bf611fe5f7d3f4adc7775c0c6c21113f9..803b62c1b49c57d071469abf6069a8c305ff377d 100644
--- a/net/dns/record_parsed_unittest.cc
+++ b/net/dns/record_parsed_unittest.cc
@@ -52,6 +52,32 @@ TEST(RecordParsedTest, ParseSingleRecord) {
ASSERT_TRUE(record->IsEqual(record.get(), true));
}
+TEST(RecordParsedTest, Clone) {
+ DnsRecordParser parser(kT1ResponseDatagram, sizeof(kT1ResponseDatagram),
+ sizeof(dns_protocol::Header));
+ scoped_ptr<const RecordParsed> record;
+ const CnameRecordRdata* rdata;
+
+ parser.SkipQuestion();
+ record = RecordParsed::CreateFrom(&parser, base::Time());
+ EXPECT_TRUE(record.get() != NULL);
+
+ scoped_ptr<const RecordParsed> record2;
+ record2 = record->Clone();
+
+ record.reset();
+
+ ASSERT_EQ("codereview.chromium.org", record2->name());
+ ASSERT_EQ(dns_protocol::kTypeCNAME, record2->type());
+ ASSERT_EQ(dns_protocol::kClassIN, record2->klass());
+
+ rdata = record2->rdata<CnameRecordRdata>();
+ EXPECT_TRUE(rdata != NULL);
+ ASSERT_EQ(kT1CanonName, rdata->cname());
+
+ ASSERT_FALSE(record2->rdata<SrvRecordRdata>());
+}
+
TEST(RecordParsedTest, CacheFlushBitCompare) {
DnsRecordParser parser1(kT1ResponseDatagram, sizeof(kT1ResponseDatagram),
sizeof(dns_protocol::Header));
@@ -72,4 +98,4 @@ TEST(RecordParsedTest, CacheFlushBitCompare) {
EXPECT_TRUE(record2->IsEqual(record1.get(), true));
}
-} //namespace net
+} // namespace net
« net/dns/mdns_query.h ('K') | « net/dns/record_parsed.cc ('k') | net/dns/record_rdata.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698