]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Check delv +yaml negative response output
authorMark Andrews <marka@isc.org>
Sun, 15 Dec 2024 23:29:26 +0000 (10:29 +1100)
committerMark Andrews <marka@isc.org>
Wed, 22 Jan 2025 23:58:54 +0000 (23:58 +0000)
(cherry picked from commit 9c04640def525f04c0ff8a1fe796b521bb7547cb)

bin/tests/system/digdelv/tests.sh

index 5cde0a38871f8721bbaf8e7ef5402fefd7f42cad..252884c4f760076b8d3dbec59b1a24c4439cba42 100644 (file)
@@ -919,7 +919,7 @@ if [ -x "$DIG" ]; then
 
   if [ $HAS_PYYAML -ne 0 ]; then
     n=$((n + 1))
-    echo_i "check dig +yaml output ($n)"
+    echo_i "check dig +yaml ANY output ($n)"
     ret=0
     dig_with_opts +qr +yaml @10.53.0.3 any ns2.example >dig.out.test$n 2>&1 || ret=1
     $PYTHON yamlget.py dig.out.test$n 0 message query_message_data status >yamlget.out.test$n 2>&1 || ret=1
@@ -1397,7 +1397,7 @@ if [ -x "$DELV" ]; then
 
   if [ $HAS_PYYAML -ne 0 ]; then
     n=$((n + 1))
-    echo_i "check delv +yaml output ($n)"
+    echo_i "check delv +yaml ANY output ($n)"
     ret=0
     delv_with_opts +yaml @10.53.0.3 any ns2.example >delv.out.test$n || ret=1
     $PYTHON yamlget.py delv.out.test$n status >yamlget.out.test$n 2>&1 || ret=1
@@ -1412,6 +1412,40 @@ if [ -x "$DELV" ]; then
     [ ${count:-0} -eq 5 ] || ret=1
     if [ $ret -ne 0 ]; then echo_i "failed"; fi
     status=$((status + ret))
+
+    n=$((n + 1))
+    echo_i "check delv +yaml NODATA output ($n)"
+    ret=0
+    delv_with_opts +yaml @10.53.0.3 type500 ns2.example >delv.out.test$n || ret=1
+    $PYTHON yamlget.py delv.out.test$n status >yamlget.out.test$n 2>&1 || ret=1
+    read -r value <yamlget.out.test$n
+    [ "$value" = "ncache nxrrset" ] || ret=1
+    $PYTHON yamlget.py delv.out.test$n query_name >yamlget.out.test$n 2>&1 || ret=1
+    read -r value <yamlget.out.test$n
+    [ "$value" = "ns2.example" ] || ret=1
+    $PYTHON yamlget.py delv.out.test$n records 0 negative_response_answer_not_validated 0 >yamlget.out.test$n 2>&1 || ret=1
+    read -r value <yamlget.out.test$n
+    count=$(echo $value | wc -w)
+    [ ${count:-0} -eq 5 ] || ret=1
+    if [ $ret -ne 0 ]; then echo_i "failed"; fi
+    status=$((status + ret))
+
+    n=$((n + 1))
+    echo_i "check delv +yaml NXDOMAIN output ($n)"
+    ret=0
+    delv_with_opts +yaml @10.53.0.3 a this-does-not-exist.ns2.example >delv.out.test$n || ret=1
+    $PYTHON yamlget.py delv.out.test$n status >yamlget.out.test$n 2>&1 || ret=1
+    read -r value <yamlget.out.test$n
+    [ "$value" = "ncache nxdomain" ] || ret=1
+    $PYTHON yamlget.py delv.out.test$n query_name >yamlget.out.test$n 2>&1 || ret=1
+    read -r value <yamlget.out.test$n
+    [ "$value" = "this-does-not-exist.ns2.example" ] || ret=1
+    $PYTHON yamlget.py delv.out.test$n records 0 negative_response_answer_not_validated 0 >yamlget.out.test$n 2>&1 || ret=1
+    read -r value <yamlget.out.test$n
+    count=$(echo $value | wc -w)
+    [ ${count:-0} -eq 5 ] || ret=1
+    if [ $ret -ne 0 ]; then echo_i "failed"; fi
+    status=$((status + ret))
   fi
 else
   echo_i "$DELV is needed, so skipping these delv tests"