예제 #1
0
        public void CAAOutputTest()
        {
            DnsZoneFile zone = new DnsZoneFile();

            CAAResourceRecord testRecord = new CAAResourceRecord();

            testRecord.Name  = "example.com";
            testRecord.Class = "IN";
            testRecord.flag  = 0;
            testRecord.tag   = "iodef";
            testRecord.value = "letsencrypt.org";
            zone.Records.Add(testRecord);
            string sOutput = zone.ToString();

            Assert.AreEqual(";CAA records\r\nexample.com.\tIN\t\tCAA\t0\tiodef\t\"letsencrypt.org\"\t\r\n\r\n", sOutput);
        }
예제 #2
0
        public void OutputTest()
        {
            var zone = new DnsZoneFile();

            var record = new CAAResourceRecord {
                Name  = "example.com",
                Class = "IN",
                Flag  = 0,
                Tag   = "iodef",
                Value = "letsencrypt.org"
            };

            zone.Records.Add(record);
            string sOutput = zone.ToString();

            Assert.AreEqual(";CAA records\r\nexample.com.\tIN\t\tCAA\t0\tiodef\t\"letsencrypt.org\"\t\r\n\r\n", sOutput);
        }
예제 #3
0
        public void FormatTest()
        {
            var zone = new DnsZoneFile();

            zone.Records.Add(new AResourceRecord {
                Name    = "www.example.com",
                Class   = "IN",
                Ttl     = TimeSpan.FromMinutes(15),
                Address = IPAddress.Parse("127.0.0.1")
            });
            zone.Records.Add(new AResourceRecord {
                Name    = "ftp.example.com",
                Class   = "IN",
                Ttl     = TimeSpan.FromMinutes(15),
                Address = IPAddress.Parse("127.0.0.1")
            });
            Assert.IsNotNull(zone.ToString());
        }
예제 #4
0
        public void OutputTest()
        {
            var zone = new DnsZoneFile();

            var record = new SSHFPResourceRecord
            {
                Name            = "sil.example.com",
                Class           = "IN",
                AlgorithmNumber = 3,
                FingerprintType = 1,
                Fingerprint     = @"450c7d19d5da9a3a5b7c19992d1fbde15d8dad34"
            };

            zone.Records.Add(record);
            string sOutput = zone.ToString();

            Assert.AreEqual(";SSHFP records\r\nsil.example.com.\tIN\t\tSSHFP\t3\t1\t450c7d19d5da9a3a5b7c19992d1fbde15d8dad34\t\r\n\r\n", sOutput);
        }
예제 #5
0
        public void OutputTest()
        {
            var zone = new DnsZoneFile();

            var record = new TLSAResourceRecord {
                Name                       = "_443._tcp.sil.example.com",
                Class                      = "IN",
                CertificateUsage           = 3,
                Selector                   = 1,
                MatchingType               = 2,
                CertificateAssociationData = @"dd5f45b479cc19e697c33c676161df9e6466a9a728584b1c881e18222f9ada31"
            };

            zone.Records.Add(record);
            string sOutput = zone.ToString();

            Assert.AreEqual(";TLSA records\r\n_443._tcp.sil.example.com.\tIN\t\tTLSA\t3\t1\t2\tdd5f45b479cc19e697c33c676161df9e6466a9a728584b1c881e18222f9ada31\t\r\n\r\n", sOutput);
        }
예제 #6
0
        public void NSLeadingWhitespaceError()
        {
            var zone = new DnsZoneFile();

            zone.Records.Add(new NsResourceRecord
            {
                Name       = "example.com",
                Class      = "IN",
                Ttl        = TimeSpan.FromMinutes(15),
                NameServer = "ns1.host.com"
            });
            zone.Records.Add(new NsResourceRecord
            {
                Name       = "example.com",
                Class      = "IN",
                Ttl        = TimeSpan.FromMinutes(15),
                NameServer = "ns2.host.com",
            });
            string sOutput = zone.ToString();

            Assert.AreEqual(";NS records\r\nexample.com.\tIN\t15m\tNS\tns1.host.com.\t\r\nexample.com.\tIN\t15m\tNS\tns2.host.com.\t\r\n\r\n", sOutput);
        }