From 40d6c763b3774fe1d7efe6e86a9c2ac116c4e8d5 Mon Sep 17 00:00:00 2001 From: chris meyers Date: Thu, 9 Aug 2018 13:32:42 -0400 Subject: [PATCH] add test for first net cred ssh password protected wins --- awx/main/tests/unit/test_tasks.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/awx/main/tests/unit/test_tasks.py b/awx/main/tests/unit/test_tasks.py index 235a38d271..2961ee6cfc 100644 --- a/awx/main/tests/unit/test_tasks.py +++ b/awx/main/tests/unit/test_tasks.py @@ -788,6 +788,23 @@ class TestJobCredentials(TestJobExecution): assert 'secret' in call_kwargs.get('expect_passwords').values() + def test_net_first_ssh_key_unlock_wins(self): + for i in range(3): + net = CredentialType.defaults['net']() + credential = Credential( + pk=1, + credential_type=net, + inputs = {'ssh_key_unlock': 'secret{}'.format(i)} + ) + credential.inputs['ssh_key_unlock'] = encrypt_field(credential, 'ssh_key_unlock') + self.instance.credentials.add(credential) + self.task.run(self.pk) + + assert self.run_pexpect.call_count == 1 + call_args, call_kwargs = self.run_pexpect.call_args_list[0] + + assert 'secret0' in call_kwargs.get('expect_passwords').values() + def test_prefer_ssh_over_net_ssh_key_unlock(self): net = CredentialType.defaults['net']() net_credential = Credential(