From a5d56e3b5443263b53b0487c81125123411bd0cf Mon Sep 17 00:00:00 2001 From: Philip Hands Date: Wed, 11 May 2016 17:11:01 +0200 Subject: move cucumber things under cucumber/ --- features/step_definitions/encryption.rb | 133 -------------------------------- 1 file changed, 133 deletions(-) delete mode 100644 features/step_definitions/encryption.rb (limited to 'features/step_definitions/encryption.rb') diff --git a/features/step_definitions/encryption.rb b/features/step_definitions/encryption.rb deleted file mode 100644 index 9f7f1b96..00000000 --- a/features/step_definitions/encryption.rb +++ /dev/null @@ -1,133 +0,0 @@ -def seahorse_menu_click_helper(main, sub, verify = nil) - try_for(60) do - step "process \"#{verify}\" is running" if verify - @screen.hide_cursor - @screen.wait_and_click(main, 10) - @screen.wait_and_click(sub, 10) - return - end -end - -Given /^I generate an OpenPGP key named "([^"]+)" with password "([^"]+)"$/ do |name, pwd| - @passphrase = pwd - @key_name = name - gpg_key_recipie = <> /tmp/gpg_key_recipie", :user => LIVE_USER) - end - c = $vm.execute("gpg --batch --gen-key < /tmp/gpg_key_recipie", - :user => LIVE_USER) - assert(c.success?, "Failed to generate OpenPGP key:\n#{c.stderr}") -end - -When /^I type a message into gedit$/ do - step 'I start "Gedit" via the GNOME "Accessories" applications menu' - @screen.wait_and_click("GeditWindow.png", 20) - # We don't have a good visual indicator for when we can continue. Without the - # sleep we may start typing in the gedit window far too soon, causing - # keystrokes to go missing. - sleep 5 - @screen.type("ATTACK AT DAWN") -end - -def maybe_deal_with_pinentry - begin - @screen.wait_and_click("PinEntryPrompt.png", 10) - # Without this sleep here (and reliable visual indicators) we can sometimes - # miss keystrokes by typing too soon. This sleep prevents this problem from - # coming up. - sleep 5 - @screen.type(@passphrase + Sikuli::Key.ENTER) - rescue FindFailed - # The passphrase was cached or we wasn't prompted at all (e.g. when - # only encrypting to a public key) - end -end - -def gedit_copy_all_text - context_menu_helper('GeditWindow.png', 'GeditStatusBar.png', 'GeditSelectAll.png') - context_menu_helper('GeditWindow.png', 'GeditStatusBar.png', 'GeditCopy.png') -end - -def paste_into_a_new_tab - @screen.wait_and_click("GeditNewTab.png", 20) - context_menu_helper('GeditWindow.png', 'GeditStatusBar.png', 'GeditPaste.png') -end - -def encrypt_sign_helper - gedit_copy_all_text - seahorse_menu_click_helper('GpgAppletIconNormal.png', 'GpgAppletSignEncrypt.png') - @screen.wait_and_click("GpgAppletChooseKeyWindow.png", 30) - # We don't have a good visual indicator for when we can continue without - # keystrokes being lost. - sleep 5 - yield - maybe_deal_with_pinentry - paste_into_a_new_tab -end - -def decrypt_verify_helper(icon) - gedit_copy_all_text - seahorse_menu_click_helper(icon, 'GpgAppletDecryptVerify.png') - maybe_deal_with_pinentry - @screen.wait("GpgAppletResults.png", 20) - @screen.wait("GpgAppletResultsMsg.png", 20) -end - -When /^I encrypt the message using my OpenPGP key$/ do - encrypt_sign_helper do - @screen.type(@key_name + Sikuli::Key.ENTER + Sikuli::Key.ENTER) - end -end - -Then /^I can decrypt the encrypted message$/ do - decrypt_verify_helper("GpgAppletIconEncrypted.png") - @screen.wait("GpgAppletResultsEncrypted.png", 20) -end - -When /^I sign the message using my OpenPGP key$/ do - encrypt_sign_helper do - @screen.type(Sikuli::Key.TAB + Sikuli::Key.DOWN + Sikuli::Key.ENTER) - end -end - -Then /^I can verify the message's signature$/ do - decrypt_verify_helper("GpgAppletIconSigned.png") - @screen.wait("GpgAppletResultsSigned.png", 20) -end - -When /^I both encrypt and sign the message using my OpenPGP key$/ do - encrypt_sign_helper do - @screen.wait_and_click('GpgAppletEncryptionKey.png', 20) - @screen.type(Sikuli::Key.SPACE) - @screen.wait('GpgAppletKeySelected.png', 10) - @screen.type(Sikuli::Key.TAB + Sikuli::Key.DOWN + Sikuli::Key.ENTER) - @screen.type(Sikuli::Key.ENTER) - end -end - -Then /^I can decrypt and verify the encrypted message$/ do - decrypt_verify_helper("GpgAppletIconEncrypted.png") - @screen.wait("GpgAppletResultsEncrypted.png", 20) - @screen.wait("GpgAppletResultsSigned.png", 20) -end - -When /^I symmetrically encrypt the message with password "([^"]+)"$/ do |pwd| - @passphrase = pwd - gedit_copy_all_text - seahorse_menu_click_helper('GpgAppletIconNormal.png', 'GpgAppletEncryptPassphrase.png') - maybe_deal_with_pinentry # enter password - maybe_deal_with_pinentry # confirm password - paste_into_a_new_tab -end -- cgit v1.2.3-70-g09d2