Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
ISC Open Source Projects
Kea
Commits
f8c763ef
Commit
f8c763ef
authored
May 11, 2011
by
Michal 'vorner' Vaner
Browse files
[trac875] Tests for the checking function
parent
f80cdaf1
Changes
2
Hide whitespace changes
Inline
Side-by-side
src/bin/cfgmgr/plugins/tests/tsig_keys_test.py
View file @
f8c763ef
...
...
@@ -51,5 +51,53 @@ class TSigKeysTest(unittest.TestCase):
# There's some nonempty configuration
self
.
assertNotEqual
({},
spec
.
get_config_spec
())
def
test_missing_keys
(
self
):
"""
Test that missing keys doesn't kill us. There are just no keys there.
"""
self
.
assertEqual
(
None
,
tsig_keys
.
check
({}))
def
test_data_empty
(
self
):
"""Check we accept valid config with empty set of tsig keys."""
self
.
assertEqual
(
None
,
tsig_keys
.
check
({
'keys'
:
[]}))
def
test_keys_valid
(
self
):
"""
Check we accept some valid keys (we don't check all the algorithms,
that's the job of isc.dns.TSIGKey).
"""
self
.
assertEqual
(
None
,
tsig_keys
.
check
({
'keys'
:
[
'testkey:QklORCAxMCBpcyBjb29sCg=='
,
'test.key:QklORCAxMCBpcyBjb29sCg==:hmac-sha1'
]}))
def
test_keys_same_name
(
self
):
"""
Test we reject when we have multiple keys with the same name.
"""
self
.
assertEqual
(
"Multiple TSIG keys with name 'test.key'"
,
tsig_keys
.
check
({
'keys'
:
[
'test.key:QklORCAxMCBpcyBjb29sCg=='
,
'test.key:b3RoZXIK'
]}))
def
test_invalid_key
(
self
):
"""
Test we reject invalid key.
"""
self
.
assertEqual
(
"TSIG: Invalid TSIG key string: invalid.key"
,
tsig_keys
.
check
({
'keys'
:
[
'invalid.key'
]}))
self
.
assertEqual
(
"TSIG: attempt to decode a value not in base64 char set"
,
tsig_keys
.
check
({
'keys'
:
[
'invalid.key:123'
]}))
def
test_bad_format
(
self
):
"""
Test we fail on bad format. We don't really care much how here, though,
as this should not get in trough config manager anyway.
"""
self
.
assertNotEqual
(
None
,
tsig_keys
.
check
({
'bad_name'
:
{}}))
self
.
assertNotEqual
(
None
,
tsig_keys
.
check
({
'keys'
:
'not_list'
}))
self
.
assertNotEqual
(
None
,
tsig_keys
.
check
({
'keys'
:
42
}))
self
.
assertNotEqual
(
None
,
tsig_keys
.
check
({
'keys'
:
{}}))
if
__name__
==
'__main__'
:
unittest
.
main
()
src/bin/cfgmgr/plugins/tsig_keys.py
View file @
f8c763ef
...
...
@@ -18,7 +18,7 @@ from isc.util.file import path_search
from
bind10_config
import
PLUGIN_PATHS
spec
=
module_spec_from_file
(
path_search
(
'tsig_keys.spec'
,
PLUGIN_PATHS
))
def
check
():
def
check
(
config
):
pass
def
load
():
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment