# Specification of test Scenarios for Delegation02 ## Table of contents * [Background](#background) * [Test Case](#test-case) * [Test scenarios](#test-scenarios) * [Test zone names](#test-zone-names) * [All message tags](#all-message-tags) * [Test scenarios and message tags](#test-scenarios-and-message-tags) * [Test zone setup] ## Background See the [test scenario README file]. ## Test Case This document specifies test scenarios for test case [Delegation02]. ## Test scenarios The purpose of the test scenarios is to cover all reasonable contexts where different message tags are output when [Delegation02] is run on a test zone. The message tags are defined in the test case ([Delegation02]) and the scenarios are defined below. The test scenarios are structured as stated in the [test scenario README file]. ## Test zone names The test zone for each test scenario in this document is a subdomain delegated from the base name (`delegation02.xa`) and that subdomain having the same name as the scenario. The names of those zones are given in section [Test zone setup] below. ## All message tags The test case can output any of these message tags, but not necessarily in any combination. See [Delegation02] for the specification of the tags. * DEL_DISTINCT_NS_IP * CHILD_DISTINCT_NS_IP * DEL_NS_SAME_IP * CHILD_NS_SAME_IP ## Test scenarios and message tags If a message tag is not listed for the scenario, its presence or non-presence is irrelevant to the test scenario and must be ignored. Scenario name | Mandatory message tag | Forbidden message tags :-----------------------------|:-----------------------------------------|:------------------------------------------- ALL-DISTINCT-1 | DEL_DISTINCT_NS_IP, CHILD_DISTINCT_NS_IP | 2) ALL-DISTINCT-2 | DEL_DISTINCT_NS_IP, CHILD_DISTINCT_NS_IP | 2) ALL-DISTINCT-3 | DEL_DISTINCT_NS_IP, CHILD_DISTINCT_NS_IP | 2) DEL-NON-DISTINCT | DEL_NS_SAME_IP, CHILD_DISTINCT_NS_IP | 2) DEL-NON-DISTINCT-UND | DEL_NS_SAME_IP, CHILD_DISTINCT_NS_IP | 2) CHILD-NON-DISTINCT | DEL_DISTINCT_NS_IP, CHILD_NS_SAME_IP | 2) CHILD-NON-DISTINCT-UND | DEL_DISTINCT_NS_IP, CHILD_NS_SAME_IP | 2) NON-DISTINCT-1 | DEL_NS_SAME_IP, CHILD_NS_SAME_IP | 2) NON-DISTINCT-2 | DEL_NS_SAME_IP, CHILD_NS_SAME_IP | 2) NON-DISTINCT-3 | DEL_NS_SAME_IP, CHILD_NS_SAME_IP | 2) 1\) All tags except for those specified as "Forbidden message tags" (no instances for these test scenarios) 2\) All tags except for those specified as "Mandatory message tags" ## Test zone setup Assumptions for the scenario specifications unless otherwise specified for the specific scenario: * For each scenario zone there are two name servers configured. * Both name servers (ns1 and ns2) are equal in delegation and in zone. * Both name servers are in-bailiwick. * Both name servers have both IPv4 and IPv6 addresses. * All addresses are distinct. * All required glue are present in the delegation. * All glue exactly matches the authoritative address records in correct zone (not more and not less records). * All name server IP addresses respond with identical zone content. ### ALL-DISTINCT-1 This is the happy path. * Zone: all-distinct-1.delegation02.xa ### ALL-DISTINCT-2 This is also a happy path. Out-of-bailiwick. * Zone: all-distinct-2.delegation02.xa * Both ns1 and ns2 are out-of-bailiwick under the xb tree. * ns1 is "ns1.all-distinct-2.delegation02.xb" * ns2 is "ns2.all-distinct-2.delegation02.xb" * Delegation is without glue. * The test zone has no address records for the name server names. * The "delegation02.xb" zone has full set of address records for this scenario. ### ALL-DISTINCT-3 This is also a happy path. Also out-of-bailiwick, but with sibling glue. * Zone: all-distinct-3.delegation02.xa * Both ns1 and ns2 are out-of-bailiwick * ns1 is "ns1.all-distinct-3.sibling.delegation02.xa" * ns2 is "ns2.all-distinct-3.sibling.delegation02.xa" * Delegation is with glue. * The test zone ("child") has no address records for the name server names. * The "delegation02.xa" zone has full set of address records for this scenario. ### DEL-NON-DISTINCT The glue records use the same IP addresses. * Zone: del-non-distinct.delegation02.xa * The name servers are ns1a and ns1b * ns1a and ns1b in the delegation (glue) have the same IPv4 and IPv6 addresses, respectively. * ns1a and ns1b have distinct addresses in the zone (IPv4 and IPv6, respectively). ### DEL-NON-DISTINCT-UND The glue records use the same IP addresses. The zone is undelegated. * Zone: del-non-distinct-und.delegation02.xa * The zone is undelegated. * name servers are ns1a and ns1b * ns1a and ns1b in the delegation (glue) have the same IPv4 and IPv6 addresses, respectively. * ns1a and ns1b have distinct addresses in the zone (IPv4 and IPv6, respectively). * Undelegated data: * ns1a.del-non-distinct-und.delegation02.xa/IPv4 * ns1a.del-non-distinct-und.delegation02.xa/IPv6 * ns1b.del-non-distinct-und.delegation02.xa/IPv4 * ns1b.del-non-distinct-und.delegation02.xa/IPv6 ### CHILD-NON-DISTINCT The address records in the zone use the same IP addresses. * Zone: child-non-distinct.delegation02.xa * name servers are ns1a and ns1b * ns1a and ns1b in the delegation (glue) have distinct addresses (IPv4 and IPv6, respectively). * ns1a and ns1b have the same addresses in the zone, IPv4 and IPv6, respectively. ### CHILD-NON-DISTINCT-UND The address records in the zone use the same IP addresses. * Zone: child-non-distinct-und.delegation02.xa * The zone is undelegated. * name servers are ns1a and ns1b * ns1a and ns1b in the delegation (glue) have distinct addresses (IPv4 and IPv6, respectively). * ns1a and ns1b have the same addresses in the zone, IPv4 and IPv6, respectively. * Undelegated data: * ns1a.child-non-distinct-und.delegation02.xa/IPv4 * ns1a.child-non-distinct-und.delegation02.xa/IPv6 * ns1b.child-non-distinct-und.delegation02.xa/IPv4 * ns1b.child-non-distinct-und.delegation02.xa/IPv6 ### NON-DISTINCT-1 The address records in both delegation and zone use the same IP addresses. * Zone: non-distinct-1.delegation02.xa * name servers are ns1a, ns1b and ns2 * ns1a and ns1b in the delegation (glue) have the same IPv4 and IPv6 addresses, respectively. * ns1a and ns1b have the same addresses in the zone, IPv4 and IPv6, respectively. * ns2 has a distinct address both in delegation and in zone. ### NON-DISTINCT-2 The name servers in both delegation and zone refer to the same IP addresses. The names are out-of-bailiwick. * Zone: non-distinct-2.delegation02.xa * name servers are ns1a, ns1b and ns2, and are out-of-bailiwick under the xb tree. * ns1a is "ns1a.non-distinct-2.delegation02.xb" * ns1b is "ns1a.non-distinct-2.delegation02.xb" * ns2 is "ns2.non-distinct-2.delegation02.xb" * Delegation is without glue. * ns1a and ns1b have the same addresses, IPv4 and IPv6, respectively. * ns2 has distinct addresses (IPv4 and IPv6). * The test zone has no address records for the name server names. * The "delegation02.xb" zone has full set of address records for this scenario. ### NON-DISTINCT-3 The name servers in both delegation and zone refer to the same IP addresses. The names are out-of-bailiwick, but with sibling glue. * Zone: non-distinct-3.delegation02.xa * name servers are ns1a, ns1b and ns2, and are out-of-bailiwick. * ns1a is "ns1a.non-distinct-3.sibling.delegation02.xa" * ns1b is "ns1a.non-distinct-3.sibling.delegation02.xa" * ns2 is "ns2.non-distinct-3.sibling.delegation02.xa" * Delegation has sibling glue. * ns1a and ns1b have the same addresses, IPv4 and IPv6, respectively. * ns2 has distinct addresses (IPv4 and IPv6). * The test zone has no address records for the name server names. * The "delegation02.xa" zone has full set of address records for this scenario. [Delegation02]: ../../tests/Delegation-TP/delegation02.md [RCODE Name]: https://www.iana.org/assignments/dns-parameters/dns-parameters.xhtml#dns-parameters-6 [test scenario README file]: ../README.md [Test zone setup]: #test-zone-setup