From a63537082029bbe0073af631e7afcaca604333f9 Mon Sep 17 00:00:00 2001 From: karimpwnz Date: Sat, 2 Jan 2021 17:45:38 +0200 Subject: [PATCH] Finalize tests for keyring handling --- features/password.feature | 41 ++++++++++++++++++++++----------------- 1 file changed, 23 insertions(+), 18 deletions(-) diff --git a/features/password.feature b/features/password.feature index 9b81f063..e751bcbe 100644 --- a/features/password.feature +++ b/features/password.feature @@ -24,6 +24,7 @@ Feature: Using the installed keyring n """ Then we should get no error + And we should not see the message "Failed to retrieve keyring" Scenario: Encrypt journal with no keyring backend and do store in keyring Given we use the config "simple.yaml" @@ -36,50 +37,54 @@ Feature: Using the installed keyring y """ Then we should get no error + And we should not see the message "Failed to retrieve keyring" # @todo add step to check contents of keyring @todo Scenario: Open an encrypted journal with wrong password in keyring # This should ask the user for the password after the keyring fails - @todo - Scenario: Open encrypted journal when keyring exists but fails - # This should ask the user for the password after the keyring fails - @todo Scenario: Decrypt journal with password in keyring @todo Scenario: Decrypt journal without a keyring - @todo - Scenario: Decrypt journal when keyring exists but fails - # This should ask the user for the password after the keyring fails - - Scenario: Encrypt journal when keyring exists but cannot be unlocked + Scenario: Encrypt journal when keyring exists but fails Given we use the config "simple.yaml" - And we have a locked keyring + And we have a failed keyring When we run "jrnl --encrypt" and enter """ karimpwnz karimpwnz y """ - Then we should get no error + Then we should see the message "Failed to retrieve keyring" + And we should get no error + And we should be prompted for a password And the config for journal "default" should have "encrypt" set to "bool:True" - When we run "jrnl -n 1" and enter "karimpwnz" - Then we should be prompted for a password - And the output should contain "2013-06-10 15:40 Life is good" - Scenario: Decrypt journal when keyring exists but cannot be unlocked + Scenario: Decrypt journal when keyring exists but fails Given we use the config "encrypted.yaml" - And we have a locked keyring + And we have a failed keyring When we run "jrnl --decrypt" and enter "bad doggie no biscuit" - Then we should get no error - And the config for journal "default" should have "encrypt" set to "bool:False" + Then we should see the message "Failed to retrieve keyring" + And we should get no error + And we should be prompted for a password And we should see the message "Journal decrypted" + And the config for journal "default" should have "encrypt" set to "bool:False" And the journal should have 2 entries + Scenario: Open encrypted journal when keyring exists but fails + # This should ask the user for the password after the keyring fails + Given we use the config "encrypted.yaml" + And we have a failed keyring + When we run "jrnl -n 1" and enter "bad doggie no biscuit" + Then we should see the message "Failed to retrieve keyring" + And we should get no error + And we should be prompted for a password + And the output should contain "2013-06-10 15:40 Life is good" + Scenario: Mistyping your password Given we use the config "simple.yaml" When we run "jrnl --encrypt" and enter