Possible pytest RNDC interface improvements
Review of !8357 (merged), which provides a first cut of the pytest RNDC interface, shown multiple suggestion for possible improvements.
I am now dumping them here in a form of checklist so they don't get buried in the now resolved MR comments:
-
Find a way to the the *.in
files templating in pure Python. This is needed for the elimination of thesetup.sh
scripts. This will probably require depending onjinja
explicitly. -
Add an "rndc null" before every reconfiguration to show which file is used (NamedInstance.add_mark_to_log() as it may be generically useful?) -
Extend NamedInstance
with some kind ofquery
method. This is needed as a replacement for the calls todig
which are common in system tests. -
There are now two objects representing the ports used in tests: dictionary returned by the ports
fixture and the newNamedPorts
class. Unify them. Discussed here. -
Consider switch from NamedTuple
todataclass
(Python 3.7 feature, requires a external dependency on some distros we run) as discussed here. -
NamedInstance.rndc(…)
method probably ought to beasync
. Discussed here
Feel free to add others!