<commit_before>## BASIC01: The child domain must have a parent domain

### Test case identifier
**BASIC01** The child domain must have a parent domain

### Objective

In order for a domain to work, it must be delegated to from another domain (with the exception of a root domain).

### Inputs

The label of the domain name to be tested.

### Ordered description of steps to be taken to execute the test case

A recursive NS-record lookup for the child domain name starting at the root domain should be done, and the steps of the process recorded.

1. If the recursion reaches a nameserver that responds with a redirect directly to the requested domain, including functional glue, the test succeeds. The domain through which the nameserver was found is considered the parent domain.
2. If the recursion reaches a nameserver that authoritatively responds with NXDOMAIN for the child domain, the test succeeds. The domain through which the nameserver was found is considered the parent domain.
3. If the recursion reaches a point where the recursion for some reason cannot continue before either case 1 or 2 happens, the test fails. 

### Outcome(s)

If the recursive lookup of the domain is successful, this test cases passes. If the
cannot continue (step 3), this test case fails.

### Special procedural requirements

If this test fails, it's impossible to continue and the whole testing process is aborted.

### Intercase dependencies

None.<commit_msg>changed title, fixed formatting, and cleared up some language<commit_after>## BASIC01: The domain must have a parent domain

### Test case identifier
**BASIC01** The domain must have a parent domain

### Objective

In order for a domain to work, it must be delegated to from a domain higher
up in the DNS hierarchy (a pernt domain). However, note that this
requirement does not concern the root domain.

### Inputs

The label of the domain name to be tested.

### Ordered description of steps to be taken to execute the test case

A recursive NS-record lookup for the child domain name starting at the
root domain should be done, and the steps of the process recorded.

1. If the recursion reaches a nameserver that responds with a redirect
   directly to the requested domain, including functional glue, the test
   succeeds. The domain through which the nameserver was found is
   considered the parent domain.
2. If the recursion reaches a nameserver that authoritatively responds
   with NXDOMAIN for the child domain, the test succeeds. The domain
   through which the nameserver was found is considered the parent domain.
3. If the recursion reaches a point where the recursion for some reason
   cannot continue before either case 1 or 2 happens, the test fails. 

### Outcome(s)

If the recursive lookup of the domain is successful, this test cases passes.
If the cannot continue (step 3), this test case fails.

### Special procedural requirements

If this test fails, it's impossible to continue and the whole testing process
is aborted.

### Intercase dependencies

None.
{'fraction_non_alphanumeric': 0.04281949934123847, 'fraction_numerical': 0.006587615283267457, 'mean_word_length': 4.3187390542907185, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5436457', 'n_tokens_mistral': 754, 'n_tokens_neox': 701, 'n_words': 480}