]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
Tests for isMaster
authorAki Tuomi <cmouse@desteem.org>
Tue, 15 Jul 2014 16:02:17 +0000 (19:02 +0300)
committerAki Tuomi <cmouse@desteem.org>
Tue, 15 Jul 2014 16:02:17 +0000 (19:02 +0300)
modules/remotebackend/test-remotebackend.cc
modules/remotebackend/unittest.rb
modules/remotebackend/unittest_http.rb

index 2e55e00fd92c04e341f61e47a37c63ea6a907259..599091ad2fa387b32d6587f372ffb40ccc48baa2 100644 (file)
@@ -191,6 +191,12 @@ BOOST_AUTO_TEST_CASE(test_method_getDomainInfo) {
    BOOST_CHECK_EQUAL(di.backend, be);
 }
 
+BOOST_AUTO_TEST_CASE(test_method_isMaster) {
+   BOOST_TEST_MESSAGE("Testing isMaster method");
+   BOOST_CHECK(be->isMaster("ns1.unit.test", "10.0.0.1"));
+   BOOST_CHECK(!be->isMaster("ns2.unit.test", "10.0.0.2"));
+}
+
 BOOST_AUTO_TEST_CASE(test_method_superMasterBackend) {
    DNSResourceRecord rr;
    std::vector<DNSResourceRecord> nsset; 
index 734ff9e5d967c6363104d798ab042c373309047b..a5aac4425919bf359bbb526322b79b75e729f8e5 100644 (file)
@@ -27,6 +27,8 @@ $keys = {}
 
 $tsigkeys = { "test" => {:name => "test", :algorithm => "NULL", :content => "NULL"} }
 
+$masters = { :name => "ns1.unit.test", :ip => "10.0.0.1" }
+
 class Handler
    def initialize
    end
@@ -172,6 +174,10 @@ class Handler
      [false]
    end
 
+   def do_ismaster(args)
+     $masters[:name] == args["name"] && $masters[:ip] == args["ip"]
+   end
+
    def do_supermasterbackend(args) 
      $domain[args["domain"]] = {
         "NS" => args["nsset"]
index 6ba013217ff837e027740274aed6f769477c3b0f..99dfe0f6554048e9d2d71ce189798bbc316a96d9 100755 (executable)
@@ -75,6 +75,11 @@ class DNSBackendHandler < WEBrick::HTTPServlet::AbstractServlet
         {
              "id" => url.shift.to_i
         }
+     when "ismaster"
+        {
+             "name" => url.shift,
+             "ip" => url.shift
+        }
      when "supermasterbackend", "createslavedomain"
         {
              "ip" => url.shift,