mirror of
https://github.com/isc-projects/bind9.git
synced 2026-02-16 09:08:41 -05:00
After the rndc reload command finished, we might have queried the database zone sooner than it was reloaded because rndc reloads zones asynchronously if no specific zone was provided. We should wait for "all zones loaded" in the ns1 log to be sure.
43 lines
1.3 KiB
Python
43 lines
1.3 KiB
Python
# Copyright (C) Internet Systems Consortium, Inc. ("ISC")
|
|
#
|
|
# SPDX-License-Identifier: MPL-2.0
|
|
#
|
|
# This Source Code Form is subject to the terms of the Mozilla Public
|
|
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
# file, you can obtain one at https://mozilla.org/MPL/2.0/.
|
|
#
|
|
# See the COPYRIGHT file distributed with this work for additional
|
|
# information regarding copyright ownership.
|
|
|
|
import isctest
|
|
|
|
import dns.message
|
|
|
|
|
|
def test_database(servers, templates):
|
|
msg = dns.message.make_query("database.", "SOA")
|
|
|
|
# checking pre reload zone
|
|
res = isctest.query.tcp(msg, "10.53.0.1")
|
|
assert res.answer[0] == dns.rrset.from_text(
|
|
"database.",
|
|
86400,
|
|
"IN",
|
|
"SOA",
|
|
"localhost. hostmaster.isc.org. 0 28800 7200 604800 86400",
|
|
)
|
|
|
|
templates.render("ns1/named.conf", {"rname": "marka.isc.org."})
|
|
with servers["ns1"].watch_log_from_here() as watcher:
|
|
servers["ns1"].rndc("reload")
|
|
watcher.wait_for_line("all zones loaded")
|
|
|
|
# checking post reload zone
|
|
res = isctest.query.tcp(msg, "10.53.0.1")
|
|
assert res.answer[0] == dns.rrset.from_text(
|
|
"database.",
|
|
86400,
|
|
"IN",
|
|
"SOA",
|
|
"localhost. marka.isc.org. 0 28800 7200 604800 86400",
|
|
)
|