ixfr_out_bind10.feature 8.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195
  1. Feature: IXFR out
  2. Tests for IXFR-out, specific for BIND 10 behaviour.
  3. These are (part of) the tests as described on
  4. http://bind10.isc.org/wiki/IxfrSystemTests
  5. # A lot of these tests test specific UDP behaviour.
  6. #
  7. # Where possible, we use the TCP equivalent. Some of the behaviour
  8. # tested is UDP-specific though. In either case, a comment above
  9. # the test shows how and why it differs from the test specification,
  10. # or why it is commented out for now.
  11. # When we do implement UDP IXFR, we should probably keep the TCP
  12. # tests, and add them to the test specification, so we still have a
  13. # 1-to-1 mapping between these tests and the specification document.
  14. #
  15. # These tests use a zone with just a few records, the first serial
  16. # is 2, and it is incremented in steps of 2, up to serial 22.
  17. # Each updates either deletes or adds the www.example.com A record.
  18. # Version 2 has the record, then the update to version 4 deletes it,
  19. # the update to 6 adds it again, and so on, until version 22 (where
  20. # the last update has added it again)
  21. #
  22. # Some of the tests (scenario 1 tests 3 and 4, and scenario 2 tests 1 and
  23. # 2 may still not work if we replicate BIND 9's behaviour; it always
  24. # responds to UDP IXFR requests with just the SOA, and it does not do
  25. # AXFR-style IXFR if the number of changes exceeds the size of the zone)
  26. #
  27. # So in effect, there is only one test that is currently active (scenario
  28. # 1 test 7)
  29. Scenario: Test Set 1
  30. Given I have bind10 running with configuration ixfr-out/testset1-config.db
  31. Then wait for bind10 xfrout to start
  32. The SOA serial for example.com should be 22
  33. #
  34. # Test 1
  35. #
  36. # We don't support UDP yet, and for TCP we currently return full zone,
  37. # so this test is currently skipped
  38. #
  39. #When I do an IXFR transfer of example.com 123 over udp
  40. #The transfer result should have 1 RRs
  41. #The full result of the last transfer should be
  42. #"""
  43. #example.com. 3600 IN SOA ns.example.com. admin.example.com. 22 28800 7200 604800 18000
  44. #"""
  45. #
  46. # Test 2
  47. #
  48. # Original test specification was for UDP, using TCP for now
  49. #
  50. #When I do an IXFR transfer of example.com 22 over udp
  51. When I do an IXFR transfer of example.com 22 over tcp
  52. The transfer result should have 1 RRs
  53. The full result of the last transfer should be
  54. """
  55. example.com. 3600 IN SOA ns.example.com. admin.example.com. 22 28800 7200 604800 18000
  56. """
  57. #
  58. # Test 3
  59. #
  60. # Original test specification was for UDP, using TCP for now
  61. #
  62. #When I do an IXFR transfer of example.com 20 over udp
  63. When I do an IXFR transfer of example.com 20 over tcp
  64. The transfer result should have 5 RRs
  65. The full result of the last transfer should be
  66. """
  67. example.com. 3600 IN SOA ns.example.com. admin.example.com. 22 28800 7200 604800 18000
  68. example.com. 3600 IN SOA ns.example.com. admin.example.com. 20 28800 7200 604800 18000
  69. example.com. 3600 IN SOA ns.example.com. admin.example.com. 22 28800 7200 604800 18000
  70. www.example.com. 3600 IN A 192.0.2.1
  71. example.com. 3600 IN SOA ns.example.com. admin.example.com. 22 28800 7200 604800 18000
  72. """
  73. #
  74. # Test 4
  75. #
  76. # Original test specification was for UDP, using TCP for now
  77. #
  78. #When I do an IXFR transfer of example.com 18 over udp
  79. When I do an IXFR transfer of example.com 18 over tcp
  80. The transfer result should have 8 RRs
  81. The full result of the last transfer should be
  82. """
  83. example.com. 3600 IN SOA ns.example.com. admin.example.com. 22 28800 7200 604800 18000
  84. example.com. 3600 IN SOA ns.example.com. admin.example.com. 18 28800 7200 604800 18000
  85. www.example.com. 3600 IN A 192.0.2.1
  86. example.com. 3600 IN SOA ns.example.com. admin.example.com. 20 28800 7200 604800 18000
  87. example.com. 3600 IN SOA ns.example.com. admin.example.com. 20 28800 7200 604800 18000
  88. example.com. 3600 IN SOA ns.example.com. admin.example.com. 22 28800 7200 604800 18000
  89. www.example.com. 3600 IN A 192.0.2.1
  90. example.com. 3600 IN SOA ns.example.com. admin.example.com. 22 28800 7200 604800 18000
  91. """
  92. #
  93. # Test 5
  94. #
  95. # This test does not have a TCP equivalent, so it is skipped.
  96. #
  97. #When I do an IXFR transfer of example.com 2 over udp
  98. #The transfer result should have 1 RRs
  99. #The full result of the last transfer should be
  100. #"""
  101. #example.com. 3600 IN SOA ns.example.com. admin.example.com. 22 28800 7200 604800 18000
  102. #"""
  103. #
  104. # Test 6
  105. #
  106. # This test does not have a TCP equivalent, so it is skipped.
  107. #
  108. #When I do an IXFR transfer of example.com 5 over udp
  109. #The transfer result should have 1 RRs
  110. #The full result of the last transfer should be
  111. #"""
  112. #example.com. 3600 IN SOA ns.example.com. admin.example.com. 22 28800 7200 604800 18000
  113. #"""
  114. #
  115. # Test 7
  116. #
  117. When I do an IXFR transfer of example.com 14 over tcp
  118. The transfer result should have 14 RRs
  119. The full result of the last transfer should be
  120. """
  121. example.com. 3600 IN SOA ns.example.com. admin.example.com. 22 28800 7200 604800 18000
  122. example.com. 3600 IN SOA ns.example.com. admin.example.com. 14 28800 7200 604800 18000
  123. www.example.com. 3600 IN A 192.0.2.1
  124. example.com. 3600 IN SOA ns.example.com. admin.example.com. 16 28800 7200 604800 18000
  125. example.com. 3600 IN SOA ns.example.com. admin.example.com. 16 28800 7200 604800 18000
  126. example.com. 3600 IN SOA ns.example.com. admin.example.com. 18 28800 7200 604800 18000
  127. www.example.com. 3600 IN A 192.0.2.1
  128. example.com. 3600 IN SOA ns.example.com. admin.example.com. 18 28800 7200 604800 18000
  129. www.example.com. 3600 IN A 192.0.2.1
  130. example.com. 3600 IN SOA ns.example.com. admin.example.com. 20 28800 7200 604800 18000
  131. example.com. 3600 IN SOA ns.example.com. admin.example.com. 20 28800 7200 604800 18000
  132. example.com. 3600 IN SOA ns.example.com. admin.example.com. 22 28800 7200 604800 18000
  133. www.example.com. 3600 IN A 192.0.2.1
  134. example.com. 3600 IN SOA ns.example.com. admin.example.com. 22 28800 7200 604800 18000
  135. """
  136. Scenario: Test Set 2
  137. Given I have bind10 running with configuration ixfr-out/testset1-config.db
  138. Then wait for bind10 xfrout to start
  139. The SOA serial for example.com should be 22
  140. #
  141. # Test 1
  142. #
  143. # Original test specification was for UDP, using TCP for now
  144. #
  145. #When I do an IXFR transfer of example.com 19 over udp
  146. When I do an IXFR transfer of example.com 19 over tcp
  147. The transfer result should have 5 RRs
  148. The full result of the last transfer should be
  149. """
  150. example.com. 3600 IN SOA ns.example.com. admin.example.com. 22 28800 7200 604800 18000
  151. example.com. 3600 IN NS ns.example.com.
  152. ns.example.com. 3600 IN A 192.0.2.1
  153. www.example.com. 3600 IN A 192.0.2.1
  154. example.com. 3600 IN SOA ns.example.com. admin.example.com. 22 28800 7200 604800 18000
  155. """
  156. #
  157. # Test 2
  158. #
  159. # This test has no TCP equivalent
  160. #
  161. #When I do an IXFR transfer of example.com 6 over udp
  162. #The transfer result should have 5 RRs
  163. #The full result of the last transfer should be
  164. #"""
  165. #example.com. 3600 IN SOA ns.example.com. admin.example.com. 22 28800 7200 604800 18000
  166. #example.com. 3600 IN NS ns.example.com.
  167. #ns.example.com. 3600 IN A 192.0.2.1
  168. #www.example.com. 3600 IN A 192.0.2.1
  169. #example.com. 3600 IN SOA ns.example.com. admin.example.com. 22 28800 7200 604800 18000
  170. #"""
  171. #
  172. # Test 3
  173. #
  174. # This test has no TCP equivalent
  175. #
  176. #When I do an IXFR transfer of example.com 2 over udp
  177. #The transfer result should have 1 RRs
  178. #The full result of the last transfer should be
  179. #"""
  180. #example.com. 3600 IN SOA ns.example.com. admin.example.com. 22 28800 7200 604800 18000
  181. #"""