Skip to content

Commit 9d76108

Browse files
robindittmargreenbonebot
authored andcommitted
fixed test coverage
1 parent 4b76dda commit 9d76108

File tree

4 files changed

+66
-26
lines changed

4 files changed

+66
-26
lines changed

gvm/protocols/gmp/requests/next/_credential_stores.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ def get_credential_stores(
3535
cmd = XmlCommand("get_credential_stores")
3636
cmd.add_filter(filter_string, filter_id)
3737

38-
if details:
38+
if details is not None:
3939
cmd.set_attribute("details", to_bool(details))
4040

4141
if credential_store_id:

gvm/protocols/gmp/requests/next/_credentials.py

Lines changed: 31 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
from typing import Optional, Union
66

77
from gvm._enum import Enum
8-
from gvm.errors import RequiredArgument
8+
from gvm.errors import InvalidArgument, RequiredArgument
99
from gvm.protocols.core import Request
1010
from gvm.utils import to_bool
1111
from gvm.xml import XmlCommand
@@ -103,33 +103,39 @@ def create_credential_store_credential(
103103
cmd.add_element("allow_insecure", to_bool(allow_insecure))
104104

105105
if (
106-
credential_type == CredentialStoreCredentialType.CLIENT_CERTIFICATE
107-
or credential_type == CredentialStoreCredentialType.SNMP
108-
or credential_type
109-
== CredentialStoreCredentialType.USERNAME_PASSWORD
110-
or credential_type == CredentialStoreCredentialType.USERNAME_SSH_KEY
111-
or credential_type
112-
== CredentialStoreCredentialType.SMIME_CERTIFICATE
113-
or credential_type
114-
== CredentialStoreCredentialType.PGP_ENCRYPTION_KEY
115-
or credential_type == CredentialStoreCredentialType.PASSWORD_ONLY
106+
credential_type != CredentialStoreCredentialType.CLIENT_CERTIFICATE
107+
and credential_type != CredentialStoreCredentialType.SNMP
108+
and credential_type
109+
!= CredentialStoreCredentialType.USERNAME_PASSWORD
110+
and credential_type
111+
!= CredentialStoreCredentialType.USERNAME_SSH_KEY
112+
and credential_type
113+
!= CredentialStoreCredentialType.SMIME_CERTIFICATE
114+
and credential_type
115+
!= CredentialStoreCredentialType.PGP_ENCRYPTION_KEY
116+
and credential_type != CredentialStoreCredentialType.PASSWORD_ONLY
116117
):
117-
if not vault_id:
118-
raise RequiredArgument(
119-
function=cls.create_credential.__name__,
120-
argument="vault_id",
121-
)
122-
if not host_identifier:
123-
raise RequiredArgument(
124-
function=cls.create_credential.__name__,
125-
argument="host_identifier",
126-
)
118+
raise InvalidArgument(
119+
function=cls.create_credential.__name__,
120+
argument="credential_type",
121+
)
122+
123+
if not vault_id:
124+
raise RequiredArgument(
125+
function=cls.create_credential.__name__,
126+
argument="vault_id",
127+
)
128+
if not host_identifier:
129+
raise RequiredArgument(
130+
function=cls.create_credential.__name__,
131+
argument="host_identifier",
132+
)
127133

128-
if credential_store_id:
129-
cmd.add_element("credential_store_id", str(credential_store_id))
134+
if credential_store_id:
135+
cmd.add_element("credential_store_id", str(credential_store_id))
130136

131-
cmd.add_element("vault_id", vault_id)
132-
cmd.add_element("host_identifier", host_identifier)
137+
cmd.add_element("vault_id", vault_id)
138+
cmd.add_element("host_identifier", host_identifier)
133139

134140
return cmd
135141

tests/protocols/gmpnext/entities/credential_stores/test_get_credential_stores.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,19 @@ def test_get_credential_stores_with_filter_id(self):
2424
b'<get_credential_stores filt_id="f1"/>'
2525
)
2626

27+
def test_get_credential_stores_with_details(self):
28+
self.gmp.get_credential_stores(details=True)
29+
30+
self.connection.send.has_been_called_with(
31+
b'<get_credential_stores details="1"/>'
32+
)
33+
34+
self.gmp.get_credential_stores(details=False)
35+
36+
self.connection.send.has_been_called_with(
37+
b'<get_credential_stores details="0"/>'
38+
)
39+
2740
def test_get_credential_stores_with_id(self):
2841
self.gmp.get_credential_stores(credential_store_id="cs1")
2942

tests/protocols/gmpnext/entities/credentials/test_modify_credential_store_credential.py

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,27 @@ def test_modify_cs_credential_with_comment(self):
4646
b"</modify_credential>"
4747
)
4848

49+
def test_modify_cs_credential_with_allow_insecure(self):
50+
self.gmp.modify_credential_store_credential(
51+
credential_id="c1", allow_insecure=True
52+
)
53+
54+
self.connection.send.has_been_called_with(
55+
b'<modify_credential credential_id="c1">'
56+
b"<allow_insecure>1</allow_insecure>"
57+
b"</modify_credential>"
58+
)
59+
60+
self.gmp.modify_credential_store_credential(
61+
credential_id="c1", allow_insecure=False
62+
)
63+
64+
self.connection.send.has_been_called_with(
65+
b'<modify_credential credential_id="c1">'
66+
b"<allow_insecure>0</allow_insecure>"
67+
b"</modify_credential>"
68+
)
69+
4970
def test_modify_cs_credential_with_credential_store_id(self):
5071
self.gmp.modify_credential_store_credential(
5172
credential_id="c1", credential_store_id="foo"

0 commit comments

Comments
 (0)