summaryrefslogtreecommitdiffstats
path: root/tests/integration/deckard/tests
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 15:26:00 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 15:26:00 +0000
commit830407e88f9d40d954356c3754f2647f91d5c06a (patch)
treed6a0ece6feea91f3c656166dbaa884ef8a29740e /tests/integration/deckard/tests
parentInitial commit. (diff)
downloadknot-resolver-upstream.tar.xz
knot-resolver-upstream.zip
Adding upstream version 5.6.0.upstream/5.6.0upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'tests/integration/deckard/tests')
-rw-r--r--tests/integration/deckard/tests/__init__.py0
-rw-r--r--tests/integration/deckard/tests/deckard_raw_id.rpl14
-rw-r--r--tests/integration/deckard/tests/deckard_raw_id.yml6
-rw-r--r--tests/integration/deckard/tests/test_deckard.py30
4 files changed, 50 insertions, 0 deletions
diff --git a/tests/integration/deckard/tests/__init__.py b/tests/integration/deckard/tests/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/tests/integration/deckard/tests/__init__.py
diff --git a/tests/integration/deckard/tests/deckard_raw_id.rpl b/tests/integration/deckard/tests/deckard_raw_id.rpl
new file mode 100644
index 0000000..831c566
--- /dev/null
+++ b/tests/integration/deckard/tests/deckard_raw_id.rpl
@@ -0,0 +1,14 @@
+stub-addr: 1.2.3.4
+CONFIG_END
+SCENARIO_BEGIN Sanity check for Deckard's "ADJUST raw_id" option
+RANGE_BEGIN 0 100
+ADDRESS 1.2.3.4
+ENTRY_BEGIN
+MATCH opcode
+ADJUST raw_id
+RAW
+0000
+ENTRY_END
+RANGE_END
+STEP 1 TIME_PASSES ELAPSE 1
+SCENARIO_END
diff --git a/tests/integration/deckard/tests/deckard_raw_id.yml b/tests/integration/deckard/tests/deckard_raw_id.yml
new file mode 100644
index 0000000..1650a2f
--- /dev/null
+++ b/tests/integration/deckard/tests/deckard_raw_id.yml
@@ -0,0 +1,6 @@
+programs:
+- name: raw_id
+ binary: test_raw_id.py
+ additional: []
+ templates: []
+ configs: []
diff --git a/tests/integration/deckard/tests/test_deckard.py b/tests/integration/deckard/tests/test_deckard.py
new file mode 100644
index 0000000..50096ea
--- /dev/null
+++ b/tests/integration/deckard/tests/test_deckard.py
@@ -0,0 +1,30 @@
+""" This is unittest file for parse methods in scenario.py """
+import os
+import shutil
+import tempfile
+
+from deckard import create_trust_anchor_files
+
+
+def test_create_trust_anchor_files():
+ """Trust anchors must be into separate files grouped by domain."""
+ anchor1a = u'domain1.com.\t3600\tIN\tDS\t11901 7 1 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
+ anchor1b = u'domain1.com.\t3600\tIN\tDS\t11902 7 1 1111111111111111111111111111111111111111'
+ anchor2a = u'domain2.net.\t3600\tIN\tDS\t59835 7 1 cccccccccccccccccccccccccccccccccccccccc'
+ trust_anchors = {'domain1.com': [anchor1a, anchor1b],
+ 'domain2.net': [anchor2a]}
+
+ tmpdir = tempfile.mkdtemp()
+ try:
+ file_names = create_trust_anchor_files(trust_anchors, tmpdir)
+ assert sorted(file_names) == sorted('{wd}/ta/{f}'.format(wd=tmpdir, f=f)
+ for f in [u'domain1.com.key', u'domain2.net.key'])
+ for path in file_names:
+ with open(path) as ta_file:
+ file_name = os.path.basename(path)
+ assert file_name[-4:] == '.key'
+ domain = file_name[:-4]
+ assert ta_file.read() == ''.join(u'{}\n'.format(ta)
+ for ta in trust_anchors[domain])
+ finally:
+ shutil.rmtree(tmpdir)