public void AAAAレコードの処理() { //setUp var sut = new RrDb(); //exercise var retName = RrDbTest.AddNamedCaLine(sut, "", "A.ROOT-SERVERS.NET. 3600000 AAAA 2001:503:BA3E::2:30"); //verify Assert.That(retName, Is.EqualTo("A.ROOT-SERVERS.NET.")); Assert.That(RrDbTest.Size(sut), Is.EqualTo(1)); //Aaaa Assert.That(print(RrDbTest.Get(sut, 0)), Is.EqualTo("Aaaa A.ROOT-SERVERS.NET. TTL=0 2001:503:ba3e::2:30")); //TTLは強制的に0になる }
public void NSレコードの処理() { //setUp var sut = new RrDb(); //exercise string retName = RrDbTest.AddNamedCaLine(sut, "", ". 3600000 IN NS A.ROOT-SERVERS.NET."); //verify Assert.That(retName, Is.EqualTo(".")); Assert.That(RrDbTest.Size(sut), Is.EqualTo(1)); //Ns Assert.That(print(RrDbTest.Get(sut, 0)), Is.EqualTo("Ns . TTL=0 A.ROOT-SERVERS.NET.")); //TTLは強制的に0になる }
public void Aレコードの処理() { //setUp var sut = new RrDb(); //exercise var retName = RrDbTest.AddNamedCaLine(sut, "", "A.ROOT-SERVERS.NET. 3600000 A 198.41.0.4"); //verify Assert.That(retName, Is.EqualTo("A.ROOT-SERVERS.NET.")); Assert.That(RrDbTest.Size(sut), Is.EqualTo(1)); //A Assert.That(print(RrDbTest.Get(sut, 0)), Is.EqualTo("A A.ROOT-SERVERS.NET. TTL=0 198.41.0.4")); //TTLは強制的に0になる }
public void 件数は4件になる() { //setUp var sut = new RrDb(); var expected = 5; //exercise RrDbTest.InitLocalHost(sut); var actual = RrDbTest.Size(sut); //verify Assert.That(actual, Is.EqualTo(expected)); }
public void 空白行は処理されない() { //setUp var sut = new RrDb(); //exercise var expected = 0; RrDbTest.AddNamedCaLine(sut, "", ""); var actual = RrDbTest.Size(sut); //verify Assert.That(actual, Is.EqualTo(expected)); }
public void CNAMEレコードを読み込んだ時_CNAMEが保存される() { //setUp var sut = new RrDb(); var oneDat = new OneDat(true, new[] { "3", "cname", "alias", "255.254.253.252", "0" }, _isSecret); //exercise RrDbTest.AddOneDat(sut, DomainName, oneDat); //verify Assert.That(RrDbTest.Size(sut), Is.EqualTo(1)); //Cname Assert.That(print(RrDbTest.Get(sut, 0)), Is.EqualTo("Cname alias.aaa.com. TTL=0 cname.aaa.com.")); }
public void 一リソースの追加_TTLが0以外の場合は上書きされる() { //setUp var sut = new RrDb(); //exercise var ttl = 10u; //最初のリソースはTTL=0以外 sut.Add(new RrA("domain", ttl, new Ip("1.2.3.4"))); sut.Add(new RrA("domain", 20, new Ip("1.2.3.4"))); //verify Assert.That(RrDbTest.Size(sut), Is.EqualTo(1)); //件数は1件になる Assert.That(RrDbTest.Get(sut, 0).Ttl, Is.EqualTo(20)); //TTLは後から追加した20になる }
public void AAAAレコードを読み込んだ時_AAAA及びPTRが保存される() { //setUp var sut = new RrDb(); var oneDat = new OneDat(true, new[] { "4", "www", "alias", "fe80::f509:c5be:437b:3bc5", "10" }, _isSecret); //exercise RrDbTest.AddOneDat(sut, DomainName, oneDat); //verify Assert.That(RrDbTest.Size(sut), Is.EqualTo(2)); //AAAA,PTR Assert.That(print(RrDbTest.Get(sut, 0)), Is.EqualTo("Aaaa www.aaa.com. TTL=0 fe80::f509:c5be:437b:3bc5")); Assert.That(print(RrDbTest.Get(sut, 1)), Is.EqualTo("Ptr 5.c.b.3.b.7.3.4.e.b.5.c.9.0.5.f.0.0.0.0.0.0.0.0.0.0.0.0.0.8.e.f.ip6.arpa. TTL=0 www.aaa.com.")); }
public void Aレコードを読み込んだ時_A及びPTRが保存される() { //setUp var sut = new RrDb(); var oneDat = new OneDat(true, new[] { "0", "www", "alias", "192.168.0.1", "10" }, _isSecret); //exercise RrDbTest.AddOneDat(sut, DomainName, oneDat); //verify Assert.That(RrDbTest.Size(sut), Is.EqualTo(2)); //A,PTR Assert.That(print(RrDbTest.Get(sut, 0)), Is.EqualTo("A www.aaa.com. TTL=0 192.168.0.1")); Assert.That(print(RrDbTest.Get(sut, 1)), Is.EqualTo("Ptr 1.0.168.192.in-addr.arpa. TTL=0 www.aaa.com.")); }
public void 異なるリソースの追加() { //setUp var sut = new RrDb(); var expected = 3; //全部で3件になる //exercise sut.Add(new RrA("domain", 10, new Ip("1.2.3.4"))); sut.Add(new RrA("domain", 10, new Ip("3.4.5.6"))); sut.Add(new RrNs("domain", 10, "ns")); var actual = RrDbTest.Size(sut); //verify Assert.That(actual, Is.EqualTo(expected)); }
public void NSレコードを読み込んだ時_NS_A及びPTRが保存される() { //setUp var sut = new RrDb(); var oneDat = new OneDat(true, new[] { "1", "ns", "alias", "111.3.255.0", "0" }, _isSecret); //exercise RrDbTest.AddOneDat(sut, DomainName, oneDat); //verify count Assert.That(RrDbTest.Size(sut), Is.EqualTo(3)); //NS,A,PTR Assert.That(print(RrDbTest.Get(sut, 0)), Is.EqualTo("Ns aaa.com. TTL=0 ns.aaa.com.")); Assert.That(print(RrDbTest.Get(sut, 1)), Is.EqualTo("A ns.aaa.com. TTL=0 111.3.255.0")); Assert.That(print(RrDbTest.Get(sut, 2)), Is.EqualTo("Ptr 0.255.3.111.in-addr.arpa. TTL=0 ns.aaa.com.")); }
public void MXレコードを読み込んだ時_MX_A及びPTRが保存される() { //setUp var sut = new RrDb(); var oneDat = new OneDat(true, new[] { "2", "smtp", "alias", "210.10.2.250", "15" }, _isSecret); //exercise RrDbTest.AddOneDat(sut, DomainName, oneDat); //verify Assert.That(RrDbTest.Size(sut), Is.EqualTo(3)); //MX,A,PTR Assert.That(print(RrDbTest.Get(sut, 0)), Is.EqualTo("Mx aaa.com. TTL=0 15 smtp.aaa.com.")); Assert.That(print(RrDbTest.Get(sut, 1)), Is.EqualTo("A smtp.aaa.com. TTL=0 210.10.2.250")); Assert.That(print(RrDbTest.Get(sut, 2)), Is.EqualTo("Ptr 250.2.10.210.in-addr.arpa. TTL=0 smtp.aaa.com.")); }
public void 重複する2つのリソースの追加() { //setUp var dat = new Dat(new CtrlType[5]); dat.Add(true, "0\twww\talias\t192.168.0.1\t10"); dat.Add(true, "0\twww\talias\t192.168.0.1\t10"); var sut = new RrDb(null, null, dat, "example.com", true); //(1)a www.example.com. 192.168.0.1 //(2)ptr 1.0.168.192.in.addr.ptr www.example.com. var expected = 2; //exercise var actual = RrDbTest.Size(sut); //verify Assert.That(actual, Is.EqualTo(expected)); }
public void 追加に成功したばあのSOAレコードの検証() { //setUp RrDb sut = new RrDb(); sut.Add(new RrNs("aaa.com.", 0, "ns.aaa.com.")); //exercise RrDbTest.InitSoa(sut, "aaa.com.", "*****@*****.**", 1, 2, 3, 4, 5); //verify Assert.That(RrDbTest.Size(sut), Is.EqualTo(2)); //NS及びSOAの2件になっている RrSoa o = (RrSoa)RrDbTest.Get(sut, 1); Assert.That(o.NameServer, Is.EqualTo("ns.aaa.com.")); Assert.That(o.PostMaster, Is.EqualTo("root.aaa.com.")); //変換が完了している(@=>. 最後に.追加) Assert.That(o.Serial, Is.EqualTo(1)); Assert.That(o.Refresh, Is.EqualTo(2)); Assert.That(o.Retry, Is.EqualTo(3)); Assert.That(o.Expire, Is.EqualTo(4)); Assert.That(o.Minimum, Is.EqualTo(5)); }
public void GetListを使用すると期限の切れたリソースが削除される() { //setUp var ttl = 1u; //TTL=1秒 var sut = new RrDb(null, null, null, "example.com", true); sut.Add(new RrA("www.example.com.", ttl, new Ip("1.1.1.1"))); sut.Add(new RrA("www.example.com.", ttl, new Ip("2.2.2.2"))); var expected = 0; TestUtil.WaitDisp("RrDb.getList()で期限切れリソースの削除を確認するため、TTL指定時間が経過するまで待機"); Thread.Sleep(2000); //2秒経過 //exercise sut.GetList("www.example.com.", DnsType.A); var actual = RrDbTest.Size(sut); //DBのサイズは0になっている //verify Assert.That(actual, Is.EqualTo(expected)); //TearDown TestUtil.WaitDisp(null); }