public void A_AAAA_NS以外タイプは例外が発生する() { //setUp var sut = new RrDb(); //exercise RrDbTest.AddNamedCaLine(sut, "", ". 3600000 IN MX A.ROOT-SERVERS.NET."); }
public void AAAAタイプでアドレスに矛盾があると例外が発生する() { //setUp var sut = new RrDb(); //exercise RrDbTest.AddNamedCaLine(sut, "", "A.ROOT-SERVERS.NET. 3600000 AAAA 192.168.0.1"); }
public void DnsTypeが無い場合例外が発生する() { //setUp var sut = new RrDb(); //exercise RrDbTest.AddNamedCaLine(sut, "", ". 3600000 IN A.ROOT-SERVERS.NET."); }
public void AAAAタイプで不正なアドレスを指定すると例外が発生する() { //setUp var sut = new RrDb(); //exercise RrDbTest.AddNamedCaLine(sut, "", "A.ROOT-SERVERS.NET. 3600000 AAAA xxx"); }
public void DnsTypeの次のカラムのDataが無い場合例外が発生する() { //setUp var sut = new RrDb(); //exercise RrDbTest.AddNamedCaLine(sut, "", ". 3600000 IN NS"); }
public void 予め同一ドメインのNSレコードが無い場合失敗する_レコードが無い() { //setUp RrDb sut = new RrDb(); bool expected = false; //exercise bool actual = RrDbTest.InitSoa(sut, "aaa.com.", "mail.", 1, 2, 3, 4, 5); //verify Assert.That(actual, Is.EqualTo(expected)); }
public void 前補完_アットマークの場合ドメイン名になる() { //setUp var sut = new RrDb(); //exercise var expected = "example.com."; var actual = RrDbTest.AddNamedCaLine(sut, "", "@ 3600000 A 198.41.0.4"); //verify Assert.That(actual, Is.EqualTo(expected)); }
public void 前補完_最後にドットが無い場合_ドメイン名が補完される() { //setUp var sut = new RrDb(); //exercise var expected = "www.example.com."; var actual = RrDbTest.AddNamedCaLine(sut, "", "www 3600000 A 198.41.0.4"); //verify Assert.That(actual, Is.EqualTo(expected)); }
public void 前補完_指定されない場合_前行と同じになる() { //setUp var sut = new RrDb(); //exercise var expected = "before.aaa.com."; var actual = RrDbTest.AddNamedCaLine(sut, "before.aaa.com.", " 3600000 A 198.41.0.4"); //verify Assert.That(actual, Is.EqualTo(expected)); }
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 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 一リソースの追加_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 予め同一ドメインのNSレコードが無い場合失敗する_ドメインは同じだがNSレコードではない() { //setUp RrDb sut = new RrDb(); bool expected = false; sut.Add(new RrA("aaa.com.", 0, new Ip("192.168.0.1"))); //ドメインは同じだがNSレコードではない //exercise bool actual = RrDbTest.InitSoa(sut, "aaa.com.", "mail.", 1, 2, 3, 4, 5); //verify Assert.That(actual, Is.EqualTo(expected)); }
public void 予め同一ドメインのNSレコードが無い場合失敗する_NSレコードはあるがドメインが違う() { //setUp RrDb sut = new RrDb(); bool expected = false; sut.Add(new RrNs("bbb.com.", 0, "ns.bbb.com.")); //NSレコードはあるがドメインが違う //exercise bool actual = RrDbTest.InitSoa(sut, "aaa.com.", "mail.", 1, 2, 3, 4, 5); //verify Assert.That(actual, Is.EqualTo(expected)); }
public void 予め同一ドメインのNSレコードが有る場合成功する() { //setUp RrDb sut = new RrDb(); bool expected = true; sut.Add(new RrNs("aaa.com.", 0, "ns.aaa.com.")); //exercise bool actual = RrDbTest.InitSoa(sut, "aaa.com.", "mail.", 1, 2, 3, 4, 5); //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 空白行は処理されない() { //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 件数は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 リソース確認_5番目はNSレコードとなる() { //setUp var sut = new RrDb(); //exercise RrDbTest.InitLocalHost(sut); var o = (RrNs)RrDbTest.Get(sut, 4); //verify Assert.That(o.DnsType, Is.EqualTo(DnsType.Ns)); Assert.That(o.Name, Is.EqualTo("localhost.")); Assert.That(o.NsName, Is.EqualTo("localhost.")); }
public void リソース確認_4番目はPTRレコードとなる() { //setUp var sut = new RrDb(); //exercise RrDbTest.InitLocalHost(sut); var o = (RrPtr)RrDbTest.Get(sut, 3); //verify Assert.That(o.DnsType, Is.EqualTo(DnsType.Ptr)); Assert.That(o.Name, Is.EqualTo("1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6.ARPA.")); Assert.That(o.Ptr, Is.EqualTo("localhost.")); }
public void リソース確認_3番目はAAAAレコードとなる() { //setUp var sut = new RrDb(); //exercise RrDbTest.InitLocalHost(sut); var o = (RrAaaa)RrDbTest.Get(sut, 2); //verify //Assert.That(o.getDnsType(), Is.EqualTo(DnsType.Aaaa)); //Assert.That(o.getName(), Is.EqualTo("localhost.")); Assert.That(o.Ip.ToString(), Is.EqualTo("::1")); }
public void リソース確認_1番目はAレコードとなる() { //setUp var sut = new RrDb(); //exercise RrDbTest.InitLocalHost(sut); var o = (RrA)RrDbTest.Get(sut, 0); //verify Assert.That(o.DnsType, Is.EqualTo(DnsType.A)); Assert.That(o.Name, Is.EqualTo("localhost.")); Assert.That(o.Ip.ToString(), Is.EqualTo("127.0.0.1")); }
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 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 enable_falseのデータを追加すると例外が発生する() { //実際に発生するのはValidObjExceptionだが、privateメソッドの制約のためExceptionの発生をテストする //setUp var sut = new RrDb(); var oneDat = new OneDat(false, new[] { "0", "www", "alias", "192.168.0.1", "10" }, _isSecret); //exercise RrDbTest.AddOneDat(sut, DomainName, oneDat); //verify Assert.Fail("ここが実行されたらテスト失敗"); }
public void 無効なタイプのレコードを読み込むと例外が発生する() { //実際に発生するのはValidObjExceptionだが、privateメソッドの制約のためExceptionの発生をテストする //setUp var sut = new RrDb(); //タイプは0~4まで var oneDat = new OneDat(true, new[] { "5", "www", "alias", "127.0.0.1", "0" }, _isSecret); //exercise RrDbTest.AddOneDat(sut, DomainName, oneDat); //verify Assert.Fail("ここが実行されたらテスト失敗"); }
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 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 異なるリソースの追加() { //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)); }