From b5aff1f45b8a7c478434995c200232e112e22bf7 Mon Sep 17 00:00:00 2001 From: OCram85 Date: Wed, 14 Mar 2018 13:13:28 +0100 Subject: [PATCH] adds aditional tests for New-CredentialStoreItem --- .../Item/02_New-CredentialStoreItem.Tests.ps1 | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/tests/Item/02_New-CredentialStoreItem.Tests.ps1 b/tests/Item/02_New-CredentialStoreItem.Tests.ps1 index d84c1a7..93e663d 100644 --- a/tests/Item/02_New-CredentialStoreItem.Tests.ps1 +++ b/tests/Item/02_New-CredentialStoreItem.Tests.ps1 @@ -72,4 +72,30 @@ Describe "New-CredentialStoreItem" { ($writtenItem.UserName -eq $UserName) -and ($writtenItem.Password.Length -gt 0) | Should -Be $true } } + Context "Test optional parameter lookup" { + Mock Get-Credential { + return [PSCustomObject]@{ + UserName = 'myUser' + Password = ConvertTo-SecureString -String "mypasswd" -AsPlainText -Force + } + } + It "Test missing Credential" { + $tmpCS = 'C:\CredentialStore.json' + New-CredentialStoreItem -Path $tmpCs -Shared -RemoteHost 'foobar3' + $writtenItem = Get-CredentialStoreItem -Path $tmpCS -Shared -RemoteHost 'foobar3' + $writtenItem.UserName | Should -Be "myUser" + } + } + Context "General Exception handling" { + Mock Test-CredentialStore {return $false} + Mock Get-Credential { + return [PSCustomObject]@{ + UserName = 'myUser' + Password = ConvertTo-SecureString -String "mypasswd" -AsPlainText -Force + } + } + It "Missing CredentialStore should throw" { + New-CredentialStoreItem -Path 'C:\missingStore.json' -RemoteHost 'notrelevant' | Should -Throw "Could not add anything" + } + } }