Skip to content

Instantly share code, notes, and snippets.

@aaronjensen
Created March 7, 2016 20:59
Show Gist options
  • Save aaronjensen/08453fcc498a1244d44b to your computer and use it in GitHub Desktop.
Save aaronjensen/08453fcc498a1244d44b to your computer and use it in GitHub Desktop.
advice--normalize(dolist (macro . #[385 "\301\2031\302A@DC\303\302@\304DDC\305\306 \307 DEC\"BBEAABBB\202j\302A@D@D\303\306@\304DE\305\306\307\nDEC\"BBBAA\205g\306@\310BBAABBBB\207" [lexical-binding --dolist-tail-- let while car append setq cdr (nil)] 15 2435453]))
advice-add(dolist :around cl--wrap-in-nil-block)
byte-code("\300\301\302\303#\210\300\304\302\303#\207" [advice-add dolist :around cl--wrap-in-nil-block dotimes] 4)
require(cl)
eval-buffer(#<buffer *load*-459052> nil "/Users/aaronjensen/Source/evil-mc/features/support/env.el" nil t)
load-with-code-conversion("/Users/aaronjensen/Source/evil-mc/features/support/env.el" "/Users/aaronjensen/Source/evil-mc/features/support/env.el" nil t)
load("/Users/aaronjensen/Source/evil-mc/features/support/env" nil t)
ecukes-load-support()
ecukes-load()
ecukes-cli/run("features")
apply(ecukes-cli/run "features")
commander--handle-command(nil)
commander-parse(("--debug"))
(if commander-parsing-done nil (commander-parse (or commander-args (cdr command-line-args-left))))
eval-buffer(#<buffer *load*> nil "/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el" nil t)
load-with-code-conversion("/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el" "/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el" nil t)
load("/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el" nil t t)
command-line-1(("-scriptload" "/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el"))
command-line()
normal-top-level()
signal(ert-test-failed (((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal "yy" "3yy") :value nil :explanation (arrays-of-different-length 2 3 "yy" "3yy" first-mismatch-at 0))))
ert-fail(((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal "yy" "3yy") :value nil :explanation (arrays-of-different-length 2 3 "yy" "3yy" first-mismatch-at 0)))
(if (unwind-protect (setq value-7 (apply fn-5 args-6)) (setq form-description-9 (nconc (list (quote (should (equal ... keys)))) (list :form (cons fn-5 args-6)) (if (eql value-7 (quote ert-form-evaluation-aborted-8)) nil (list :value value-7)) (let ((-explainer- (and ... ...))) (if -explainer- (progn (list :explanation ...)))))) (ert--signal-should-execution form-description-9)) nil (ert-fail form-description-9))
(let (form-description-9) (if (unwind-protect (setq value-7 (apply fn-5 args-6)) (setq form-description-9 (nconc (list (quote (should ...))) (list :form (cons fn-5 args-6)) (if (eql value-7 (quote ert-form-evaluation-aborted-8)) nil (list :value value-7)) (let ((-explainer- ...)) (if -explainer- (progn ...))))) (ert--signal-should-execution form-description-9)) nil (ert-fail form-description-9)))
(let ((value-7 (quote ert-form-evaluation-aborted-8))) (let (form-description-9) (if (unwind-protect (setq value-7 (apply fn-5 args-6)) (setq form-description-9 (nconc (list (quote ...)) (list :form (cons fn-5 args-6)) (if (eql value-7 ...) nil (list :value value-7)) (let (...) (if -explainer- ...)))) (ert--signal-should-execution form-description-9)) nil (ert-fail form-description-9))) value-7)
(let ((fn-5 (function equal)) (args-6 (list (evil-mc-get-command-keys-string :keys) keys))) (let ((value-7 (quote ert-form-evaluation-aborted-8))) (let (form-description-9) (if (unwind-protect (setq value-7 (apply fn-5 args-6)) (setq form-description-9 (nconc (list ...) (list :form ...) (if ... nil ...) (let ... ...))) (ert--signal-should-execution form-description-9)) nil (ert-fail form-description-9))) value-7))
(lambda (keys) (let ((fn-5 (function equal)) (args-6 (list (evil-mc-get-command-keys-string :keys) keys))) (let ((value-7 (quote ert-form-evaluation-aborted-8))) (let (form-description-9) (if (unwind-protect (setq value-7 (apply fn-5 args-6)) (setq form-description-9 (nconc ... ... ... ...)) (ert--signal-should-execution form-description-9)) nil (ert-fail form-description-9))) value-7)))("3yy")
apply((lambda (keys) (let ((fn-5 (function equal)) (args-6 (list (evil-mc-get-command-keys-string :keys) keys))) (let ((value-7 (quote ert-form-evaluation-aborted-8))) (let (form-description-9) (if (unwind-protect (setq value-7 (apply fn-5 args-6)) (setq form-description-9 (nconc ... ... ... ...)) (ert--signal-should-execution form-description-9)) nil (ert-fail form-description-9))) value-7))) "3yy")
ecukes-steps-call("The recorded command keys should be \"%s\"" ("3yy"))
Then("The recorded command keys should be \"%s\"" "3yy")
(let* ((key (nth 0 row)) (cmd (nth 1 row)) (out (nth 2 row))) (if (or (null out) (eq 0 (length out))) (progn (setq out key))) (evil-force-normal-state) (When "I press \"%s\"" key) (Then "The recorded command name should be \"%s\"" cmd) (Then "The recorded command keys should be \"%s\"" out) (if undo (progn (evil-force-normal-state) (When "I press \"u\""))))
(while --dolist-tail-- (setq row (car --dolist-tail--)) (let* ((key (nth 0 row)) (cmd (nth 1 row)) (out (nth 2 row))) (if (or (null out) (eq 0 (length out))) (progn (setq out key))) (evil-force-normal-state) (When "I press \"%s\"" key) (Then "The recorded command name should be \"%s\"" cmd) (Then "The recorded command keys should be \"%s\"" out) (if undo (progn (evil-force-normal-state) (When "I press \"u\"")))) (setq --dolist-tail-- (cdr --dolist-tail--)))
(let ((--dolist-tail-- rows) row) (while --dolist-tail-- (setq row (car --dolist-tail--)) (let* ((key (nth 0 row)) (cmd (nth 1 row)) (out (nth 2 row))) (if (or (null out) (eq 0 (length out))) (progn (setq out key))) (evil-force-normal-state) (When "I press \"%s\"" key) (Then "The recorded command name should be \"%s\"" cmd) (Then "The recorded command keys should be \"%s\"" out) (if undo (progn (evil-force-normal-state) (When "I press \"u\"")))) (setq --dolist-tail-- (cdr --dolist-tail--))))
(let ((header (car table)) (rows (cdr table))) (let ((--dolist-tail-- rows) row) (while --dolist-tail-- (setq row (car --dolist-tail--)) (let* ((key (nth 0 row)) (cmd (nth 1 row)) (out (nth 2 row))) (if (or (null out) (eq 0 (length out))) (progn (setq out key))) (evil-force-normal-state) (When "I press \"%s\"" key) (Then "The recorded command name should be \"%s\"" cmd) (Then "The recorded command keys should be \"%s\"" out) (if undo (progn (evil-force-normal-state) (When "I press \"u\"")))) (setq --dolist-tail-- (cdr --dolist-tail--)))))
run-and-verify((("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")))
(lambda (table) (run-and-verify table))((("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")))
apply((lambda (table) (run-and-verify table)) (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")))
ecukes-run-step([cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table nil nil])
#[(step) "\306! \232\307! \232\211\203\310\311 \f#\210\n\203 \310\312 \f#\210\310\313 \f#\210
\2037\314 !\211\2049\315\2029\316 \317H>\204I\320\321\322 D\"\210 \211\323\fI\210) \203\\\310\324 \f#\210\n\203f\310\325 \f#\210\f\305=\203w\326 \210\310\327 \"\210\202\226\f\315=\203\210\330 \210\310\331 \"\210\202\226\f\316=\203\226\332 \210\310\333 \"\210\310\334 \f#*\207" [steps step last first status success -first-item -last-item run-hook-with-args ecukes-reporter-before-first-step-hook ecukes-reporter-before-last-step-hook ecukes-reporter-before-step-hook ecukes-run-step failure skipped 0 signal wrong-type-argument ecukes-step 7 ecukes-reporter-after-first-step-hook ecukes-reporter-after-last-step-hook ecukes-stats-step-pass ecukes-reporter-after-step-success-hook ecukes-stats-step-fail ecukes-reporter-after-step-failed-hook ecukes-stats-step-skip ecukes-reporter-after-step-skipped-hook ecukes-reporter-after-step-hook cl-struct-ecukes-step-tags v] 5]([cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table nil nil])
-each(([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table nil nil]) #[(step) "\306! \232\307! \232\211\203\310\311 \f#\210\n\203 \310\312 \f#\210\310\313 \f#\210
\2037\314 !\211\2049\315\2029\316 \317H>\204I\320\321\322 D\"\210 \211\323\fI\210) \203\\\310\324 \f#\210\n\203f\310\325 \f#\210\f\305=\203w\326 \210\310\327 \"\210\202\226\f\315=\203\210\330 \210\310\331 \"\210\202\226\f\316=\203\226\332 \210\310\333 \"\210\310\334 \f#*\207" [steps step last first status success -first-item -last-item run-hook-with-args ecukes-reporter-before-first-step-hook ecukes-reporter-before-last-step-hook ecukes-reporter-before-step-hook ecukes-run-step failure skipped 0 signal wrong-type-argument ecukes-step 7 ecukes-reporter-after-first-step-hook ecukes-reporter-after-last-step-hook ecukes-stats-step-pass ecukes-reporter-after-step-success-hook ecukes-stats-step-fail ecukes-reporter-after-step-failed-hook ecukes-stats-step-skip ecukes-reporter-after-step-skipped-hook ecukes-reporter-after-step-hook cl-struct-ecukes-step-tags v] 5])
ecukes-run-steps(([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table nil nil]) t)
ecukes-run-scenario([cl-struct-ecukes-scenario "Record commands to copy lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table nil nil]) nil] t)
#[(scenario) "\306 \"\203g\307! \232\310! \232\f\203\311 \210
\203+\203+\f\203+\312
!\210 \2034\313\314 \"\210\n\203=\313\315 \"\210\313\316 \"\210\317 \"\210 \203Q\313\320 \"\210\n\203Z\313\321 \"\210\313\322 \"\210\323 \210\324\211*\207\313\325 \"\207" [scenarios scenario last first background-should-run background -contains\? -first-item -last-item ecukes-hooks-run-before ecukes-run-background-steps run-hook-with-args ecukes-reporter-before-first-scenario-hook ecukes-reporter-before-last-scenario-hook ecukes-reporter-before-scenario-hook ecukes-run-scenario ecukes-reporter-after-first-scenario-hook ecukes-reporter-after-last-scenario-hook ecukes-reporter-after-scenario-hook ecukes-hooks-run-after t ecukes-reporter-pending-scenario-hook background-success] 3]([cl-struct-ecukes-scenario "Record commands to copy lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table nil nil]) nil])
-each(([cl-struct-ecukes-scenario "Record commands to copy lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to change lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k k\nThis is the second line -1 -1 -1 t t t f f f k k k k\nThis is the third line -1 -1 -1 t t t f f f k k k k" py-string nil nil] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil nil] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to delete lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil nil] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil nil] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to work with surrounding delimiters" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to select inside parentheses" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"vib\"" "When" "I press \"vib\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-inner-paren\"" "Then" "The recorded command name should be \"evil-inner-paren\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"ib\"" "And" "The recorded command keys should be \"ib\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Record the command to join two lines" ([cl-struct-ecukes-step "Given I have one cursor at \"line\" in \"First line.\\nSecond line.\"" "Given" "I have one cursor at \"line\" in \"First line.\\nSecond line.\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"J\"" "When" "I press \"J\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-join\"" "Then" "The recorded command name should be \"evil-join\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"J\"" "And" "The recorded command keys should be \"J\"" nil regular nil nil]) nil]) #[(scenario) "\306 \"\203g\307! \232\310! \232\f\203\311 \210
\203+\203+\f\203+\312
!\210 \2034\313\314 \"\210\n\203=\313\315 \"\210\313\316 \"\210\317 \"\210 \203Q\313\320 \"\210\n\203Z\313\321 \"\210\313\322 \"\210\323 \210\324\211*\207\313\325 \"\207" [scenarios scenario last first background-should-run background -contains\? -first-item -last-item ecukes-hooks-run-before ecukes-run-background-steps run-hook-with-args ecukes-reporter-before-first-scenario-hook ecukes-reporter-before-last-scenario-hook ecukes-reporter-before-scenario-hook ecukes-run-scenario ecukes-reporter-after-first-scenario-hook ecukes-reporter-after-last-scenario-hook ecukes-reporter-after-scenario-hook ecukes-hooks-run-after t ecukes-reporter-pending-scenario-hook background-success] 3])
ecukes-run-feature([cl-struct-ecukes-feature [cl-struct-ecukes-intro "Record current command info\n" nil] nil nil ([cl-struct-ecukes-scenario "Record commands to copy lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to change lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k k\nThis is the second line -1 -1 -1 t t t f f f k k k k\nThis is the third line -1 -1 -1 t t t f f f k k k k" py-string nil nil] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil nil] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to delete lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil nil] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil nil] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to work with surrounding delimiters" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to select inside parentheses" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"vib\"" "When" "I press \"vib\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-inner-paren\"" "Then" "The recorded command name should be \"evil-inner-paren\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"ib\"" "And" "The recorded command keys should be \"ib\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Record the command to join two lines" ([cl-struct-ecukes-step "Given I have one cursor at \"line\" in \"First line.\\nSecond line.\"" "Given" "I have one cursor at \"line\" in \"First line.\\nSecond line.\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"J\"" "When" "I press \"J\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-join\"" "Then" "The recorded command name should be \"evil-join\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"J\"" "And" "The recorded command keys should be \"J\"" nil regular nil nil]) nil])])
#[(feature) "\304! =\305! =\211\203\306\307 \"\210\n\203\306\310 \"\210\306\311 \"\210\312 !\210 \2030\306\313 \"\210\n\2039\306\314 \"\210\306\315 \"*\207" [ecukes-features feature last first -first-item -last-item run-hook-with-args ecukes-reporter-before-first-feature-hook ecukes-reporter-before-last-feature-hook ecukes-reporter-before-feature-hook ecukes-run-feature ecukes-reporter-after-first-feature-hook ecukes-reporter-after-last-feature-hook ecukes-reporter-after-feature-hook] 4]([cl-struct-ecukes-feature [cl-struct-ecukes-intro "Record current command info\n" nil] nil nil ([cl-struct-ecukes-scenario "Record commands to copy lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to change lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k k\nThis is the second line -1 -1 -1 t t t f f f k k k k\nThis is the third line -1 -1 -1 t t t f f f k k k k" py-string nil nil] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil nil] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to delete lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil nil] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil nil] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to work with surrounding delimiters" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to select inside parentheses" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"vib\"" "When" "I press \"vib\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-inner-paren\"" "Then" "The recorded command name should be \"evil-inner-paren\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"ib\"" "And" "The recorded command keys should be \"ib\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Record the command to join two lines" ([cl-struct-ecukes-step "Given I have one cursor at \"line\" in \"First line.\\nSecond line.\"" "Given" "I have one cursor at \"line\" in \"First line.\\nSecond line.\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"J\"" "When" "I press \"J\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-join\"" "Then" "The recorded command name should be \"evil-join\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"J\"" "And" "The recorded command keys should be \"J\"" nil regular nil nil]) nil])])
-each(([cl-struct-ecukes-feature [cl-struct-ecukes-intro "Record current command info\n" nil] nil nil ([cl-struct-ecukes-scenario "Record commands to copy lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to change lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k k\nThis is the second line -1 -1 -1 t t t f f f k k k k\nThis is the third line -1 -1 -1 t t t f f f k k k k" py-string nil nil] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil nil] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to delete lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil nil] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil nil] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to work with surrounding delimiters" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to select inside parentheses" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"vib\"" "When" "I press \"vib\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-inner-paren\"" "Then" "The recorded command name should be \"evil-inner-paren\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"ib\"" "And" "The recorded command keys should be \"ib\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Record the command to join two lines" ([cl-struct-ecukes-step "Given I have one cursor at \"line\" in \"First line.\\nSecond line.\"" "Given" "I have one cursor at \"line\" in \"First line.\\nSecond line.\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"J\"" "When" "I press \"J\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-join\"" "Then" "The recorded command name should be \"evil-join\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"J\"" "And" "The recorded command keys should be \"J\"" nil regular nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Copy paste\n" nil] nil nil ([cl-struct-ecukes-scenario "Copy paste a word (before)" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here is a list of words, some are small, some big and some huge." py-string nil nil] [cl-struct-ecukes-step "And I press \"4fs\"" "And" "I press \"4fs\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"bywbbP\"" "And" "I press \"bywbbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here is a list of some words, some are some small, some some big and some huge." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a word (after)" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here is a list of words, some are small, some big and some huge." py-string nil nil] [cl-struct-ecukes-step "And I press \"4fs\"" "And" "I press \"4fs\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"bywbbp\"" "And" "I press \"bywbbp\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here is a list of wsome ords, some are ssome mall, some bsome ig and some huge." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "blue and big and purple and big and pink and big and small" py-string nil nil] [cl-struct-ecukes-step "And I press \"fg\"" "And" "I press \"fg\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"bb3ywP\"" "And" "I press \"bb3ywP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "blue and big and and big and purple and big and and big and pink and big and and big and small" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste up to a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"ytmbP\"" "And" "I press \"ytmbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "e are soHere are some words.\ne are soHere are some words.\ne are soHere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste till before a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yfmbP\"" "And" "I press \"yfmbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "e are somHere are some words.\ne are somHere are some words.\ne are somHere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste until the end of the line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fsy$$p\"" "And" "I type \"fsy$$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.some words.\nHere are some words.some words.\nHere are some words.some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yyp\"" "And" "I press \"yyp\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nHere are some words.\nThere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2yyP\"" "And" "I press \"2yyP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nThere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste with registers" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"b\"" "And" "I press \"b\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"a\" then type \"yw\"" "And" "I set the register to \"a\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"w\"" "And" "I press \"w\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"b\" then type \"yw\"" "And" "I set the register to \"b\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"w\"" "And" "I press \"w\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"c\" then type \"yw\"" "And" "I set the register to \"c\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$\"" "And" "I press \"$\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"a\" then type \"p\"" "And" "I set the register to \"a\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"b\" then type \"p\"" "And" "I set the register to \"b\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"c\" then type \"p\"" "And" "I set the register to \"c\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.Here are some \nHere are some words.Here are some \nHere are some words.Here are some " py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Delete text\n" nil] nil nil ([cl-struct-ecukes-scenario "Delete a word" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bdw\"" "And" "I type \"bdw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"and more \"" "Then" "I should see \"and more \"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a letter" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bx\"" "And" "I type \"bx\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"ords ords and more ords\"" "Then" "I should see \"ords ords and more ords\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a letter with count" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"b2x\"" "And" "I type \"b2x\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"rds rds and more rds\"" "Then" "I should see \"rds rds and more rds\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Lots of words words and more words\nLots of words words and more words\nLots of words words and more words\nLots of words words and more words" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fw3dw\"" "And" "I type \"fw3dw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Lots of more words\nLots of more words\nLots of more words\nLots of more words" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete a WORD" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "composite-words composite-words and more composite-words" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bdaW\"" "And" "I type \"bdaW\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"and more\"" "Then" "I should see \"and more\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThat is a line.\nThis is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"j\"" "And" "I press \"j\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dd\"" "And" "I press \"dd\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a line.\nThis is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete a line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "That is a line.\nThis is a line.\nAnother a line.\nThat is a line.\nThis is a line.\nThis is a line.\nThat is a line.\nAnother a line.\nThis is a line.\nLast line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2dd\"" "And" "I press \"2dd\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Another a line.\nThis is a line.\nThis is a line.\nLast line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete to the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fdD\"" "And" "I press \"fdD\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a super \nThis is a super \nThis is a super \nThis is a super " py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete to the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fdd^\"" "And" "I type \"fdd^\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "duper long line.\nduper long line.\nduper long line.\nduper long line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete up to a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fwdfh\"" "And" "I press \"fwdfh\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road patches of green.\nThe road patches of green.\nThe road patches of green.\nThe road patches of green." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete till before a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fwdth\"" "And" "I press \"fwdth\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road h patches of green.\nThe road h patches of green.\nThe road h patches of green.\nThe road h patches of green." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete till before a letter with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fw2dth\"" "And" "I press \"fw2dth\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road hes of green.\nThe road hes of green.\nThe road hes of green.\nThe road hes of green." py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Insert and change text\n" nil] nil nil ([cl-struct-ecukes-scenario "Text typed in insert state should be entered into the buffer" ([cl-struct-ecukes-step "When I replace the buffer text with \"aaa\"" "When" "I replace the buffer text with \"aaa\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"clfirst text \"" "And" "I type \"clfirst text \"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "first text first text first text" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Enter new lines" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cl\"" "And" "I press \"cl\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"word\" followed by enter" "And" "I press \"word\" followed by enter" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "word\nword\nword" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Open line below" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"oabc\"" "And" "I press \"oabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "bbb\nabc\nabc\nabc" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Open line above" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"Oabc\"" "And" "I press \"Oabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "abc\nabc\nabc\nbbb" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Insert at cursor" ([cl-struct-ecukes-step "When I replace the buffer text with \"a a a\"" "When" "I replace the buffer text with \"a a a\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"i-y-\"" "And" "I press \"i-y-\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"-y-a -y-a -y-a\"" "Then" "I should see \"-y-a -y-a -y-a\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Insert after cursor" ([cl-struct-ecukes-step "When I replace the buffer text with \"a a a\"" "When" "I replace the buffer text with \"a a a\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"a-x-\"" "And" "I press \"a-x-\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"a-x- a-x- a-x-\"" "Then" "I should see \"a-x- a-x- a-x-\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Insert at the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I go to word \"line\"" "And" "I go to word \"line\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"Istart \"" "And" "I type \"Istart \"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "start This is a line\nstart This is a line\nstart This is a line" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Insert at the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I go to word \"line\"" "And" "I go to word \"line\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"A end\"" "And" "I type \"A end\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a line end\nThis is a line end\nThis is a line end" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a letter" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"clw\"" "And" "I type \"clw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyw xyw xyw\"" "Then" "I should see \"xyw xyw xyw\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a word" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bcwabc\"" "And" "I type \"bcwabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc abc abc\"" "Then" "I should see \"abc abc abc\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a word at the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bcwabc\"" "And" "I type \"bcwabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "abc is a line\nabc is a line\nabc is a line" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change to the end of word" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bceabc\"" "And" "I type \"bceabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc abc abc\"" "Then" "I should see \"abc abc abc\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change to the end of word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "xyz yyz yyz xyz yyz yyz xyz yyz yyz xyz yyz yyz" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"b2ceabc\"" "And" "I type \"b2ceabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc yyz abc yyz abc yyz abc yyz\"" "Then" "I should see \"abc yyz abc yyz abc yyz abc yyz\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up to a letter (f)" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbcftxyz\"" "And" "I type \"bbbcftxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzher-test xyzher-test xyzher-test\"" "Then" "I should see \"xyzher-test xyzher-test xyzher-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up to a letter (f) with count" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbb2cftxyz\"" "And" "I type \"bbb2cftxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzest xyzest xyzest\"" "Then" "I should see \"xyzest xyzest xyzest\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up till before a letter (t)" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbcttxyz\"" "And" "I type \"bbbcttxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzther-test xyzther-test xyzther-test\"" "Then" "I should see \"xyzther-test xyzther-test xyzther-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a visual selection" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbv4lcxyz\"" "And" "I type \"bbbv4lcxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzer-test xyzer-test xyzer-test\"" "Then" "I should see \"xyzer-test xyzer-test xyzer-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a visual selection 2" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a simple line.\nThis is a simple line.\nThis is a simple line.\nThat is a simple line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bvt.cChanged text\"" "And" "I type \"bvt.cChanged text\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Changed text.\nChanged text.\nChanged text.\nThat is a simple line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change until the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wC\"" "And" "I press \"wC\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"line has changed.\"" "And" "I type \"line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This line has changed.\nThis line has changed.\nThis line has changed." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThis is a line.\nThat is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"cc\"" "And" "I type \"cc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The line has changed.\"" "And" "I type \"The line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The line has changed.\nThat is a line.\nThe line has changed.\nThat is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole visual line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThis is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"Vc\"" "And" "I press \"Vc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The line has changed.\"" "And" "I type \"The line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The line has changed.\nThat is a line.\nThe line has changed.\nThat is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThe next line.\nThe last line.\nThis is a line.\nThe next line.\nThe last line.\nThe last line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2cc\"" "And" "I press \"2cc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The first two lines have changed.\"" "And" "I type \"The first two lines have changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The first two lines have changed.\nThe last line.\nThe first two lines have changed.\nThe last line." py-string nil nil]) nil])] [cl-struct-ecukes-feature nil nil nil ([cl-struct-ecukes-scenario "The custom command should run at each cursor real and fake" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "There is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line" py-string nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"f0\"" "And" "I press \"f0\"" nil regular nil nil] [cl-struct-ecukes-step "And I call \"evil-mc-inc-num-at-each-cursor\"" "And" "I call \"evil-mc-inc-num-at-each-cursor\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "There is a 0 on this line\nThere is a 1 on this line\nThere is a 2 on this line\nThere is a 3 on this line\nThere is a 4 on this line\nThere is a 5 on this line" py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Text objects and surround" nil] nil nil ([cl-struct-ecukes-scenario "Change the bracket type" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"csbB\"" "And" "I press \"csbB\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a {very} very {long} line with {lots of} words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete brackets inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dib\"" "And" "I press \"dib\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a () very () line with () words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete brackets outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dab\"" "And" "I press \"dab\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a very line with words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy brackets inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (normal) line.\nThis is a (normal) line.\nThis is a (normal) line." py-string nil nil] [cl-struct-ecukes-step "And I press \"fn\"" "And" "I press \"fn\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yib\"" "And" "I press \"yib\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$p\"" "And" "I press \"$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (normal) line.normal\nThis is a (normal) line.normal\nThis is a (normal) line.normal" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy brackets outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (normal) line.\nThis is a (normal) line.\nThis is a (normal) line." py-string nil nil] [cl-struct-ecukes-step "And I press \"fn\"" "And" "I press \"fn\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yab\"" "And" "I press \"yab\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$p\"" "And" "I press \"$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (normal) line.(normal)\nThis is a (normal) line.(normal)\nThis is a (normal) line.(normal)" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a parenthesis expression inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (sentence) with brackets.\nThis is a (sentence) with brackets.\nThis is a (sentence) with brackets." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"f(cibchanged\"" "And" "I type \"f(cibchanged\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (changed) with brackets.\nThis is a (changed) with brackets.\nThis is a (changed) with brackets." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a parenthesis expression outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (sentence) with brackets.\nThis is a (sentence) with brackets.\nThis is a (sentence) with brackets." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"f(cabchanged\"" "And" "I type \"f(cabchanged\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a changed with brackets.\nThis is a changed with brackets.\nThis is a changed with brackets." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Surround a word with quotes" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a simple line.\nThis is a simple line.\nThat is a simple line.\nThis is a simple line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fmviwS'\"" "And" "I type \"fmviwS'\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a 'simple' line.\nThis is a 'simple' line.\nThat is a simple line.\nThis is a 'simple' line." py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Visual region\n" nil] nil nil ([cl-struct-ecukes-scenario "Change selected text with the cursor at the end of the region" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wve\"" "And" "I press \"wve\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cisn't\"" "And" "I press \"cisn't\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This isn't a line.\nThis isn't a line.\nThis isn't a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change selected text with the cursor at the beginning of the region" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wveo\"" "And" "I press \"wveo\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cisn't\"" "And" "I press \"cisn't\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This isn't a line.\nThis isn't a line.\nThis isn't a line." py-string nil nil]) nil])]) #[(feature) "\304! =\305! =\211\203\306\307 \"\210\n\203\306\310 \"\210\306\311 \"\210\312 !\210 \2030\306\313 \"\210\n\2039\306\314 \"\210\306\315 \"*\207" [ecukes-features feature last first -first-item -last-item run-hook-with-args ecukes-reporter-before-first-feature-hook ecukes-reporter-before-last-feature-hook ecukes-reporter-before-feature-hook ecukes-run-feature ecukes-reporter-after-first-feature-hook ecukes-reporter-after-last-feature-hook ecukes-reporter-after-feature-hook] 4])
ecukes-run-features(([cl-struct-ecukes-feature [cl-struct-ecukes-intro "Record current command info\n" nil] nil nil ([cl-struct-ecukes-scenario "Record commands to copy lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to change lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k k\nThis is the second line -1 -1 -1 t t t f f f k k k k\nThis is the third line -1 -1 -1 t t t f f f k k k k" py-string nil nil] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil nil] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to delete lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil nil] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil nil] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to work with surrounding delimiters" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to select inside parentheses" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"vib\"" "When" "I press \"vib\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-inner-paren\"" "Then" "The recorded command name should be \"evil-inner-paren\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"ib\"" "And" "The recorded command keys should be \"ib\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Record the command to join two lines" ([cl-struct-ecukes-step "Given I have one cursor at \"line\" in \"First line.\\nSecond line.\"" "Given" "I have one cursor at \"line\" in \"First line.\\nSecond line.\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"J\"" "When" "I press \"J\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-join\"" "Then" "The recorded command name should be \"evil-join\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"J\"" "And" "The recorded command keys should be \"J\"" nil regular nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Copy paste\n" nil] nil nil ([cl-struct-ecukes-scenario "Copy paste a word (before)" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here is a list of words, some are small, some big and some huge." py-string nil nil] [cl-struct-ecukes-step "And I press \"4fs\"" "And" "I press \"4fs\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"bywbbP\"" "And" "I press \"bywbbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here is a list of some words, some are some small, some some big and some huge." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a word (after)" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here is a list of words, some are small, some big and some huge." py-string nil nil] [cl-struct-ecukes-step "And I press \"4fs\"" "And" "I press \"4fs\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"bywbbp\"" "And" "I press \"bywbbp\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here is a list of wsome ords, some are ssome mall, some bsome ig and some huge." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "blue and big and purple and big and pink and big and small" py-string nil nil] [cl-struct-ecukes-step "And I press \"fg\"" "And" "I press \"fg\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"bb3ywP\"" "And" "I press \"bb3ywP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "blue and big and and big and purple and big and and big and pink and big and and big and small" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste up to a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"ytmbP\"" "And" "I press \"ytmbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "e are soHere are some words.\ne are soHere are some words.\ne are soHere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste till before a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yfmbP\"" "And" "I press \"yfmbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "e are somHere are some words.\ne are somHere are some words.\ne are somHere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste until the end of the line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fsy$$p\"" "And" "I type \"fsy$$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.some words.\nHere are some words.some words.\nHere are some words.some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yyp\"" "And" "I press \"yyp\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nHere are some words.\nThere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2yyP\"" "And" "I press \"2yyP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nThere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste with registers" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"b\"" "And" "I press \"b\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"a\" then type \"yw\"" "And" "I set the register to \"a\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"w\"" "And" "I press \"w\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"b\" then type \"yw\"" "And" "I set the register to \"b\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"w\"" "And" "I press \"w\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"c\" then type \"yw\"" "And" "I set the register to \"c\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$\"" "And" "I press \"$\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"a\" then type \"p\"" "And" "I set the register to \"a\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"b\" then type \"p\"" "And" "I set the register to \"b\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"c\" then type \"p\"" "And" "I set the register to \"c\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.Here are some \nHere are some words.Here are some \nHere are some words.Here are some " py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Delete text\n" nil] nil nil ([cl-struct-ecukes-scenario "Delete a word" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bdw\"" "And" "I type \"bdw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"and more \"" "Then" "I should see \"and more \"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a letter" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bx\"" "And" "I type \"bx\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"ords ords and more ords\"" "Then" "I should see \"ords ords and more ords\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a letter with count" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"b2x\"" "And" "I type \"b2x\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"rds rds and more rds\"" "Then" "I should see \"rds rds and more rds\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Lots of words words and more words\nLots of words words and more words\nLots of words words and more words\nLots of words words and more words" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fw3dw\"" "And" "I type \"fw3dw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Lots of more words\nLots of more words\nLots of more words\nLots of more words" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete a WORD" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "composite-words composite-words and more composite-words" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bdaW\"" "And" "I type \"bdaW\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"and more\"" "Then" "I should see \"and more\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThat is a line.\nThis is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"j\"" "And" "I press \"j\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dd\"" "And" "I press \"dd\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a line.\nThis is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete a line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "That is a line.\nThis is a line.\nAnother a line.\nThat is a line.\nThis is a line.\nThis is a line.\nThat is a line.\nAnother a line.\nThis is a line.\nLast line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2dd\"" "And" "I press \"2dd\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Another a line.\nThis is a line.\nThis is a line.\nLast line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete to the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fdD\"" "And" "I press \"fdD\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a super \nThis is a super \nThis is a super \nThis is a super " py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete to the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fdd^\"" "And" "I type \"fdd^\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "duper long line.\nduper long line.\nduper long line.\nduper long line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete up to a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fwdfh\"" "And" "I press \"fwdfh\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road patches of green.\nThe road patches of green.\nThe road patches of green.\nThe road patches of green." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete till before a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fwdth\"" "And" "I press \"fwdth\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road h patches of green.\nThe road h patches of green.\nThe road h patches of green.\nThe road h patches of green." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete till before a letter with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fw2dth\"" "And" "I press \"fw2dth\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road hes of green.\nThe road hes of green.\nThe road hes of green.\nThe road hes of green." py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Insert and change text\n" nil] nil nil ([cl-struct-ecukes-scenario "Text typed in insert state should be entered into the buffer" ([cl-struct-ecukes-step "When I replace the buffer text with \"aaa\"" "When" "I replace the buffer text with \"aaa\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"clfirst text \"" "And" "I type \"clfirst text \"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "first text first text first text" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Enter new lines" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cl\"" "And" "I press \"cl\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"word\" followed by enter" "And" "I press \"word\" followed by enter" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "word\nword\nword" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Open line below" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"oabc\"" "And" "I press \"oabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "bbb\nabc\nabc\nabc" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Open line above" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"Oabc\"" "And" "I press \"Oabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "abc\nabc\nabc\nbbb" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Insert at cursor" ([cl-struct-ecukes-step "When I replace the buffer text with \"a a a\"" "When" "I replace the buffer text with \"a a a\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"i-y-\"" "And" "I press \"i-y-\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"-y-a -y-a -y-a\"" "Then" "I should see \"-y-a -y-a -y-a\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Insert after cursor" ([cl-struct-ecukes-step "When I replace the buffer text with \"a a a\"" "When" "I replace the buffer text with \"a a a\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"a-x-\"" "And" "I press \"a-x-\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"a-x- a-x- a-x-\"" "Then" "I should see \"a-x- a-x- a-x-\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Insert at the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I go to word \"line\"" "And" "I go to word \"line\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"Istart \"" "And" "I type \"Istart \"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "start This is a line\nstart This is a line\nstart This is a line" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Insert at the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I go to word \"line\"" "And" "I go to word \"line\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"A end\"" "And" "I type \"A end\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a line end\nThis is a line end\nThis is a line end" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a letter" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"clw\"" "And" "I type \"clw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyw xyw xyw\"" "Then" "I should see \"xyw xyw xyw\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a word" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bcwabc\"" "And" "I type \"bcwabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc abc abc\"" "Then" "I should see \"abc abc abc\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a word at the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bcwabc\"" "And" "I type \"bcwabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "abc is a line\nabc is a line\nabc is a line" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change to the end of word" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bceabc\"" "And" "I type \"bceabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc abc abc\"" "Then" "I should see \"abc abc abc\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change to the end of word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "xyz yyz yyz xyz yyz yyz xyz yyz yyz xyz yyz yyz" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"b2ceabc\"" "And" "I type \"b2ceabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc yyz abc yyz abc yyz abc yyz\"" "Then" "I should see \"abc yyz abc yyz abc yyz abc yyz\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up to a letter (f)" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbcftxyz\"" "And" "I type \"bbbcftxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzher-test xyzher-test xyzher-test\"" "Then" "I should see \"xyzher-test xyzher-test xyzher-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up to a letter (f) with count" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbb2cftxyz\"" "And" "I type \"bbb2cftxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzest xyzest xyzest\"" "Then" "I should see \"xyzest xyzest xyzest\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up till before a letter (t)" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbcttxyz\"" "And" "I type \"bbbcttxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzther-test xyzther-test xyzther-test\"" "Then" "I should see \"xyzther-test xyzther-test xyzther-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a visual selection" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbv4lcxyz\"" "And" "I type \"bbbv4lcxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzer-test xyzer-test xyzer-test\"" "Then" "I should see \"xyzer-test xyzer-test xyzer-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a visual selection 2" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a simple line.\nThis is a simple line.\nThis is a simple line.\nThat is a simple line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bvt.cChanged text\"" "And" "I type \"bvt.cChanged text\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Changed text.\nChanged text.\nChanged text.\nThat is a simple line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change until the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wC\"" "And" "I press \"wC\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"line has changed.\"" "And" "I type \"line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This line has changed.\nThis line has changed.\nThis line has changed." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThis is a line.\nThat is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"cc\"" "And" "I type \"cc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The line has changed.\"" "And" "I type \"The line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The line has changed.\nThat is a line.\nThe line has changed.\nThat is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole visual line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThis is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"Vc\"" "And" "I press \"Vc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The line has changed.\"" "And" "I type \"The line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The line has changed.\nThat is a line.\nThe line has changed.\nThat is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThe next line.\nThe last line.\nThis is a line.\nThe next line.\nThe last line.\nThe last line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2cc\"" "And" "I press \"2cc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The first two lines have changed.\"" "And" "I type \"The first two lines have changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The first two lines have changed.\nThe last line.\nThe first two lines have changed.\nThe last line." py-string nil nil]) nil])] [cl-struct-ecukes-feature nil nil nil ([cl-struct-ecukes-scenario "The custom command should run at each cursor real and fake" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "There is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line" py-string nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"f0\"" "And" "I press \"f0\"" nil regular nil nil] [cl-struct-ecukes-step "And I call \"evil-mc-inc-num-at-each-cursor\"" "And" "I call \"evil-mc-inc-num-at-each-cursor\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "There is a 0 on this line\nThere is a 1 on this line\nThere is a 2 on this line\nThere is a 3 on this line\nThere is a 4 on this line\nThere is a 5 on this line" py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Text objects and surround" nil] nil nil ([cl-struct-ecukes-scenario "Change the bracket type" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"csbB\"" "And" "I press \"csbB\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a {very} very {long} line with {lots of} words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete brackets inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dib\"" "And" "I press \"dib\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a () very () line with () words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete brackets outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dab\"" "And" "I press \"dab\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a very line with words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy brackets inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (normal) line.\nThis is a (normal) line.\nThis is a (normal) line." py-string nil nil] [cl-struct-ecukes-step "And I press \"fn\"" "And" "I press \"fn\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yib\"" "And" "I press \"yib\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$p\"" "And" "I press \"$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (normal) line.normal\nThis is a (normal) line.normal\nThis is a (normal) line.normal" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy brackets outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (normal) line.\nThis is a (normal) line.\nThis is a (normal) line." py-string nil nil] [cl-struct-ecukes-step "And I press \"fn\"" "And" "I press \"fn\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yab\"" "And" "I press \"yab\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$p\"" "And" "I press \"$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (normal) line.(normal)\nThis is a (normal) line.(normal)\nThis is a (normal) line.(normal)" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a parenthesis expression inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (sentence) with brackets.\nThis is a (sentence) with brackets.\nThis is a (sentence) with brackets." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"f(cibchanged\"" "And" "I type \"f(cibchanged\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (changed) with brackets.\nThis is a (changed) with brackets.\nThis is a (changed) with brackets." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a parenthesis expression outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (sentence) with brackets.\nThis is a (sentence) with brackets.\nThis is a (sentence) with brackets." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"f(cabchanged\"" "And" "I type \"f(cabchanged\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a changed with brackets.\nThis is a changed with brackets.\nThis is a changed with brackets." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Surround a word with quotes" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a simple line.\nThis is a simple line.\nThat is a simple line.\nThis is a simple line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fmviwS'\"" "And" "I type \"fmviwS'\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a 'simple' line.\nThis is a 'simple' line.\nThat is a simple line.\nThis is a 'simple' line." py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Visual region\n" nil] nil nil ([cl-struct-ecukes-scenario "Change selected text with the cursor at the end of the region" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wve\"" "And" "I press \"wve\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cisn't\"" "And" "I press \"cisn't\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This isn't a line.\nThis isn't a line.\nThis isn't a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change selected text with the cursor at the beginning of the region" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wveo\"" "And" "I press \"wveo\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cisn't\"" "And" "I press \"cisn't\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This isn't a line.\nThis isn't a line.\nThis isn't a line." py-string nil nil]) nil])]))
ecukes-run(("/Users/aaronjensen/Source/evil-mc/features/evil-mc-command-info.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-copy-paste.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-delete.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-insert.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-run-for-each-cursor.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-text-objects.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-visual.feature"))
(let ((feature-files)) (-each args (function (lambda (arg) (let ((path (f-expand arg ...))) (if (f-dir\? path) (-each (f-files path ... ...) (function ...)) (setq feature-files (cons path feature-files))))))) (ecukes-run feature-files))
ecukes-cli/run("features")
apply(ecukes-cli/run "features")
commander--handle-command(nil)
commander-parse(("--debug"))
(if commander-parsing-done nil (commander-parse (or commander-args (cdr command-line-args-left))))
eval-buffer(#<buffer *load*> nil "/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el" nil t)
load-with-code-conversion("/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el" "/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el" nil t)
load("/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el" nil t t)
command-line-1(("-scriptload" "/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el"))
command-line()
normal-top-level()
-- INSERT --
-- INSERT --
Undo branch point!
-- INSERT --
Undo branch point!
-- INSERT --
Undo branch point!
-- INSERT --
Undo branch point!
-- INSERT --
.
 signal(ert-test-failed (((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal "ctk" "3ctk") :value nil :explanation (arrays-of-different-length 3 4 "ctk" "3ctk" first-mismatch-at 0))))
ert-fail(((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal "ctk" "3ctk") :value nil :explanation (arrays-of-different-length 3 4 "ctk" "3ctk" first-mismatch-at 0)))
(if (unwind-protect (setq value-7 (apply fn-5 args-6)) (setq form-description-9 (nconc (list (quote (should (equal ... keys)))) (list :form (cons fn-5 args-6)) (if (eql value-7 (quote ert-form-evaluation-aborted-8)) nil (list :value value-7)) (let ((-explainer- (and ... ...))) (if -explainer- (progn (list :explanation ...)))))) (ert--signal-should-execution form-description-9)) nil (ert-fail form-description-9))
(let (form-description-9) (if (unwind-protect (setq value-7 (apply fn-5 args-6)) (setq form-description-9 (nconc (list (quote (should ...))) (list :form (cons fn-5 args-6)) (if (eql value-7 (quote ert-form-evaluation-aborted-8)) nil (list :value value-7)) (let ((-explainer- ...)) (if -explainer- (progn ...))))) (ert--signal-should-execution form-description-9)) nil (ert-fail form-description-9)))
(let ((value-7 (quote ert-form-evaluation-aborted-8))) (let (form-description-9) (if (unwind-protect (setq value-7 (apply fn-5 args-6)) (setq form-description-9 (nconc (list (quote ...)) (list :form (cons fn-5 args-6)) (if (eql value-7 ...) nil (list :value value-7)) (let (...) (if -explainer- ...)))) (ert--signal-should-execution form-description-9)) nil (ert-fail form-description-9))) value-7)
(let ((fn-5 (function equal)) (args-6 (list (evil-mc-get-command-keys-string :keys) keys))) (let ((value-7 (quote ert-form-evaluation-aborted-8))) (let (form-description-9) (if (unwind-protect (setq value-7 (apply fn-5 args-6)) (setq form-description-9 (nconc (list ...) (list :form ...) (if ... nil ...) (let ... ...))) (ert--signal-should-execution form-description-9)) nil (ert-fail form-description-9))) value-7))
(lambda (keys) (let ((fn-5 (function equal)) (args-6 (list (evil-mc-get-command-keys-string :keys) keys))) (let ((value-7 (quote ert-form-evaluation-aborted-8))) (let (form-description-9) (if (unwind-protect (setq value-7 (apply fn-5 args-6)) (setq form-description-9 (nconc ... ... ... ...)) (ert--signal-should-execution form-description-9)) nil (ert-fail form-description-9))) value-7)))("3ctk")
apply((lambda (keys) (let ((fn-5 (function equal)) (args-6 (list (evil-mc-get-command-keys-string :keys) keys))) (let ((value-7 (quote ert-form-evaluation-aborted-8))) (let (form-description-9) (if (unwind-protect (setq value-7 (apply fn-5 args-6)) (setq form-description-9 (nconc ... ... ... ...)) (ert--signal-should-execution form-description-9)) nil (ert-fail form-description-9))) value-7))) "3ctk")
ecukes-steps-call("The recorded command keys should be \"%s\"" ("3ctk"))
Then("The recorded command keys should be \"%s\"" "3ctk")
(let* ((key (nth 0 row)) (cmd (nth 1 row)) (out (nth 2 row))) (if (or (null out) (eq 0 (length out))) (progn (setq out key))) (evil-force-normal-state) (When "I press \"%s\"" key) (Then "The recorded command name should be \"%s\"" cmd) (Then "The recorded command keys should be \"%s\"" out) (if undo (progn (evil-force-normal-state) (When "I press \"u\""))))
(while --dolist-tail-- (setq row (car --dolist-tail--)) (let* ((key (nth 0 row)) (cmd (nth 1 row)) (out (nth 2 row))) (if (or (null out) (eq 0 (length out))) (progn (setq out key))) (evil-force-normal-state) (When "I press \"%s\"" key) (Then "The recorded command name should be \"%s\"" cmd) (Then "The recorded command keys should be \"%s\"" out) (if undo (progn (evil-force-normal-state) (When "I press \"u\"")))) (setq --dolist-tail-- (cdr --dolist-tail--)))
(let ((--dolist-tail-- rows) row) (while --dolist-tail-- (setq row (car --dolist-tail--)) (let* ((key (nth 0 row)) (cmd (nth 1 row)) (out (nth 2 row))) (if (or (null out) (eq 0 (length out))) (progn (setq out key))) (evil-force-normal-state) (When "I press \"%s\"" key) (Then "The recorded command name should be \"%s\"" cmd) (Then "The recorded command keys should be \"%s\"" out) (if undo (progn (evil-force-normal-state) (When "I press \"u\"")))) (setq --dolist-tail-- (cdr --dolist-tail--))))
(let ((header (car table)) (rows (cdr table))) (let ((--dolist-tail-- rows) row) (while --dolist-tail-- (setq row (car --dolist-tail--)) (let* ((key (nth 0 row)) (cmd (nth 1 row)) (out (nth 2 row))) (if (or (null out) (eq 0 (length out))) (progn (setq out key))) (evil-force-normal-state) (When "I press \"%s\"" key) (Then "The recorded command name should be \"%s\"" cmd) (Then "The recorded command keys should be \"%s\"" out) (if undo (progn (evil-force-normal-state) (When "I press \"u\"")))) (setq --dolist-tail-- (cdr --dolist-tail--)))))
run-and-verify((("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) t)
(lambda (table) (run-and-verify table t))((("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")))
apply((lambda (table) (run-and-verify table t)) (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")))
ecukes-run-step([cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table nil nil])
#[(step) "\306! \232\307! \232\211\203\310\311 \f#\210\n\203 \310\312 \f#\210\310\313 \f#\210
\2037\314 !\211\2049\315\2029\316 \317H>\204I\320\321\322 D\"\210 \211\323\fI\210) \203\\\310\324 \f#\210\n\203f\310\325 \f#\210\f\305=\203w\326 \210\310\327 \"\210\202\226\f\315=\203\210\330 \210\310\331 \"\210\202\226\f\316=\203\226\332 \210\310\333 \"\210\310\334 \f#*\207" [steps step last first status success -first-item -last-item run-hook-with-args ecukes-reporter-before-first-step-hook ecukes-reporter-before-last-step-hook ecukes-reporter-before-step-hook ecukes-run-step failure skipped 0 signal wrong-type-argument ecukes-step 7 ecukes-reporter-after-first-step-hook ecukes-reporter-after-last-step-hook ecukes-stats-step-pass ecukes-reporter-after-step-success-hook ecukes-stats-step-fail ecukes-reporter-after-step-failed-hook ecukes-stats-step-skip ecukes-reporter-after-step-skipped-hook ecukes-reporter-after-step-hook cl-struct-ecukes-step-tags v] 5]([cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table nil nil])
-each(([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k k\nThis is the second line -1 -1 -1 t t t f f f k k k k\nThis is the third line -1 -1 -1 t t t f f f k k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table nil nil]) #[(step) "\306! \232\307! \232\211\203\310\311 \f#\210\n\203 \310\312 \f#\210\310\313 \f#\210
\2037\314 !\211\2049\315\2029\316 \317H>\204I\320\321\322 D\"\210 \211\323\fI\210) \203\\\310\324 \f#\210\n\203f\310\325 \f#\210\f\305=\203w\326 \210\310\327 \"\210\202\226\f\315=\203\210\330 \210\310\331 \"\210\202\226\f\316=\203\226\332 \210\310\333 \"\210\310\334 \f#*\207" [steps step last first status success -first-item -last-item run-hook-with-args ecukes-reporter-before-first-step-hook ecukes-reporter-before-last-step-hook ecukes-reporter-before-step-hook ecukes-run-step failure skipped 0 signal wrong-type-argument ecukes-step 7 ecukes-reporter-after-first-step-hook ecukes-reporter-after-last-step-hook ecukes-stats-step-pass ecukes-reporter-after-step-success-hook ecukes-stats-step-fail ecukes-reporter-after-step-failed-hook ecukes-stats-step-skip ecukes-reporter-after-step-skipped-hook ecukes-reporter-after-step-hook cl-struct-ecukes-step-tags v] 5])
ecukes-run-steps(([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k k\nThis is the second line -1 -1 -1 t t t f f f k k k k\nThis is the third line -1 -1 -1 t t t f f f k k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table nil nil]) t)
ecukes-run-scenario([cl-struct-ecukes-scenario "Record commands to change lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k k\nThis is the second line -1 -1 -1 t t t f f f k k k k\nThis is the third line -1 -1 -1 t t t f f f k k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table nil nil]) nil] t)
#[(scenario) "\306 \"\203g\307! \232\310! \232\f\203\311 \210
\203+\203+\f\203+\312
!\210 \2034\313\314 \"\210\n\203=\313\315 \"\210\313\316 \"\210\317 \"\210 \203Q\313\320 \"\210\n\203Z\313\321 \"\210\313\322 \"\210\323 \210\324\211*\207\313\325 \"\207" [scenarios scenario last first background-should-run background -contains\? -first-item -last-item ecukes-hooks-run-before ecukes-run-background-steps run-hook-with-args ecukes-reporter-before-first-scenario-hook ecukes-reporter-before-last-scenario-hook ecukes-reporter-before-scenario-hook ecukes-run-scenario ecukes-reporter-after-first-scenario-hook ecukes-reporter-after-last-scenario-hook ecukes-reporter-after-scenario-hook ecukes-hooks-run-after t ecukes-reporter-pending-scenario-hook background-success] 3]([cl-struct-ecukes-scenario "Record commands to change lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k k\nThis is the second line -1 -1 -1 t t t f f f k k k k\nThis is the third line -1 -1 -1 t t t f f f k k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table nil nil]) nil])
-each(([cl-struct-ecukes-scenario "Record commands to copy lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"yy\" \"3yy\") :value nil :explanation (arrays-of-different-length 2 3 \"yy\" \"3yy\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to change lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k k\nThis is the second line -1 -1 -1 t t t f f f k k k k\nThis is the third line -1 -1 -1 t t t f f f k k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to delete lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil nil] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil nil] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to work with surrounding delimiters" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to select inside parentheses" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"vib\"" "When" "I press \"vib\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-inner-paren\"" "Then" "The recorded command name should be \"evil-inner-paren\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"ib\"" "And" "The recorded command keys should be \"ib\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Record the command to join two lines" ([cl-struct-ecukes-step "Given I have one cursor at \"line\" in \"First line.\\nSecond line.\"" "Given" "I have one cursor at \"line\" in \"First line.\\nSecond line.\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"J\"" "When" "I press \"J\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-join\"" "Then" "The recorded command name should be \"evil-join\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"J\"" "And" "The recorded command keys should be \"J\"" nil regular nil nil]) nil]) #[(scenario) "\306 \"\203g\307! \232\310! \232\f\203\311 \210
\203+\203+\f\203+\312
!\210 \2034\313\314 \"\210\n\203=\313\315 \"\210\313\316 \"\210\317 \"\210 \203Q\313\320 \"\210\n\203Z\313\321 \"\210\313\322 \"\210\323 \210\324\211*\207\313\325 \"\207" [scenarios scenario last first background-should-run background -contains\? -first-item -last-item ecukes-hooks-run-before ecukes-run-background-steps run-hook-with-args ecukes-reporter-before-first-scenario-hook ecukes-reporter-before-last-scenario-hook ecukes-reporter-before-scenario-hook ecukes-run-scenario ecukes-reporter-after-first-scenario-hook ecukes-reporter-after-last-scenario-hook ecukes-reporter-after-scenario-hook ecukes-hooks-run-after t ecukes-reporter-pending-scenario-hook background-success] 3])
ecukes-run-feature([cl-struct-ecukes-feature [cl-struct-ecukes-intro "Record current command info\n" nil] nil nil ([cl-struct-ecukes-scenario "Record commands to copy lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"yy\" \"3yy\") :value nil :explanation (arrays-of-different-length 2 3 \"yy\" \"3yy\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to change lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k k\nThis is the second line -1 -1 -1 t t t f f f k k k k\nThis is the third line -1 -1 -1 t t t f f f k k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to delete lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil nil] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil nil] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to work with surrounding delimiters" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to select inside parentheses" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"vib\"" "When" "I press \"vib\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-inner-paren\"" "Then" "The recorded command name should be \"evil-inner-paren\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"ib\"" "And" "The recorded command keys should be \"ib\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Record the command to join two lines" ([cl-struct-ecukes-step "Given I have one cursor at \"line\" in \"First line.\\nSecond line.\"" "Given" "I have one cursor at \"line\" in \"First line.\\nSecond line.\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"J\"" "When" "I press \"J\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-join\"" "Then" "The recorded command name should be \"evil-join\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"J\"" "And" "The recorded command keys should be \"J\"" nil regular nil nil]) nil])])
#[(feature) "\304! =\305! =\211\203\306\307 \"\210\n\203\306\310 \"\210\306\311 \"\210\312 !\210 \2030\306\313 \"\210\n\2039\306\314 \"\210\306\315 \"*\207" [ecukes-features feature last first -first-item -last-item run-hook-with-args ecukes-reporter-before-first-feature-hook ecukes-reporter-before-last-feature-hook ecukes-reporter-before-feature-hook ecukes-run-feature ecukes-reporter-after-first-feature-hook ecukes-reporter-after-last-feature-hook ecukes-reporter-after-feature-hook] 4]([cl-struct-ecukes-feature [cl-struct-ecukes-intro "Record current command info\n" nil] nil nil ([cl-struct-ecukes-scenario "Record commands to copy lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"yy\" \"3yy\") :value nil :explanation (arrays-of-different-length 2 3 \"yy\" \"3yy\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to change lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k k\nThis is the second line -1 -1 -1 t t t f f f k k k k\nThis is the third line -1 -1 -1 t t t f f f k k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to delete lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil nil] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil nil] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to work with surrounding delimiters" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to select inside parentheses" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"vib\"" "When" "I press \"vib\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-inner-paren\"" "Then" "The recorded command name should be \"evil-inner-paren\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"ib\"" "And" "The recorded command keys should be \"ib\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Record the command to join two lines" ([cl-struct-ecukes-step "Given I have one cursor at \"line\" in \"First line.\\nSecond line.\"" "Given" "I have one cursor at \"line\" in \"First line.\\nSecond line.\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"J\"" "When" "I press \"J\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-join\"" "Then" "The recorded command name should be \"evil-join\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"J\"" "And" "The recorded command keys should be \"J\"" nil regular nil nil]) nil])])
-each(([cl-struct-ecukes-feature [cl-struct-ecukes-intro "Record current command info\n" nil] nil nil ([cl-struct-ecukes-scenario "Record commands to copy lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"yy\" \"3yy\") :value nil :explanation (arrays-of-different-length 2 3 \"yy\" \"3yy\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to change lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k k\nThis is the second line -1 -1 -1 t t t f f f k k k k\nThis is the third line -1 -1 -1 t t t f f f k k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to delete lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil nil] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil nil] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to work with surrounding delimiters" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to select inside parentheses" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"vib\"" "When" "I press \"vib\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-inner-paren\"" "Then" "The recorded command name should be \"evil-inner-paren\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"ib\"" "And" "The recorded command keys should be \"ib\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Record the command to join two lines" ([cl-struct-ecukes-step "Given I have one cursor at \"line\" in \"First line.\\nSecond line.\"" "Given" "I have one cursor at \"line\" in \"First line.\\nSecond line.\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"J\"" "When" "I press \"J\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-join\"" "Then" "The recorded command name should be \"evil-join\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"J\"" "And" "The recorded command keys should be \"J\"" nil regular nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Copy paste\n" nil] nil nil ([cl-struct-ecukes-scenario "Copy paste a word (before)" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here is a list of words, some are small, some big and some huge." py-string nil nil] [cl-struct-ecukes-step "And I press \"4fs\"" "And" "I press \"4fs\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"bywbbP\"" "And" "I press \"bywbbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here is a list of some words, some are some small, some some big and some huge." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a word (after)" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here is a list of words, some are small, some big and some huge." py-string nil nil] [cl-struct-ecukes-step "And I press \"4fs\"" "And" "I press \"4fs\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"bywbbp\"" "And" "I press \"bywbbp\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here is a list of wsome ords, some are ssome mall, some bsome ig and some huge." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "blue and big and purple and big and pink and big and small" py-string nil nil] [cl-struct-ecukes-step "And I press \"fg\"" "And" "I press \"fg\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"bb3ywP\"" "And" "I press \"bb3ywP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "blue and big and and big and purple and big and and big and pink and big and and big and small" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste up to a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"ytmbP\"" "And" "I press \"ytmbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "e are soHere are some words.\ne are soHere are some words.\ne are soHere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste till before a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yfmbP\"" "And" "I press \"yfmbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "e are somHere are some words.\ne are somHere are some words.\ne are somHere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste until the end of the line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fsy$$p\"" "And" "I type \"fsy$$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.some words.\nHere are some words.some words.\nHere are some words.some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yyp\"" "And" "I press \"yyp\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nHere are some words.\nThere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2yyP\"" "And" "I press \"2yyP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nThere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste with registers" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"b\"" "And" "I press \"b\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"a\" then type \"yw\"" "And" "I set the register to \"a\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"w\"" "And" "I press \"w\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"b\" then type \"yw\"" "And" "I set the register to \"b\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"w\"" "And" "I press \"w\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"c\" then type \"yw\"" "And" "I set the register to \"c\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$\"" "And" "I press \"$\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"a\" then type \"p\"" "And" "I set the register to \"a\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"b\" then type \"p\"" "And" "I set the register to \"b\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"c\" then type \"p\"" "And" "I set the register to \"c\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.Here are some \nHere are some words.Here are some \nHere are some words.Here are some " py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Delete text\n" nil] nil nil ([cl-struct-ecukes-scenario "Delete a word" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bdw\"" "And" "I type \"bdw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"and more \"" "Then" "I should see \"and more \"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a letter" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bx\"" "And" "I type \"bx\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"ords ords and more ords\"" "Then" "I should see \"ords ords and more ords\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a letter with count" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"b2x\"" "And" "I type \"b2x\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"rds rds and more rds\"" "Then" "I should see \"rds rds and more rds\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Lots of words words and more words\nLots of words words and more words\nLots of words words and more words\nLots of words words and more words" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fw3dw\"" "And" "I type \"fw3dw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Lots of more words\nLots of more words\nLots of more words\nLots of more words" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete a WORD" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "composite-words composite-words and more composite-words" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bdaW\"" "And" "I type \"bdaW\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"and more\"" "Then" "I should see \"and more\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThat is a line.\nThis is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"j\"" "And" "I press \"j\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dd\"" "And" "I press \"dd\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a line.\nThis is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete a line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "That is a line.\nThis is a line.\nAnother a line.\nThat is a line.\nThis is a line.\nThis is a line.\nThat is a line.\nAnother a line.\nThis is a line.\nLast line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2dd\"" "And" "I press \"2dd\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Another a line.\nThis is a line.\nThis is a line.\nLast line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete to the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fdD\"" "And" "I press \"fdD\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a super \nThis is a super \nThis is a super \nThis is a super " py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete to the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fdd^\"" "And" "I type \"fdd^\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "duper long line.\nduper long line.\nduper long line.\nduper long line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete up to a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fwdfh\"" "And" "I press \"fwdfh\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road patches of green.\nThe road patches of green.\nThe road patches of green.\nThe road patches of green." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete till before a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fwdth\"" "And" "I press \"fwdth\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road h patches of green.\nThe road h patches of green.\nThe road h patches of green.\nThe road h patches of green." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete till before a letter with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fw2dth\"" "And" "I press \"fw2dth\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road hes of green.\nThe road hes of green.\nThe road hes of green.\nThe road hes of green." py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Insert and change text\n" nil] nil nil ([cl-struct-ecukes-scenario "Text typed in insert state should be entered into the buffer" ([cl-struct-ecukes-step "When I replace the buffer text with \"aaa\"" "When" "I replace the buffer text with \"aaa\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"clfirst text \"" "And" "I type \"clfirst text \"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "first text first text first text" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Enter new lines" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cl\"" "And" "I press \"cl\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"word\" followed by enter" "And" "I press \"word\" followed by enter" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "word\nword\nword" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Open line below" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"oabc\"" "And" "I press \"oabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "bbb\nabc\nabc\nabc" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Open line above" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"Oabc\"" "And" "I press \"Oabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "abc\nabc\nabc\nbbb" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Insert at cursor" ([cl-struct-ecukes-step "When I replace the buffer text with \"a a a\"" "When" "I replace the buffer text with \"a a a\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"i-y-\"" "And" "I press \"i-y-\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"-y-a -y-a -y-a\"" "Then" "I should see \"-y-a -y-a -y-a\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Insert after cursor" ([cl-struct-ecukes-step "When I replace the buffer text with \"a a a\"" "When" "I replace the buffer text with \"a a a\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"a-x-\"" "And" "I press \"a-x-\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"a-x- a-x- a-x-\"" "Then" "I should see \"a-x- a-x- a-x-\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Insert at the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I go to word \"line\"" "And" "I go to word \"line\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"Istart \"" "And" "I type \"Istart \"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "start This is a line\nstart This is a line\nstart This is a line" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Insert at the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I go to word \"line\"" "And" "I go to word \"line\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"A end\"" "And" "I type \"A end\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a line end\nThis is a line end\nThis is a line end" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a letter" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"clw\"" "And" "I type \"clw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyw xyw xyw\"" "Then" "I should see \"xyw xyw xyw\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a word" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bcwabc\"" "And" "I type \"bcwabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc abc abc\"" "Then" "I should see \"abc abc abc\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a word at the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bcwabc\"" "And" "I type \"bcwabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "abc is a line\nabc is a line\nabc is a line" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change to the end of word" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bceabc\"" "And" "I type \"bceabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc abc abc\"" "Then" "I should see \"abc abc abc\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change to the end of word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "xyz yyz yyz xyz yyz yyz xyz yyz yyz xyz yyz yyz" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"b2ceabc\"" "And" "I type \"b2ceabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc yyz abc yyz abc yyz abc yyz\"" "Then" "I should see \"abc yyz abc yyz abc yyz abc yyz\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up to a letter (f)" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbcftxyz\"" "And" "I type \"bbbcftxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzher-test xyzher-test xyzher-test\"" "Then" "I should see \"xyzher-test xyzher-test xyzher-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up to a letter (f) with count" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbb2cftxyz\"" "And" "I type \"bbb2cftxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzest xyzest xyzest\"" "Then" "I should see \"xyzest xyzest xyzest\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up till before a letter (t)" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbcttxyz\"" "And" "I type \"bbbcttxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzther-test xyzther-test xyzther-test\"" "Then" "I should see \"xyzther-test xyzther-test xyzther-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a visual selection" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbv4lcxyz\"" "And" "I type \"bbbv4lcxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzer-test xyzer-test xyzer-test\"" "Then" "I should see \"xyzer-test xyzer-test xyzer-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a visual selection 2" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a simple line.\nThis is a simple line.\nThis is a simple line.\nThat is a simple line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bvt.cChanged text\"" "And" "I type \"bvt.cChanged text\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Changed text.\nChanged text.\nChanged text.\nThat is a simple line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change until the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wC\"" "And" "I press \"wC\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"line has changed.\"" "And" "I type \"line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This line has changed.\nThis line has changed.\nThis line has changed." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThis is a line.\nThat is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"cc\"" "And" "I type \"cc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The line has changed.\"" "And" "I type \"The line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The line has changed.\nThat is a line.\nThe line has changed.\nThat is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole visual line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThis is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"Vc\"" "And" "I press \"Vc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The line has changed.\"" "And" "I type \"The line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The line has changed.\nThat is a line.\nThe line has changed.\nThat is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThe next line.\nThe last line.\nThis is a line.\nThe next line.\nThe last line.\nThe last line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2cc\"" "And" "I press \"2cc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The first two lines have changed.\"" "And" "I type \"The first two lines have changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The first two lines have changed.\nThe last line.\nThe first two lines have changed.\nThe last line." py-string nil nil]) nil])] [cl-struct-ecukes-feature nil nil nil ([cl-struct-ecukes-scenario "The custom command should run at each cursor real and fake" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "There is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line" py-string nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"f0\"" "And" "I press \"f0\"" nil regular nil nil] [cl-struct-ecukes-step "And I call \"evil-mc-inc-num-at-each-cursor\"" "And" "I call \"evil-mc-inc-num-at-each-cursor\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "There is a 0 on this line\nThere is a 1 on this line\nThere is a 2 on this line\nThere is a 3 on this line\nThere is a 4 on this line\nThere is a 5 on this line" py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Text objects and surround" nil] nil nil ([cl-struct-ecukes-scenario "Change the bracket type" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"csbB\"" "And" "I press \"csbB\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a {very} very {long} line with {lots of} words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete brackets inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dib\"" "And" "I press \"dib\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a () very () line with () words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete brackets outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dab\"" "And" "I press \"dab\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a very line with words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy brackets inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (normal) line.\nThis is a (normal) line.\nThis is a (normal) line." py-string nil nil] [cl-struct-ecukes-step "And I press \"fn\"" "And" "I press \"fn\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yib\"" "And" "I press \"yib\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$p\"" "And" "I press \"$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (normal) line.normal\nThis is a (normal) line.normal\nThis is a (normal) line.normal" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy brackets outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (normal) line.\nThis is a (normal) line.\nThis is a (normal) line." py-string nil nil] [cl-struct-ecukes-step "And I press \"fn\"" "And" "I press \"fn\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yab\"" "And" "I press \"yab\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$p\"" "And" "I press \"$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (normal) line.(normal)\nThis is a (normal) line.(normal)\nThis is a (normal) line.(normal)" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a parenthesis expression inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (sentence) with brackets.\nThis is a (sentence) with brackets.\nThis is a (sentence) with brackets." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"f(cibchanged\"" "And" "I type \"f(cibchanged\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (changed) with brackets.\nThis is a (changed) with brackets.\nThis is a (changed) with brackets." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a parenthesis expression outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (sentence) with brackets.\nThis is a (sentence) with brackets.\nThis is a (sentence) with brackets." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"f(cabchanged\"" "And" "I type \"f(cabchanged\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a changed with brackets.\nThis is a changed with brackets.\nThis is a changed with brackets." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Surround a word with quotes" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a simple line.\nThis is a simple line.\nThat is a simple line.\nThis is a simple line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fmviwS'\"" "And" "I type \"fmviwS'\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a 'simple' line.\nThis is a 'simple' line.\nThat is a simple line.\nThis is a 'simple' line." py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Visual region\n" nil] nil nil ([cl-struct-ecukes-scenario "Change selected text with the cursor at the end of the region" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wve\"" "And" "I press \"wve\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cisn't\"" "And" "I press \"cisn't\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This isn't a line.\nThis isn't a line.\nThis isn't a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change selected text with the cursor at the beginning of the region" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wveo\"" "And" "I press \"wveo\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cisn't\"" "And" "I press \"cisn't\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This isn't a line.\nThis isn't a line.\nThis isn't a line." py-string nil nil]) nil])]) #[(feature) "\304! =\305! =\211\203\306\307 \"\210\n\203\306\310 \"\210\306\311 \"\210\312 !\210 \2030\306\313 \"\210\n\2039\306\314 \"\210\306\315 \"*\207" [ecukes-features feature last first -first-item -last-item run-hook-with-args ecukes-reporter-before-first-feature-hook ecukes-reporter-before-last-feature-hook ecukes-reporter-before-feature-hook ecukes-run-feature ecukes-reporter-after-first-feature-hook ecukes-reporter-after-last-feature-hook ecukes-reporter-after-feature-hook] 4])
ecukes-run-features(([cl-struct-ecukes-feature [cl-struct-ecukes-intro "Record current command info\n" nil] nil nil ([cl-struct-ecukes-scenario "Record commands to copy lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"yy\" \"3yy\") :value nil :explanation (arrays-of-different-length 2 3 \"yy\" \"3yy\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to change lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k k\nThis is the second line -1 -1 -1 t t t f f f k k k k\nThis is the third line -1 -1 -1 t t t f f f k k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to delete lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil nil] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil nil] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to work with surrounding delimiters" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to select inside parentheses" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"vib\"" "When" "I press \"vib\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-inner-paren\"" "Then" "The recorded command name should be \"evil-inner-paren\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"ib\"" "And" "The recorded command keys should be \"ib\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Record the command to join two lines" ([cl-struct-ecukes-step "Given I have one cursor at \"line\" in \"First line.\\nSecond line.\"" "Given" "I have one cursor at \"line\" in \"First line.\\nSecond line.\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"J\"" "When" "I press \"J\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-join\"" "Then" "The recorded command name should be \"evil-join\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"J\"" "And" "The recorded command keys should be \"J\"" nil regular nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Copy paste\n" nil] nil nil ([cl-struct-ecukes-scenario "Copy paste a word (before)" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here is a list of words, some are small, some big and some huge." py-string nil nil] [cl-struct-ecukes-step "And I press \"4fs\"" "And" "I press \"4fs\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"bywbbP\"" "And" "I press \"bywbbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here is a list of some words, some are some small, some some big and some huge." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a word (after)" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here is a list of words, some are small, some big and some huge." py-string nil nil] [cl-struct-ecukes-step "And I press \"4fs\"" "And" "I press \"4fs\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"bywbbp\"" "And" "I press \"bywbbp\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here is a list of wsome ords, some are ssome mall, some bsome ig and some huge." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "blue and big and purple and big and pink and big and small" py-string nil nil] [cl-struct-ecukes-step "And I press \"fg\"" "And" "I press \"fg\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"bb3ywP\"" "And" "I press \"bb3ywP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "blue and big and and big and purple and big and and big and pink and big and and big and small" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste up to a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"ytmbP\"" "And" "I press \"ytmbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "e are soHere are some words.\ne are soHere are some words.\ne are soHere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste till before a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yfmbP\"" "And" "I press \"yfmbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "e are somHere are some words.\ne are somHere are some words.\ne are somHere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste until the end of the line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fsy$$p\"" "And" "I type \"fsy$$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.some words.\nHere are some words.some words.\nHere are some words.some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yyp\"" "And" "I press \"yyp\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nHere are some words.\nThere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2yyP\"" "And" "I press \"2yyP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nThere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste with registers" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"b\"" "And" "I press \"b\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"a\" then type \"yw\"" "And" "I set the register to \"a\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"w\"" "And" "I press \"w\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"b\" then type \"yw\"" "And" "I set the register to \"b\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"w\"" "And" "I press \"w\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"c\" then type \"yw\"" "And" "I set the register to \"c\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$\"" "And" "I press \"$\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"a\" then type \"p\"" "And" "I set the register to \"a\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"b\" then type \"p\"" "And" "I set the register to \"b\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"c\" then type \"p\"" "And" "I set the register to \"c\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.Here are some \nHere are some words.Here are some \nHere are some words.Here are some " py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Delete text\n" nil] nil nil ([cl-struct-ecukes-scenario "Delete a word" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bdw\"" "And" "I type \"bdw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"and more \"" "Then" "I should see \"and more \"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a letter" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bx\"" "And" "I type \"bx\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"ords ords and more ords\"" "Then" "I should see \"ords ords and more ords\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a letter with count" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"b2x\"" "And" "I type \"b2x\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"rds rds and more rds\"" "Then" "I should see \"rds rds and more rds\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Lots of words words and more words\nLots of words words and more words\nLots of words words and more words\nLots of words words and more words" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fw3dw\"" "And" "I type \"fw3dw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Lots of more words\nLots of more words\nLots of more words\nLots of more words" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete a WORD" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "composite-words composite-words and more composite-words" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bdaW\"" "And" "I type \"bdaW\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"and more\"" "Then" "I should see \"and more\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThat is a line.\nThis is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"j\"" "And" "I press \"j\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dd\"" "And" "I press \"dd\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a line.\nThis is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete a line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "That is a line.\nThis is a line.\nAnother a line.\nThat is a line.\nThis is a line.\nThis is a line.\nThat is a line.\nAnother a line.\nThis is a line.\nLast line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2dd\"" "And" "I press \"2dd\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Another a line.\nThis is a line.\nThis is a line.\nLast line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete to the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fdD\"" "And" "I press \"fdD\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a super \nThis is a super \nThis is a super \nThis is a super " py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete to the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fdd^\"" "And" "I type \"fdd^\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "duper long line.\nduper long line.\nduper long line.\nduper long line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete up to a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fwdfh\"" "And" "I press \"fwdfh\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road patches of green.\nThe road patches of green.\nThe road patches of green.\nThe road patches of green." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete till before a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fwdth\"" "And" "I press \"fwdth\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road h patches of green.\nThe road h patches of green.\nThe road h patches of green.\nThe road h patches of green." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete till before a letter with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fw2dth\"" "And" "I press \"fw2dth\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road hes of green.\nThe road hes of green.\nThe road hes of green.\nThe road hes of green." py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Insert and change text\n" nil] nil nil ([cl-struct-ecukes-scenario "Text typed in insert state should be entered into the buffer" ([cl-struct-ecukes-step "When I replace the buffer text with \"aaa\"" "When" "I replace the buffer text with \"aaa\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"clfirst text \"" "And" "I type \"clfirst text \"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "first text first text first text" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Enter new lines" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cl\"" "And" "I press \"cl\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"word\" followed by enter" "And" "I press \"word\" followed by enter" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "word\nword\nword" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Open line below" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"oabc\"" "And" "I press \"oabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "bbb\nabc\nabc\nabc" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Open line above" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"Oabc\"" "And" "I press \"Oabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "abc\nabc\nabc\nbbb" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Insert at cursor" ([cl-struct-ecukes-step "When I replace the buffer text with \"a a a\"" "When" "I replace the buffer text with \"a a a\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"i-y-\"" "And" "I press \"i-y-\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"-y-a -y-a -y-a\"" "Then" "I should see \"-y-a -y-a -y-a\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Insert after cursor" ([cl-struct-ecukes-step "When I replace the buffer text with \"a a a\"" "When" "I replace the buffer text with \"a a a\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"a-x-\"" "And" "I press \"a-x-\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"a-x- a-x- a-x-\"" "Then" "I should see \"a-x- a-x- a-x-\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Insert at the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I go to word \"line\"" "And" "I go to word \"line\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"Istart \"" "And" "I type \"Istart \"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "start This is a line\nstart This is a line\nstart This is a line" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Insert at the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I go to word \"line\"" "And" "I go to word \"line\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"A end\"" "And" "I type \"A end\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a line end\nThis is a line end\nThis is a line end" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a letter" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"clw\"" "And" "I type \"clw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyw xyw xyw\"" "Then" "I should see \"xyw xyw xyw\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a word" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bcwabc\"" "And" "I type \"bcwabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc abc abc\"" "Then" "I should see \"abc abc abc\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a word at the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bcwabc\"" "And" "I type \"bcwabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "abc is a line\nabc is a line\nabc is a line" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change to the end of word" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bceabc\"" "And" "I type \"bceabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc abc abc\"" "Then" "I should see \"abc abc abc\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change to the end of word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "xyz yyz yyz xyz yyz yyz xyz yyz yyz xyz yyz yyz" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"b2ceabc\"" "And" "I type \"b2ceabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc yyz abc yyz abc yyz abc yyz\"" "Then" "I should see \"abc yyz abc yyz abc yyz abc yyz\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up to a letter (f)" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbcftxyz\"" "And" "I type \"bbbcftxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzher-test xyzher-test xyzher-test\"" "Then" "I should see \"xyzher-test xyzher-test xyzher-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up to a letter (f) with count" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbb2cftxyz\"" "And" "I type \"bbb2cftxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzest xyzest xyzest\"" "Then" "I should see \"xyzest xyzest xyzest\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up till before a letter (t)" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbcttxyz\"" "And" "I type \"bbbcttxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzther-test xyzther-test xyzther-test\"" "Then" "I should see \"xyzther-test xyzther-test xyzther-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a visual selection" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbv4lcxyz\"" "And" "I type \"bbbv4lcxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzer-test xyzer-test xyzer-test\"" "Then" "I should see \"xyzer-test xyzer-test xyzer-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a visual selection 2" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a simple line.\nThis is a simple line.\nThis is a simple line.\nThat is a simple line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bvt.cChanged text\"" "And" "I type \"bvt.cChanged text\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Changed text.\nChanged text.\nChanged text.\nThat is a simple line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change until the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wC\"" "And" "I press \"wC\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"line has changed.\"" "And" "I type \"line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This line has changed.\nThis line has changed.\nThis line has changed." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThis is a line.\nThat is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"cc\"" "And" "I type \"cc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The line has changed.\"" "And" "I type \"The line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The line has changed.\nThat is a line.\nThe line has changed.\nThat is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole visual line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThis is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"Vc\"" "And" "I press \"Vc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The line has changed.\"" "And" "I type \"The line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The line has changed.\nThat is a line.\nThe line has changed.\nThat is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThe next line.\nThe last line.\nThis is a line.\nThe next line.\nThe last line.\nThe last line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2cc\"" "And" "I press \"2cc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The first two lines have changed.\"" "And" "I type \"The first two lines have changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The first two lines have changed.\nThe last line.\nThe first two lines have changed.\nThe last line." py-string nil nil]) nil])] [cl-struct-ecukes-feature nil nil nil ([cl-struct-ecukes-scenario "The custom command should run at each cursor real and fake" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "There is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line" py-string nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"f0\"" "And" "I press \"f0\"" nil regular nil nil] [cl-struct-ecukes-step "And I call \"evil-mc-inc-num-at-each-cursor\"" "And" "I call \"evil-mc-inc-num-at-each-cursor\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "There is a 0 on this line\nThere is a 1 on this line\nThere is a 2 on this line\nThere is a 3 on this line\nThere is a 4 on this line\nThere is a 5 on this line" py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Text objects and surround" nil] nil nil ([cl-struct-ecukes-scenario "Change the bracket type" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"csbB\"" "And" "I press \"csbB\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a {very} very {long} line with {lots of} words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete brackets inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dib\"" "And" "I press \"dib\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a () very () line with () words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete brackets outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dab\"" "And" "I press \"dab\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a very line with words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy brackets inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (normal) line.\nThis is a (normal) line.\nThis is a (normal) line." py-string nil nil] [cl-struct-ecukes-step "And I press \"fn\"" "And" "I press \"fn\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yib\"" "And" "I press \"yib\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$p\"" "And" "I press \"$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (normal) line.normal\nThis is a (normal) line.normal\nThis is a (normal) line.normal" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy brackets outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (normal) line.\nThis is a (normal) line.\nThis is a (normal) line." py-string nil nil] [cl-struct-ecukes-step "And I press \"fn\"" "And" "I press \"fn\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yab\"" "And" "I press \"yab\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$p\"" "And" "I press \"$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (normal) line.(normal)\nThis is a (normal) line.(normal)\nThis is a (normal) line.(normal)" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a parenthesis expression inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (sentence) with brackets.\nThis is a (sentence) with brackets.\nThis is a (sentence) with brackets." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"f(cibchanged\"" "And" "I type \"f(cibchanged\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (changed) with brackets.\nThis is a (changed) with brackets.\nThis is a (changed) with brackets." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a parenthesis expression outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (sentence) with brackets.\nThis is a (sentence) with brackets.\nThis is a (sentence) with brackets." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"f(cabchanged\"" "And" "I type \"f(cabchanged\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a changed with brackets.\nThis is a changed with brackets.\nThis is a changed with brackets." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Surround a word with quotes" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a simple line.\nThis is a simple line.\nThat is a simple line.\nThis is a simple line."
Undo branch point!
Undo branch point!
Undo branch point!
Undo branch point!
py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fmviwS'\"" "And" "I type \"fmviwS'\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a 'simple' line.\nThis is a 'simple' line.\nThat is a simple line.\nThis is a 'simple' line." py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Visual region\n" nil] nil nil ([cl-struct-ecukes-scenario "Change selected text with the cursor at the end of the region" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wve\"" "And" "I press \"wve\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cisn't\"" "And" "I press \"cisn't\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This isn't a line.\nThis isn't a line.\nThis isn't a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change selected text with the cursor at the beginning of the region" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wveo\"" "And" "I press \"wveo\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cisn't\"" "And" "I press \"cisn't\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This isn't a line.\nThis isn't a line.\nThis isn't a line." py-string nil nil]) nil])]))
ecukes-run(("/Users/aaronjensen/Source/evil-mc/features/evil-mc-command-info.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-copy-paste.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-delete.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-insert.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-run-for-each-cursor.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-text-objects.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-visual.feature"))
(let ((feature-files)) (-each args (function (lambda (arg) (let ((path (f-expand arg ...))) (if (f-dir\? path) (-each (f-files path ... ...) (function ...)) (setq feature-files (cons path feature-files))))))) (ecukes-run feature-files))
ecukes-cli/run("features")
apply(ecukes-cli/run "features")
commander--handle-command(nil)
commander-parse(("--debug"))
(if commander-parsing-done nil (commander-parse (or commander-args (cdr command-line-args-left))))
eval-buffer(#<buffer *load*> nil "/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el" nil t)
load-with-code-conversion("/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el" "/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el" nil t)
load("/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el" nil t t)
command-line-1(("-scriptload" "/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el"))
command-line()
normal-top-level()
.
 signal(ert-test-failed (((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal "dtk" "3dtk") :value nil :explanation (arrays-of-different-length 3 4 "dtk" "3dtk" first-mismatch-at 0))))
ert-fail(((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal "dtk" "3dtk") :value nil :explanation (arrays-of-different-length 3 4 "dtk" "3dtk" first-mismatch-at 0)))
(if (unwind-protect (setq value-7 (apply fn-5 args-6)) (setq form-description-9 (nconc (list (quote (should (equal ... keys)))) (list :form (cons fn-5 args-6)) (if (eql value-7 (quote ert-form-evaluation-aborted-8)) nil (list :value value-7)) (let ((-explainer- (and ... ...))) (if -explainer- (progn (list :explanation ...)))))) (ert--signal-should-execution form-description-9)) nil (ert-fail form-description-9))
(let (form-description-9) (if (unwind-protect (setq value-7 (apply fn-5 args-6)) (setq form-description-9 (nconc (list (quote (should ...))) (list :form (cons fn-5 args-6)) (if (eql value-7 (quote ert-form-evaluation-aborted-8)) nil (list :value value-7)) (let ((-explainer- ...)) (if -explainer- (progn ...))))) (ert--signal-should-execution form-description-9)) nil (ert-fail form-description-9)))
(let ((value-7 (quote ert-form-evaluation-aborted-8))) (let (form-description-9) (if (unwind-protect (setq value-7 (apply fn-5 args-6)) (setq form-description-9 (nconc (list (quote ...)) (list :form (cons fn-5 args-6)) (if (eql value-7 ...) nil (list :value value-7)) (let (...) (if -explainer- ...)))) (ert--signal-should-execution form-description-9)) nil (ert-fail form-description-9))) value-7)
(let ((fn-5 (function equal)) (args-6 (list (evil-mc-get-command-keys-string :keys) keys))) (let ((value-7 (quote ert-form-evaluation-aborted-8))) (let (form-description-9) (if (unwind-protect (setq value-7 (apply fn-5 args-6)) (setq form-description-9 (nconc (list ...) (list :form ...) (if ... nil ...) (let ... ...))) (ert--signal-should-execution form-description-9)) nil (ert-fail form-description-9))) value-7))
(lambda (keys) (let ((fn-5 (function equal)) (args-6 (list (evil-mc-get-command-keys-string :keys) keys))) (let ((value-7 (quote ert-form-evaluation-aborted-8))) (let (form-description-9) (if (unwind-protect (setq value-7 (apply fn-5 args-6)) (setq form-description-9 (nconc ... ... ... ...)) (ert--signal-should-execution form-description-9)) nil (ert-fail form-description-9))) value-7)))("3dtk")
apply((lambda (keys) (let ((fn-5 (function equal)) (args-6 (list (evil-mc-get-command-keys-string :keys) keys))) (let ((value-7 (quote ert-form-evaluation-aborted-8))) (let (form-description-9) (if (unwind-protect (setq value-7 (apply fn-5 args-6)) (setq form-description-9 (nconc ... ... ... ...)) (ert--signal-should-execution form-description-9)) nil (ert-fail form-description-9))) value-7))) "3dtk")
ecukes-steps-call("The recorded command keys should be \"%s\"" ("3dtk"))
Then("The recorded command keys should be \"%s\"" "3dtk")
(let* ((key (nth 0 row)) (cmd (nth 1 row)) (out (nth 2 row))) (if (or (null out) (eq 0 (length out))) (progn (setq out key))) (evil-force-normal-state) (When "I press \"%s\"" key) (Then "The recorded command name should be \"%s\"" cmd) (Then "The recorded command keys should be \"%s\"" out) (if undo (progn (evil-force-normal-state) (When "I press \"u\""))))
(while --dolist-tail-- (setq row (car --dolist-tail--)) (let* ((key (nth 0 row)) (cmd (nth 1 row)) (out (nth 2 row))) (if (or (null out) (eq 0 (length out))) (progn (setq out key))) (evil-force-normal-state) (When "I press \"%s\"" key) (Then "The recorded command name should be \"%s\"" cmd) (Then "The recorded command keys should be \"%s\"" out) (if undo (progn (evil-force-normal-state) (When "I press \"u\"")))) (setq --dolist-tail-- (cdr --dolist-tail--)))
(let ((--dolist-tail-- rows) row) (while --dolist-tail-- (setq row (car --dolist-tail--)) (let* ((key (nth 0 row)) (cmd (nth 1 row)) (out (nth 2 row))) (if (or (null out) (eq 0 (length out))) (progn (setq out key))) (evil-force-normal-state) (When "I press \"%s\"" key) (Then "The recorded command name should be \"%s\"" cmd) (Then "The recorded command keys should be \"%s\"" out) (if undo (progn (evil-force-normal-state) (When "I press \"u\"")))) (setq --dolist-tail-- (cdr --dolist-tail--))))
(let ((header (car table)) (rows (cdr table))) (let ((--dolist-tail-- rows) row) (while --dolist-tail-- (setq row (car --dolist-tail--)) (let* ((key (nth 0 row)) (cmd (nth 1 row)) (out (nth 2 row))) (if (or (null out) (eq 0 (length out))) (progn (setq out key))) (evil-force-normal-state) (When "I press \"%s\"" key) (Then "The recorded command name should be \"%s\"" cmd) (Then "The recorded command keys should be \"%s\"" out) (if undo (progn (evil-force-normal-state) (When "I press \"u\"")))) (setq --dolist-tail-- (cdr --dolist-tail--)))))
run-and-verify((("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) t)
(lambda (table) (run-and-verify table t))((("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")))
apply((lambda (table) (run-and-verify table t)) (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")))
ecukes-run-step([cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table nil nil])
#[(step) "\306! \232\307! \232\211\203\310\311 \f#\210\n\203 \310\312 \f#\210\310\313 \f#\210
\2037\314 !\211\2049\315\2029\316 \317H>\204I\320\321\322 D\"\210 \211\323\fI\210) \203\\\310\324 \f#\210\n\203f\310\325 \f#\210\f\305=\203w\326 \210\310\327 \"\210\202\226\f\315=\203\210\330 \210\310\331 \"\210\202\226\f\316=\203\226\332 \210\310\333 \"\210\310\334 \f#*\207" [steps step last first status success -first-item -last-item run-hook-with-args ecukes-reporter-before-first-step-hook ecukes-reporter-before-last-step-hook ecukes-reporter-before-step-hook ecukes-run-step failure skipped 0 signal wrong-type-argument ecukes-step 7 ecukes-reporter-after-first-step-hook ecukes-reporter-after-last-step-hook ecukes-stats-step-pass ecukes-reporter-after-step-success-hook ecukes-stats-step-fail ecukes-reporter-after-step-failed-hook ecukes-stats-step-skip ecukes-reporter-after-step-skipped-hook ecukes-reporter-after-step-hook cl-struct-ecukes-step-tags v] 5]([cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table nil nil])
-each(([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table nil nil]) #[(step) "\306! \232\307! \232\211\203\310\311 \f#\210\n\203 \310\312 \f#\210\310\313 \f#\210
\2037\314 !\211\2049\315\2029\316 \317H>\204I\320\321\322 D\"\210 \211\323\fI\210) \203\\\310\324 \f#\210\n\203f\310\325 \f#\210\f\305=\203w\326 \210\310\327 \"\210\202\226\f\315=\203\210\330 \210\310\331 \"\210\202\226\f\316=\203\226\332 \210\310\333 \"\210\310\334 \f#*\207" [steps step last first status success -first-item -last-item run-hook-with-args ecukes-reporter-before-first-step-hook ecukes-reporter-before-last-step-hook ecukes-reporter-before-step-hook ecukes-run-step failure skipped 0 signal wrong-type-argument ecukes-step 7 ecukes-reporter-after-first-step-hook ecukes-reporter-after-last-step-hook ecukes-stats-step-pass ecukes-reporter-after-step-success-hook ecukes-stats-step-fail ecukes-reporter-after-step-failed-hook ecukes-stats-step-skip ecukes-reporter-after-step-skipped-hook ecukes-reporter-after-step-hook cl-struct-ecukes-step-tags v] 5])
ecukes-run-steps(([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table nil nil]) t)
ecukes-run-scenario([cl-struct-ecukes-scenario "Record commands to delete lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table nil nil]) nil] t)
#[(scenario) "\306 \"\203g\307! \232\310! \232\f\203\311 \210
\203+\203+\f\203+\312
!\210 \2034\313\314 \"\210\n\203=\313\315 \"\210\313\316 \"\210\317 \"\210 \203Q\313\320 \"\210\n\203Z\313\321 \"\210\313\322 \"\210\323 \210\324\211*\207\313\325 \"\207" [scenarios scenario last first background-should-run background -contains\? -first-item -last-item ecukes-hooks-run-before ecukes-run-background-steps run-hook-with-args ecukes-reporter-before-first-scenario-hook ecukes-reporter-before-last-scenario-hook ecukes-reporter-before-scenario-hook ecukes-run-scenario ecukes-reporter-after-first-scenario-hook ecukes-reporter-after-last-scenario-hook ecukes-reporter-after-scenario-hook ecukes-hooks-run-after t ecukes-reporter-pending-scenario-hook background-success] 3]([cl-struct-ecukes-scenario "Record commands to delete lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table nil nil]) nil])
-each(([cl-struct-ecukes-scenario "Record commands to copy lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"yy\" \"3yy\") :value nil :explanation (arrays-of-different-length 2 3 \"yy\" \"3yy\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to change lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k k\nThis is the second line -1 -1 -1 t t t f f f k k k k\nThis is the third line -1 -1 -1 t t t f f f k k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"ctk\" \"3ctk\") :value nil :explanation (arrays-of-different-length 3 4 \"ctk\" \"3ctk\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to delete lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to work with surrounding delimiters" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to select inside parentheses" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"vib\"" "When" "I press \"vib\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-inner-paren\"" "Then" "The recorded command name should be \"evil-inner-paren\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"ib\"" "And" "The recorded command keys should be \"ib\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Record the command to join two lines" ([cl-struct-ecukes-step "Given I have one cursor at \"line\" in \"First line.\\nSecond line.\"" "Given" "I have one cursor at \"line\" in \"First line.\\nSecond line.\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"J\"" "When" "I press \"J\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-join\"" "Then" "The recorded command name should be \"evil-join\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"J\"" "And" "The recorded command keys should be \"J\"" nil regular nil nil]) nil]) #[(scenario) "\306 \"\203g\307! \232\310! \232\f\203\311 \210
\203+\203+\f\203+\312
!\210 \2034\313\314 \"\210\n\203=\313\315 \"\210\313\316 \"\210\317 \"\210 \203Q\313\320 \"\210\n\203Z\313\321 \"\210\313\322 \"\210\323 \210\324\211*\207\313\325 \"\207" [scenarios scenario last first background-should-run background -contains\? -first-item -last-item ecukes-hooks-run-before ecukes-run-background-steps run-hook-with-args ecukes-reporter-before-first-scenario-hook ecukes-reporter-before-last-scenario-hook ecukes-reporter-before-scenario-hook ecukes-run-scenario ecukes-reporter-after-first-scenario-hook ecukes-reporter-after-last-scenario-hook ecukes-reporter-after-scenario-hook ecukes-hooks-run-after t ecukes-reporter-pending-scenario-hook background-success] 3])
ecukes-run-feature([cl-struct-ecukes-feature [cl-struct-ecukes-intro "Record current command info\n" nil] nil nil ([cl-struct-ecukes-scenario "Record commands to copy lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"yy\" \"3yy\") :value nil :explanation (arrays-of-different-length 2 3 \"yy\" \"3yy\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to change lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k k\nThis is the second line -1 -1 -1 t t t f f f k k k k\nThis is the third line -1 -1 -1 t t t f f f k k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"ctk\" \"3ctk\") :value nil :explanation (arrays-of-different-length 3 4 \"ctk\" \"3ctk\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to delete lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to work with surrounding delimiters" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to select inside parentheses" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"vib\"" "When" "I press \"vib\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-inner-paren\"" "Then" "The recorded command name should be \"evil-inner-paren\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"ib\"" "And" "The recorded command keys should be \"ib\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Record the command to join two lines" ([cl-struct-ecukes-step "Given I have one cursor at \"line\" in \"First line.\\nSecond line.\"" "Given" "I have one cursor at \"line\" in \"First line.\\nSecond line.\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"J\"" "When" "I press \"J\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-join\"" "Then" "The recorded command name should be \"evil-join\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"J\"" "And" "The recorded command keys should be \"J\"" nil regular nil nil]) nil])])
#[(feature) "\304! =\305! =\211\203\306\307 \"\210\n\203\306\310 \"\210\306\311 \"\210\312 !\210 \2030\306\313 \"\210\n\2039\306\314 \"\210\306\315 \"*\207" [ecukes-features feature last first -first-item -last-item run-hook-with-args ecukes-reporter-before-first-feature-hook ecukes-reporter-before-last-feature-hook ecukes-reporter-before-feature-hook ecukes-run-feature ecukes-reporter-after-first-feature-hook ecukes-reporter-after-last-feature-hook ecukes-reporter-after-feature-hook] 4]([cl-struct-ecukes-feature [cl-struct-ecukes-intro "Record current command info\n" nil] nil nil ([cl-struct-ecukes-scenario "Record commands to copy lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"yy\" \"3yy\") :value nil :explanation (arrays-of-different-length 2 3 \"yy\" \"3yy\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to change lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k k\nThis is the second line -1 -1 -1 t t t f f f k k k k\nThis is the third line -1 -1 -1 t t t f f f k k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"ctk\" \"3ctk\") :value nil :explanation (arrays-of-different-length 3 4 \"ctk\" \"3ctk\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to delete lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to work with surrounding delimiters" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to select inside parentheses" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"vib\"" "When" "I press \"vib\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-inner-paren\"" "Then" "The recorded command name should be \"evil-inner-paren\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"ib\"" "And" "The recorded command keys should be \"ib\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Record the command to join two lines" ([cl-struct-ecukes-step "Given I have one cursor at \"line\" in \"First line.\\nSecond line.\"" "Given" "I have one cursor at \"line\" in \"First line.\\nSecond line.\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"J\"" "When" "I press \"J\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-join\"" "Then" "The recorded command name should be \"evil-join\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"J\"" "And" "The recorded command keys should be \"J\"" nil regular nil nil]) nil])])
-each(([cl-struct-ecukes-feature [cl-struct-ecukes-intro "Record current command info\n" nil] nil nil ([cl-struct-ecukes-scenario "Record commands to copy lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"yy\" \"3yy\") :value nil :explanation (arrays-of-different-length 2 3 \"yy\" \"3yy\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to change lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k k\nThis is the second line -1 -1 -1 t t t f f f k k k k\nThis is the third line -1 -1 -1 t t t f f f k k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"ctk\" \"3ctk\") :value nil :explanation (arrays-of-different-length 3 4 \"ctk\" \"3ctk\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to delete lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to work with surrounding delimiters" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to select inside parentheses" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"vib\"" "When" "I press \"vib\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-inner-paren\"" "Then" "The recorded command name should be \"evil-inner-paren\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"ib\"" "And" "The recorded command keys should be \"ib\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Record the command to join two lines" ([cl-struct-ecukes-step "Given I have one cursor at \"line\" in \"First line.\\nSecond line.\"" "Given" "I have one cursor at \"line\" in \"First line.\\nSecond line.\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"J\"" "When" "I press \"J\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-join\"" "Then" "The recorded command name should be \"evil-join\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"J\"" "And" "The recorded command keys should be \"J\"" nil regular nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Copy paste\n" nil] nil nil ([cl-struct-ecukes-scenario "Copy paste a word (before)" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here is a list of words, some are small, some big and some huge." py-string nil nil] [cl-struct-ecukes-step "And I press \"4fs\"" "And" "I press \"4fs\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"bywbbP\"" "And" "I press \"bywbbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here is a list of some words, some are some small, some some big and some huge." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a word (after)" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here is a list of words, some are small, some big and some huge." py-string nil nil] [cl-struct-ecukes-step "And I press \"4fs\"" "And" "I press \"4fs\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"bywbbp\"" "And" "I press \"bywbbp\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here is a list of wsome ords, some are ssome mall, some bsome ig and some huge." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "blue and big and purple and big and pink and big and small" py-string nil nil] [cl-struct-ecukes-step "And I press \"fg\"" "And" "I press \"fg\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"bb3ywP\"" "And" "I press \"bb3ywP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "blue and big and and big and purple and big and and big and pink and big and and big and small" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste up to a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"ytmbP\"" "And" "I press \"ytmbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "e are soHere are some words.\ne are soHere are some words.\ne are soHere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste till before a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yfmbP\"" "And" "I press \"yfmbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "e are somHere are some words.\ne are somHere are some words.\ne are somHere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste until the end of the line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fsy$$p\"" "And" "I type \"fsy$$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.some words.\nHere are some words.some words.\nHere are some words.some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yyp\"" "And" "I press \"yyp\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nHere are some words.\nThere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2yyP\"" "And" "I press \"2yyP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nThere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste with registers" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"b\"" "And" "I press \"b\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"a\" then type \"yw\"" "And" "I set the register to \"a\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"w\"" "And" "I press \"w\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"b\" then type \"yw\"" "And" "I set the register to \"b\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"w\"" "And" "I press \"w\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"c\" then type \"yw\"" "And" "I set the register to \"c\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$\"" "And" "I press \"$\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"a\" then type \"p\"" "And" "I set the register to \"a\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"b\" then type \"p\"" "And" "I set the register to \"b\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"c\" then type \"p\"" "And" "I set the register to \"c\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.Here are some \nHere are some words.Here are some \nHere are some words.Here are some " py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Delete text\n" nil] nil nil ([cl-struct-ecukes-scenario "Delete a word" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bdw\"" "And" "I type \"bdw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"and more \"" "Then" "I should see \"and more \"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a letter" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bx\"" "And" "I type \"bx\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"ords ords and more ords\"" "Then" "I should see \"ords ords and more ords\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a letter with count" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"b2x\"" "And" "I type \"b2x\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"rds rds and more rds\"" "Then" "I should see \"rds rds and more rds\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Lots of words words and more words\nLots of words words and more words\nLots of words words and more words\nLots of words words and more words" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fw3dw\"" "And" "I type \"fw3dw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Lots of more words\nLots of more words\nLots of more words\nLots of more words" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete a WORD" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "composite-words composite-words and more composite-words" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bdaW\"" "And" "I type \"bdaW\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"and more\"" "Then" "I should see \"and more\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThat is a line.\nThis is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"j\"" "And" "I press \"j\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dd\"" "And" "I press \"dd\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a line.\nThis is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete a line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "That is a line.\nThis is a line.\nAnother a line.\nThat is a line.\nThis is a line.\nThis is a line.\nThat is a line.\nAnother a line.\nThis is a line.\nLast line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2dd\"" "And" "I press \"2dd\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Another a line.\nThis is a line.\nThis is a line.\nLast line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete to the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fdD\"" "And" "I press \"fdD\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a super \nThis is a super \nThis is a super \nThis is a super " py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete to the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fdd^\"" "And" "I type \"fdd^\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "duper long line.\nduper long line.\nduper long line.\nduper long line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete up to a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fwdfh\"" "And" "I press \"fwdfh\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road patches of green.\nThe road patches of green.\nThe road patches of green.\nThe road patches of green." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete till before a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fwdth\"" "And" "I press \"fwdth\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road h patches of green.\nThe road h patches of green.\nThe road h patches of green.\nThe road h patches of green." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete till before a letter with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fw2dth\"" "And" "I press \"fw2dth\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road hes of green.\nThe road hes of green.\nThe road hes of green.\nThe road hes of green." py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Insert and change text\n" nil] nil nil ([cl-struct-ecukes-scenario "Text typed in insert state should be entered into the buffer" ([cl-struct-ecukes-step "When I replace the buffer text with \"aaa\"" "When" "I replace the buffer text with \"aaa\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"clfirst text \"" "And" "I type \"clfirst text \"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "first text first text first text" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Enter new lines" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cl\"" "And" "I press \"cl\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"word\" followed by enter" "And" "I press \"word\" followed by enter" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "word\nword\nword" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Open line below" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"oabc\"" "And" "I press \"oabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "bbb\nabc\nabc\nabc" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Open line above" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"Oabc\"" "And" "I press \"Oabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "abc\nabc\nabc\nbbb" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Insert at cursor" ([cl-struct-ecukes-step "When I replace the buffer text with \"a a a\"" "When" "I replace the buffer text with \"a a a\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"i-y-\"" "And" "I press \"i-y-\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"-y-a -y-a -y-a\"" "Then" "I should see \"-y-a -y-a -y-a\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Insert after cursor" ([cl-struct-ecukes-step "When I replace the buffer text with \"a a a\"" "When" "I replace the buffer text with \"a a a\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"a-x-\"" "And" "I press \"a-x-\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"a-x- a-x- a-x-\"" "Then" "I should see \"a-x- a-x- a-x-\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Insert at the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I go to word \"line\"" "And" "I go to word \"line\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"Istart \"" "And" "I type \"Istart \"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "start This is a line\nstart This is a line\nstart This is a line" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Insert at the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I go to word \"line\"" "And" "I go to word \"line\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"A end\"" "And" "I type \"A end\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a line end\nThis is a line end\nThis is a line end" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a letter" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"clw\"" "And" "I type \"clw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyw xyw xyw\"" "Then" "I should see \"xyw xyw xyw\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a word" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bcwabc\"" "And" "I type \"bcwabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc abc abc\"" "Then" "I should see \"abc abc abc\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a word at the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bcwabc\"" "And" "I type \"bcwabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "abc is a line\nabc is a line\nabc is a line" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change to the end of word" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bceabc\"" "And" "I type \"bceabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc abc abc\"" "Then" "I should see \"abc abc abc\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change to the end of word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "xyz yyz yyz xyz yyz yyz xyz yyz yyz xyz yyz yyz" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"b2ceabc\"" "And" "I type \"b2ceabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc yyz abc yyz abc yyz abc yyz\"" "Then" "I should see \"abc yyz abc yyz abc yyz abc yyz\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up to a letter (f)" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbcftxyz\"" "And" "I type \"bbbcftxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzher-test xyzher-test xyzher-test\"" "Then" "I should see \"xyzher-test xyzher-test xyzher-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up to a letter (f) with count" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbb2cftxyz\"" "And" "I type \"bbb2cftxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzest xyzest xyzest\"" "Then" "I should see \"xyzest xyzest xyzest\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up till before a letter (t)" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbcttxyz\"" "And" "I type \"bbbcttxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzther-test xyzther-test xyzther-test\"" "Then" "I should see \"xyzther-test xyzther-test xyzther-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a visual selection" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbv4lcxyz\"" "And" "I type \"bbbv4lcxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzer-test xyzer-test xyzer-test\"" "Then" "I should see \"xyzer-test xyzer-test xyzer-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a visual selection 2" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a simple line.\nThis is a simple line.\nThis is a simple line.\nThat is a simple line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bvt.cChanged text\"" "And" "I type \"bvt.cChanged text\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Changed text.\nChanged text.\nChanged text.\nThat is a simple line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change until the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wC\"" "And" "I press \"wC\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"line has changed.\"" "And" "I type \"line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This line has changed.\nThis line has changed.\nThis line has changed." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThis is a line.\nThat is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"cc\"" "And" "I type \"cc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The line has changed.\"" "And" "I type \"The line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The line has changed.\nThat is a line.\nThe line has changed.\nThat is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole visual line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThis is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"Vc\"" "And" "I press \"Vc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The line has changed.\"" "And" "I type \"The line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The line has changed.\nThat is a line.\nThe line has changed.\nThat is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThe next line.\nThe last line.\nThis is a line.\nThe next line.\nThe last line.\nThe last line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2cc\"" "And" "I press \"2cc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The first two lines have changed.\"" "And" "I type \"The first two lines have changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The first two lines have changed.\nThe last line.\nThe first two lines have changed.\nThe last line." py-string nil nil]) nil])] [cl-struct-ecukes-feature nil nil nil ([cl-struct-ecukes-scenario "The custom command should run at each cursor real and fake" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "There is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line" py-string nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"f0\"" "And" "I press \"f0\"" nil regular nil nil] [cl-struct-ecukes-step "And I call \"evil-mc-inc-num-at-each-cursor\"" "And" "I call \"evil-mc-inc-num-at-each-cursor\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "There is a 0 on this line\nThere is a 1 on this line\nThere is a 2 on this line\nThere is a 3 on this line\nThere is a 4 on this line\nThere is a 5 on this line" py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Text objects and surround" nil] nil nil ([cl-struct-ecukes-scenario "Change the bracket type" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"csbB\"" "And" "I press \"csbB\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a {very} very {long} line with {lots of} words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete brackets inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dib\"" "And" "I press \"dib\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a () very () line with () words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete brackets outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dab\"" "And" "I press \"dab\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a very line with words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy brackets inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (normal) line.\nThis is a (normal) line.\nThis is a (normal) line." py-string nil nil] [cl-struct-ecukes-step "And I press \"fn\"" "And" "I press \"fn\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yib\"" "And" "I press \"yib\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$p\"" "And" "I press \"$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (normal) line.normal\nThis is a (normal) line.normal\nThis is a (normal) line.normal" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy brackets outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (normal) line.\nThis is a (normal) line.\nThis is a (normal) line." py-string nil nil] [cl-struct-ecukes-step "And I press \"fn\"" "And" "I press \"fn\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yab\"" "And" "I press \"yab\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$p\"" "And" "I press \"$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (normal) line.(normal)\nThis is a (normal) line.(normal)\nThis is a (normal) line.(normal)" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a parenthesis expression inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (sentence) with brackets.\nThis is a (sentence) with brackets.\nThis is a (sentence) with brackets." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"f(cibchanged\"" "And" "I type \"f(cibchanged\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (changed) with brackets.\nThis is a (changed) with brackets.\nThis is a (changed) with brackets." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a parenthesis expression outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (sentence) with brackets.\nThis is a (sentence) with brackets.\nThis is a (sentence) with brackets." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"f(cabchanged\"" "And" "I type \"f(cabchanged\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a changed with brackets.\nThis is a changed with brackets.\nThis is a changed with brackets." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Surround a word with quotes" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a simple line.\nThis is a simple line.\nThat is a simple line.\nThis is a simple line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fmviwS'\"" "And" "I type \"fmviwS'\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a 'simple' line.\nThis is a 'simple' line.\nThat is a simple line.\nThis is a 'simple' line." py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Visual region\n" nil] nil nil ([cl-struct-ecukes-scenario "Change selected text with the cursor at the end of the region" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wve\"" "And" "I press \"wve\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cisn't\"" "And" "I press \"cisn't\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This isn't a line.\nThis isn't a line.\nThis isn't a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change selected text with the cursor at the beginning of the region" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wveo\"" "And" "I press \"wveo\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cisn't\"" "And" "I press \"cisn't\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This isn't a line.\nThis isn't a line.\nThis isn't a line." py-string nil nil]) nil])]) #[(feature) "\304! =\305! =\211\203\306\307 \"\210\n\203\306\310 \"\210\306\311 \"\210\312 !\210 \2030\306\313 \"\210\n\2039\306\314 \"\210\306\315 \"*\207" [ecukes-features feature last first -first-item -last-item run-hook-with-args ecukes-reporter-before-first-feature-hook ecukes-reporter-before-last-feature-hook ecukes-reporter-before-feature-hook ecukes-run-feature ecukes-reporter-after-first-feature-hook ecukes-reporter-after-last-feature-hook ecukes-reporter-after-feature-hook] 4])
ecukes-run-features(([cl-struct-ecukes-feature [cl-struct-ecukes-intro "Record current command info\n" nil] nil nil ([cl-struct-ecukes-scenario "Record commands to copy lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"yy\" \"3yy\") :value nil :explanation (arrays-of-different-length 2 3 \"yy\" \"3yy\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to change lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k k\nThis is the second line -1 -1 -1 t t t f f f k k k k\nThis is the third line -1 -1 -1 t t t f f f k k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"ctk\" \"3ctk\") :value nil :explanation (arrays-of-different-length 3 4 \"ctk\" \"3ctk\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to delete lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to work with surrounding delimiters" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to select inside parentheses" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"vib\"" "When" "I press \"vib\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-inner-paren\"" "Then" "The recorded command name should be \"evil-inner-paren\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"ib\"" "And" "The recorded command keys should be \"ib\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Record the command to join two lines" ([cl-struct-ecukes-step "Given I have one cursor at \"line\" in \"First line.\\nSecond line.\"" "Given" "I have one cursor at \"line\" in \"First line.\\nSecond line.\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"J\"" "When" "I press \"J\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-join\"" "Then" "The recorded command name should be \"evil-join\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"J\"" "And" "The recorded command keys should be \"J\"" nil regular nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Copy paste\n" nil] nil nil ([cl-struct-ecukes-scenario "Copy paste a word (before)" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here is a list of words, some are small, some big and some huge." py-string nil nil] [cl-struct-ecukes-step "And I press \"4fs\"" "And" "I press \"4fs\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"bywbbP\"" "And" "I press \"bywbbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here is a list of some words, some are some small, some some big and some huge." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a word (after)" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here is a list of words, some are small, some big and some huge." py-string nil nil] [cl-struct-ecukes-step "And I press \"4fs\"" "And" "I press \"4fs\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"bywbbp\"" "And" "I press \"bywbbp\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here is a list of wsome ords, some are ssome mall, some bsome ig and some huge." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "blue and big and purple and big and pink and big and small" py-string nil nil] [cl-struct-ecukes-step "And I press \"fg\"" "And" "I press \"fg\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"bb3ywP\"" "And" "I press \"bb3ywP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "blue and big and and big and purple and big and and big and pink and big and and big and small" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste up to a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"ytmbP\"" "And" "I press \"ytmbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "e are soHere are some words.\ne are soHere are some words.\ne are soHere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste till before a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yfmbP\"" "And" "I press \"yfmbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "e are somHere are some words.\ne are somHere are some words.\ne are somHere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste until the end of the line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fsy$$p\"" "And" "I type \"fsy$$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.some words.\nHere are some words.some words.\nHere are some words.some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yyp\"" "And" "I press \"yyp\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nHere are some words.\nThere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2yyP\"" "And" "I press \"2yyP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nThere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste with registers" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"b\"" "And" "I press \"b\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"a\" then type \"yw\"" "And" "I set the register to \"a\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"w\"" "And" "I press \"w\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"b\" then type \"yw\"" "And" "I set the register to \"b\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"w\"" "And" "I press \"w\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"c\" then type \"yw\"" "And" "I set the register to \"c\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$\"" "And" "I press \"$\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"a\" then type \"p\"" "And" "I set the register to \"a\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"b\" then type \"p\"" "And" "I set the register to \"b\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"c\" then type \"p\"" "And" "I set the register to \"c\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.Here are some \nHere are some words.Here are some \nHere are some words.Here are some " py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Delete text\n" nil] nil nil ([cl-struct-ecukes-scenario "Delete a word" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bdw\"" "And" "I type \"bdw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"and more \"" "Then" "I should see \"and more \"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a letter" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bx\"" "And" "I type \"bx\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"ords ords and more ords\"" "Then" "I should see \"ords ords and more ords\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a letter with count" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"b2x\"" "And" "I type \"b2x\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"rds rds and more rds\"" "Then" "I should see \"rds rds and more rds\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Lots of words words and more words\nLots of words words and more words\nLots of words words and more words\nLots of words words and more words" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fw3dw\"" "And" "I type \"fw3dw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Lots of more words\nLots of more words\nLots of more words\nLots of more words" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete a WORD" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "composite-words composite-words and more composite-words" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bdaW\"" "And" "I type \"bdaW\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"and more\"" "Then" "I should see \"and more\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThat is a line.\nThis is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"j\"" "And" "I press \"j\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dd\"" "And" "I press \"dd\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a line.\nThis is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete a line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "That is a line.\nThis is a line.\nAnother a line.\nThat is a line.\nThis is a line.\nThis is a line.\nThat is a line.\nAnother a line.\nThis is a line.\nLast line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2dd\"" "And" "I press \"2dd\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Another a line.\nThis is a line.\nThis is a line.\nLast line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete to the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fdD\"" "And" "I press \"fdD\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a super \nThis is a super \nThis is a super \nThis is a super " py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete to the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fdd^\"" "And" "I type \"fdd^\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "duper long line.\nduper long line.\nduper long line.\nduper long line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete up to a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fwdfh\"" "And" "I press \"fwdfh\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road patches of green.\nThe road patches of green.\nThe road patches of green.\nThe road patches of green." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete till before a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fwdth\"" "And" "I press \"fwdth\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road h patches of green.\nThe road h patches of green.\nThe road h patches of green.\nThe road h patches of green." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete till before a letter with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fw2dth\"" "And" "I press \"fw2dth\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road hes of green.\nThe road hes of green.\nThe road hes of green.\nThe road hes of green." py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Insert and change text\n" nil] nil nil ([cl-struct-ecukes-scenario "Text typed in insert state should be entered into the buffer" ([cl-struct-ecukes-step "When I replace the buffer text with \"aaa\"" "When" "I replace the buffer text with \"aaa\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"clfirst text \"" "And" "I type \"clfirst text \"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "first text first text first text" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Enter new lines" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cl\"" "And" "I press \"cl\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"word\" followed by enter" "And" "I press \"word\" followed by enter" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "word\nword\nword" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Open line below" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"oabc\"" "And" "I press \"oabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "bbb\nabc\nabc\nabc" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Open line above" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"Oabc\"" "And" "I press \"Oabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "abc\nabc\nabc\nbbb" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Insert at cursor" ([cl-struct-ecukes-step "When I replace the buffer text with \"a a a\"" "When" "I replace the buffer text with \"a a a\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"i-y-\"" "And" "I press \"i-y-\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"-y-a -y-a -y-a\"" "Then" "I should see \"-y-a -y-a -y-a\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Insert after cursor" ([cl-struct-ecukes-step "When I replace the buffer text with \"a a a\"" "When" "I replace the buffer text with \"a a a\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"a-x-\"" "And" "I press \"a-x-\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"a-x- a-x- a-x-\"" "Then" "I should see \"a-x- a-x- a-x-\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Insert at the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I go to word \"line\"" "And" "I go to word \"line\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"Istart \"" "And" "I type \"Istart \"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "start This is a line\nstart This is a line\nstart This is a line" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Insert at the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I go to word \"line\"" "And" "I go to word \"line\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"A end\"" "And" "I type \"A end\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a line end\nThis is a line end\nThis is a line end" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a letter" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"clw\"" "And" "I type \"clw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyw xyw xyw\"" "Then" "I should see \"xyw xyw xyw\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a word" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bcwabc\"" "And" "I type \"bcwabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc abc abc\"" "Then" "I should see \"abc abc abc\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a word at the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bcwabc\"" "And" "I type \"bcwabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "abc is a line\nabc is a line\nabc is a line" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change to the end of word" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bceabc\"" "And" "I type \"bceabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc abc abc\"" "Then" "I should see \"abc abc abc\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change to the end of word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "xyz yyz yyz xyz yyz yyz xyz yyz yyz xyz yyz yyz" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"b2ceabc\"" "And" "I type \"b2ceabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc yyz abc yyz abc yyz abc yyz\"" "Then" "I should see \"abc yyz abc yyz abc yyz abc yyz\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up to a letter (f)" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbcftxyz\"" "And" "I type \"bbbcftxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzher-test xyzher-test xyzher-test\"" "Then" "I should see \"xyzher-test xyzher-test xyzher-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up to a letter (f) with count" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbb2cftxyz\"" "And" "I type \"bbb2cftxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzest xyzest xyzest\"" "Then" "I should see \"xyzest xyzest xyzest\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up till before a letter (t)" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbcttxyz\"" "And" "I type \"bbbcttxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzther-test xyzther-test xyzther-test\"" "Then" "I should see \"xyzther-test xyzther-test xyzther-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a visual selection" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbv4lcxyz\"" "And" "I type \"bbbv4lcxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzer-test xyzer-test xyzer-test\"" "Then" "I should see \"xyzer-test xyzer-test xyzer-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a visual selection 2" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a simple line.\nThis is a simple line.\nThis is a simple line.\nThat is a simple line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bvt.cChanged text\"" "And" "I type \"bvt.cChanged text\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Changed text.\nChanged text.\nChanged text.\nThat is a simple line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change until the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wC\"" "And" "I press \"wC\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"line has changed.\"" "And" "I type \"line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This line has changed.\nThis line has changed.\nThis line has changed." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThis is a line.\nThat is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"cc\"" "And" "I type \"cc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The line has changed.\"" "And" "I type \"The line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The line has changed.\nThat is a line.\nThe line has changed.\nThat is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole visual line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThis is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"Vc\"" "And" "I press \"Vc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The line has changed.\"" "And" "I type \"The line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The line has changed.\nThat is a line.\nThe line has changed.\nThat is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThe next line.\nThe last line.\nThis is a line.\nThe next line.\nThe last line.\nThe last line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2cc\"" "And" "I press \"2cc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The first two lines have changed.\"" "And" "I type \"The first two lines have changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The first two lines have changed.\nThe last line.\nThe first two lines have changed.\nThe last line." py-string nil nil]) nil])] [cl-struct-ecukes-feature nil nil nil ([cl-struct-ecukes-scenario "The custom command should run at each cursor real and fake" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "There is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line" py-string nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"f0\"" "And" "I press \"f0\"" nil regular nil nil] [cl-struct-ecukes-step "And I call \"evil-mc-inc-num-at-each-cursor\"" "And" "I call \"evil-mc-inc-num-at-each-cursor\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "There is a 0 on this line\nThere is a 1 on this line\nThere is a 2 on this line\nThere is a 3 on this line\nThere is a 4 on this line\nThere is a 5 on this line" py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Text objects and surround" nil] nil nil ([cl-struct-ecukes-scenario "Change the bracket type" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"csbB\"" "And" "I press \"csbB\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a {very} very {long} line with {lots of} words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete brackets inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dib\"" "And" "I press \"dib\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a () very () line with () words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete brackets outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dab\"" "And" "I press \"dab\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a very line with words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy brackets inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (normal) line.\nThis is a (normal) line.\nThis is a (normal) line." py-string nil nil] [cl-struct-ecukes-step "And I press \"fn\"" "And" "I press \"fn\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yib\"" "And" "I press \"yib\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$p\"" "And" "I press \"$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (normal) line.normal\nThis is a (normal) line.normal\nThis is a (normal) line.normal" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy brackets outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (normal) line.\nThis is a (normal) line.\nThis is a (normal) line." py-string nil nil] [cl-struct-ecukes-step "And I press \"fn\"" "And" "I press \"fn\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yab\"" "And" "I press \"yab\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$p\"" "And" "I press \"$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (normal) line.(normal)\nThis is a (normal) line.(normal)\nThis is a (normal) line.(normal)" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a parenthesis expression inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (sentence) with brackets.\nThis is a (sentence) with brackets.\nThis is a (sentence) with brackets." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"f(cibchanged\"" "And" "I type \"f(cibchanged\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (changed) with brackets.\nThis is a (changed) with brackets.\nThis is a (changed) with brackets." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a parenthesis expression outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (sentence) with brackets.\nThis is a (sentence) with brackets.\nThis is a (sentence) with brackets." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"f(cabchanged\"" "And" "I type \"f(cabchanged
change
change
\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a changed with brackets.\nThis is a changed with brackets.\nThis is a changed with brackets." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Surround a word with quotes" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a simple line.\nThis is a simple line.\nThat is a simple line.\nThis is a simple line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fmviwS'\"" "And" "I type \"fmviwS'\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a 'simple' line.\nThis is a 'simple' line.\nThat is a simple line.\nThis is a 'simple' line." py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Visual region\n" nil] nil nil ([cl-struct-ecukes-scenario "Change selected text with the cursor at the end of the region" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wve\"" "And" "I press \"wve\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cisn't\"" "And" "I press \"cisn't\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This isn't a line.\nThis isn't a line.\nThis isn't a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change selected text with the cursor at the beginning of the region" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wveo\"" "And" "I press \"wveo\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cisn't\"" "And" "I press \"cisn't\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This isn't a line.\nThis isn't a line.\nThis isn't a line." py-string nil nil]) nil])]))
ecukes-run(("/Users/aaronjensen/Source/evil-mc/features/evil-mc-command-info.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-copy-paste.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-delete.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-insert.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-run-for-each-cursor.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-text-objects.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-visual.feature"))
(let ((feature-files)) (-each args (function (lambda (arg) (let ((path (f-expand arg ...))) (if (f-dir\? path) (-each (f-files path ... ...) (function ...)) (setq feature-files (cons path feature-files))))))) (ecukes-run feature-files))
ecukes-cli/run("features")
apply(ecukes-cli/run "features")
commander--handle-command(nil)
commander-parse(("--debug"))
(if commander-parsing-done nil (commander-parse (or commander-args (cdr command-line-args-left))))
eval-buffer(#<buffer *load*> nil "/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el" nil t)
load-with-code-conversion("/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el" "/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el" nil t)
load("/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el" nil t t)
command-line-1(("-scriptload" "/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el"))
command-line()
normal-top-level()
.
 scan-lists(2 1 1)
up-list(1)
evil-up-paren(91 93 1)
#[(G4 G5 &optional cnt) "\303J J\n#\207" [G5 G4 cnt evil-up-paren] 4](--close-- --open-- 1)
apply(#[(G4 G5 &optional cnt) "\303J J\n#\207" [G5 G4 cnt evil-up-paren] 4] --close-- --open-- 1)
(lambda (&rest --cl-rest--) (apply (quote #[(G4 G5 &optional cnt) "\303J J\n#\207" [G5 G4 cnt evil-up-paren] 4]) (quote --close--) (quote --open--) --cl-rest--))(1)
evil-select-block((lambda (&rest --cl-rest--) (apply (quote #[(G4 G5 &optional cnt) "\303J J\n#\207" [G5 G4 cnt evil-up-paren] 4]) (quote --close--) (quote --open--) --cl-rest--)) nil nil inclusive 1 t)
evil-select-paren(91 93 nil nil inclusive 1 t)
evil-a-bracket()
evil-surround-outer-overlay(91)
evil-surround-change(91)
funcall-interactively(evil-surround-change 91)
call-interactively(evil-surround-change)
evil-surround-edit(change)
funcall-interactively(evil-surround-edit change)
call-interactively(evil-surround-edit)
evil-motion-range(evil-surround-edit nil nil)
evil-operator-range(t)
byte-code("\306\307\310\"\205\311\307\310\"\206\312\311\307\313\"`\314\211\314\211\315\316\317!\320 D\"`
\321 \204=\322 \203@\317\321 \203L\323\324!\210\202`\311\307\325\"\203] \206X\nb\210\202`\nb\210.\207" [evil-operator-range-motion evil-operator-range-type orig evil-operator-range-beginning evil-operator-range-end evil-inhibit-operator evil-has-command-property-p evil-change :motion evil-get-command-property undefined :type nil append evil-operator-range t evil-yank-handler evil-visual-state-p region-active-p evil-visual-rotate upper-left :move-point evil-inhibit-operator-value this-command evil-this-operator evil-this-register deactivate-mark] 5)
call-interactively(evil-change nil nil)
command-execute(evil-change)
execute-kbd-macro("cs[B")
#[(keybinding) "\306\232\203 \307\232\203\310\311!\312=\203\313\314 !\f\203&\315
\"\202> \316\232\203:\310\317!\320=\203:\321 \210\202>\322 !\210) \211\207" [espuds-previous-keyboard-input keybinding this-command macro espuds-chain-active espuds-action-chain "C-y" "M-y" key-binding [134217849] yank-pop yank edmacro-parse-keys vconcat "C-g" "" keyboard-quit espuds-quit execute-kbd-macro] 3]("cs[B")
apply(#[(keybinding) "\306\232\203 \307\232\203\310\311!\312=\203\313\314 !\f\203&\315
\"\202> \316\232\203:\310\317!\320=\203:\321 \210\202>\322 !\210) \211\207" [espuds-previous-keyboard-input keybinding this-command macro espuds-chain-active espuds-action-chain "C-y" "M-y" key-binding [134217849] yank-pop yank edmacro-parse-keys vconcat "C-g" "" keyboard-quit espuds-quit execute-kbd-macro] 3] "cs[B")
ecukes-steps-call("I press \"%s\"" ("cs[B"))
When("I press \"%s\"" "cs[B")
(let* ((key (nth 0 row)) (cmd (nth 1 row)) (out (nth 2 row))) (if (or (null out) (eq 0 (length out))) (progn (setq out key))) (evil-force-normal-state) (When "I press \"%s\"" key) (Then "The recorded command name should be \"%s\"" cmd) (Then "The recorded command keys should be \"%s\"" out) (if undo (progn (evil-force-normal-state) (When "I press \"u\""))))
(while --dolist-tail-- (setq row (car --dolist-tail--)) (let* ((key (nth 0 row)) (cmd (nth 1 row)) (out (nth 2 row))) (if (or (null out) (eq 0 (length out))) (progn (setq out key))) (evil-force-normal-state) (When "I press \"%s\"" key) (Then "The recorded command name should be \"%s\"" cmd) (Then "The recorded command keys should be \"%s\"" out) (if undo (progn (evil-force-normal-state) (When "I press \"u\"")))) (setq --dolist-tail-- (cdr --dolist-tail--)))
(let ((--dolist-tail-- rows) row) (while --dolist-tail-- (setq row (car --dolist-tail--)) (let* ((key (nth 0 row)) (cmd (nth 1 row)) (out (nth 2 row))) (if (or (null out) (eq 0 (length out))) (progn (setq out key))) (evil-force-normal-state) (When "I press \"%s\"" key) (Then "The recorded command name should be \"%s\"" cmd) (Then "The recorded command keys should be \"%s\"" out) (if undo (progn (evil-force-normal-state) (When "I press \"u\"")))) (setq --dolist-tail-- (cdr --dolist-tail--))))
(let ((header (car table)) (rows (cdr table))) (let ((--dolist-tail-- rows) row) (while --dolist-tail-- (setq row (car --dolist-tail--)) (let* ((key (nth 0 row)) (cmd (nth 1 row)) (out (nth 2 row))) (if (or (null out) (eq 0 (length out))) (progn (setq out key))) (evil-force-normal-state) (When "I press \"%s\"" key) (Then "The recorded command name should be \"%s\"" cmd) (Then "The recorded command keys should be \"%s\"" out) (if undo (progn (evil-force-normal-state) (When "I press \"u\"")))) (setq --dolist-tail-- (cdr --dolist-tail--)))))
run-and-verify((("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) t)
(lambda (table) (run-and-verify table t))((("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")))
apply((lambda (table) (run-and-verify table t)) (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")))
ecukes-run-step([cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil nil])
#[(step) "\306! \232\307! \232\211\203\310\311 \f#\210\n\203 \310\312 \f#\210\310\313 \f#\210
\2037\314 !\211\2049\315\2029\316 \317H>\204I\320\321\322 D\"\210 \211\323\fI\210) \203\\\310\324 \f#\210\n\203f\310\325 \f#\210\f\305=\203w\326 \210\310\327 \"\210\202\226\f\315=\203\210\330 \210\310\331 \"\210\202\226\f\316=\203\226\332 \210\310\333 \"\210\310\334 \f#*\207" [steps step last first status success -first-item -last-item run-hook-with-args ecukes-reporter-before-first-step-hook ecukes-reporter-before-last-step-hook ecukes-reporter-before-step-hook ecukes-run-step failure skipped 0 signal wrong-type-argument ecukes-step 7 ecukes-reporter-after-first-step-hook ecukes-reporter-after-last-step-hook ecukes-stats-step-pass ecukes-reporter-after-step-success-hook ecukes-stats-step-fail ecukes-reporter-after-step-failed-hook ecukes-stats-step-skip ecukes-reporter-after-step-skipped-hook ecukes-reporter-after-step-hook cl-struct-ecukes-step-tags v] 5]([cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil nil])
-each(([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil nil]) #[(step) "\306! \232\307! \232\211\203\310\311 \f#\210\n\203 \310\312 \f#\210\310\313 \f#\210
\2037\314 !\211\2049\315\2029\316 \317H>\204I\320\321\322 D\"\210 \211\323\fI\210) \203\\\310\324 \f#\210\n\203f\310\325 \f#\210\f\305=\203w\326 \210\310\327 \"\210\202\226\f\315=\203\210\330 \210\310\331 \"\210\202\226\f\316=\203\226\332 \210\310\333 \"\210\310\334 \f#*\207" [steps step last first status success -first-item -last-item run-hook-with-args ecukes-reporter-before-first-step-hook ecukes-reporter-before-last-step-hook ecukes-reporter-before-step-hook ecukes-run-step failure skipped 0 signal wrong-type-argument ecukes-step 7 ecukes-reporter-after-first-step-hook ecukes-reporter-after-last-step-hook ecukes-stats-step-pass ecukes-reporter-after-step-success-hook ecukes-stats-step-fail ecukes-reporter-after-step-failed-hook ecukes-stats-step-skip ecukes-reporter-after-step-skipped-hook ecukes-reporter-after-step-hook cl-struct-ecukes-step-tags v] 5])
ecukes-run-steps(([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil nil]) t)
ecukes-run-scenario([cl-struct-ecukes-scenario "Record commands to work with surrounding delimiters" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil nil]) nil] t)
#[(scenario) "\306 \"\203g\307! \232\310! \232\f\203\311 \210
\203+\203+\f\203+\312
!\210 \2034\313\314 \"\210\n\203=\313\315 \"\210\313\316 \"\210\317 \"\210 \203Q\313\320 \"\210\n\203Z\313\321 \"\210\313\322 \"\210\323 \210\324\211*\207\313\325 \"\207" [scenarios scenario last first background-should-run background -contains\? -first-item -last-item ecukes-hooks-run-before ecukes-run-background-steps run-hook-with-args ecukes-reporter-before-first-scenario-hook ecukes-reporter-before-last-scenario-hook ecukes-reporter-before-scenario-hook ecukes-run-scenario ecukes-reporter-after-first-scenario-hook ecukes-reporter-after-last-scenario-hook ecukes-reporter-after-scenario-hook ecukes-hooks-run-after t ecukes-reporter-pending-scenario-hook background-success] 3]([cl-struct-ecukes-scenario "Record commands to work with surrounding delimiters" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil nil]) nil])
-each(([cl-struct-ecukes-scenario "Record commands to copy lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"yy\" \"3yy\") :value nil :explanation (arrays-of-different-length 2 3 \"yy\" \"3yy\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to change lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k k\nThis is the second line -1 -1 -1 t t t f f f k k k k\nThis is the third line -1 -1 -1 t t t f f f k k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"ctk\" \"3ctk\") :value nil :explanation (arrays-of-different-length 3 4 \"ctk\" \"3ctk\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to delete lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"dtk\" \"3dtk\") :value nil :explanation (arrays-of-different-length 3 4 \"dtk\" \"3dtk\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to work with surrounding delimiters" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to select inside parentheses" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"vib\"" "When" "I press \"vib\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-inner-paren\"" "Then" "The recorded command name should be \"evil-inner-paren\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"ib\"" "And" "The recorded command keys should be \"ib\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Record the command to join two lines" ([cl-struct-ecukes-step "Given I have one cursor at \"line\" in \"First line.\\nSecond line.\"" "Given" "I have one cursor at \"line\" in \"First line.\\nSecond line.\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"J\"" "When" "I press \"J\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-join\"" "Then" "The recorded command name should be \"evil-join\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"J\"" "And" "The recorded command keys should be \"J\"" nil regular nil nil]) nil]) #[(scenario) "\306 \"\203g\307! \232\310! \232\f\203\311 \210
\203+\203+\f\203+\312
!\210 \2034\313\314 \"\210\n\203=\313\315 \"\210\313\316 \"\210\317 \"\210 \203Q\313\320 \"\210\n\203Z\313\321 \"\210\313\322 \"\210\323 \210\324\211*\207\313\325 \"\207" [scenarios scenario last first background-should-run background -contains\? -first-item -last-item ecukes-hooks-run-before ecukes-run-background-steps run-hook-with-args ecukes-reporter-before-first-scenario-hook ecukes-reporter-before-last-scenario-hook ecukes-reporter-before-scenario-hook ecukes-run-scenario ecukes-reporter-after-first-scenario-hook ecukes-reporter-after-last-scenario-hook ecukes-reporter-after-scenario-hook ecukes-hooks-run-after t ecukes-reporter-pending-scenario-hook background-success] 3])
ecukes-run-feature([cl-struct-ecukes-feature [cl-struct-ecukes-intro "Record current command info\n" nil] nil nil ([cl-struct-ecukes-scenario "Record commands to copy lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"yy\" \"3yy\") :value nil :explanation (arrays-of-different-length 2 3 \"yy\" \"3yy\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to change lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k k\nThis is the second line -1 -1 -1 t t t f f f k k k k\nThis is the third line -1 -1 -1 t t t f f f k k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"ctk\" \"3ctk\") :value nil :explanation (arrays-of-different-length 3 4 \"ctk\" \"3ctk\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to delete lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"dtk\" \"3dtk\") :value nil :explanation (arrays-of-different-length 3 4 \"dtk\" \"3dtk\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to work with surrounding delimiters" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to select inside parentheses" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"vib\"" "When" "I press \"vib\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-inner-paren\"" "Then" "The recorded command name should be \"evil-inner-paren\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"ib\"" "And" "The recorded command keys should be \"ib\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Record the command to join two lines" ([cl-struct-ecukes-step "Given I have one cursor at \"line\" in \"First line.\\nSecond line.\"" "Given" "I have one cursor at \"line\" in \"First line.\\nSecond line.\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"J\"" "When" "I press \"J\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-join\"" "Then" "The recorded command name should be \"evil-join\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"J\"" "And" "The recorded command keys should be \"J\"" nil regular nil nil]) nil])])
#[(feature) "\304! =\305! =\211\203\306\307 \"\210\n\203\306\310 \"\210\306\311 \"\210\312 !\210 \2030\306\313 \"\210\n\2039\306\314 \"\210\306\315 \"*\207" [ecukes-features feature last first -first-item -last-item run-hook-with-args ecukes-reporter-before-first-feature-hook ecukes-reporter-before-last-feature-hook ecukes-reporter-before-feature-hook ecukes-run-feature ecukes-reporter-after-first-feature-hook ecukes-reporter-after-last-feature-hook ecukes-reporter-after-feature-hook] 4]([cl-struct-ecukes-feature [cl-struct-ecukes-intro "Record current command info\n" nil] nil nil ([cl-struct-ecukes-scenario "Record commands to copy lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"yy\" \"3yy\") :value nil :explanation (arrays-of-different-length 2 3 \"yy\" \"3yy\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to change lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k k\nThis is the second line -1 -1 -1 t t t f f f k k k k\nThis is the third line -1 -1 -1 t t t f f f k k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"ctk\" \"3ctk\") :value nil :explanation (arrays-of-different-length 3 4 \"ctk\" \"3ctk\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to delete lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"dtk\" \"3dtk\") :value nil :explanation (arrays-of-different-length 3 4 \"dtk\" \"3dtk\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to work with surrounding delimiters" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to select inside parentheses" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"vib\"" "When" "I press \"vib\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-inner-paren\"" "Then" "The recorded command name should be \"evil-inner-paren\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"ib\"" "And" "The recorded command keys should be \"ib\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Record the command to join two lines" ([cl-struct-ecukes-step "Given I have one cursor at \"line\" in \"First line.\\nSecond line.\"" "Given" "I have one cursor at \"line\" in \"First line.\\nSecond line.\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"J\"" "When" "I press \"J\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-join\"" "Then" "The recorded command name should be \"evil-join\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"J\"" "And" "The recorded command keys should be \"J\"" nil regular nil nil]) nil])])
-each(([cl-struct-ecukes-feature [cl-struct-ecukes-intro "Record current command info\n" nil] nil nil ([cl-struct-ecukes-scenario "Record commands to copy lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"yy\" \"3yy\") :value nil :explanation (arrays-of-different-length 2 3 \"yy\" \"3yy\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to change lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k k\nThis is the second line -1 -1 -1 t t t f f f k k k k\nThis is the third line -1 -1 -1 t t t f f f k k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"ctk\" \"3ctk\") :value nil :explanation (arrays-of-different-length 3 4 \"ctk\" \"3ctk\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to delete lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"dtk\" \"3dtk\") :value nil :explanation (arrays-of-different-length 3 4 \"dtk\" \"3dtk\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to work with surrounding delimiters" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to select inside parentheses" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"vib\"" "When" "I press \"vib\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-inner-paren\"" "Then" "The recorded command name should be \"evil-inner-paren\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"ib\"" "And" "The recorded command keys should be \"ib\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Record the command to join two lines" ([cl-struct-ecukes-step "Given I have one cursor at \"line\" in \"First line.\\nSecond line.\"" "Given" "I have one cursor at \"line\" in \"First line.\\nSecond line.\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"J\"" "When" "I press \"J\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-join\"" "Then" "The recorded command name should be \"evil-join\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"J\"" "And" "The recorded command keys should be \"J\"" nil regular nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Copy paste\n" nil] nil nil ([cl-struct-ecukes-scenario "Copy paste a word (before)" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here is a list of words, some are small, some big and some huge." py-string nil nil] [cl-struct-ecukes-step "And I press \"4fs\"" "And" "I press \"4fs\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"bywbbP\"" "And" "I press \"bywbbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here is a list of some words, some are some small, some some big and some huge." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a word (after)" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here is a list of words, some are small, some big and some huge." py-string nil nil] [cl-struct-ecukes-step "And I press \"4fs\"" "And" "I press \"4fs\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"bywbbp\"" "And" "I press \"bywbbp\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here is a list of wsome ords, some are ssome mall, some bsome ig and some huge." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "blue and big and purple and big and pink and big and small" py-string nil nil] [cl-struct-ecukes-step "And I press \"fg\"" "And" "I press \"fg\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"bb3ywP\"" "And" "I press \"bb3ywP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "blue and big and and big and purple and big and and big and pink and big and and big and small" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste up to a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"ytmbP\"" "And" "I press \"ytmbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "e are soHere are some words.\ne are soHere are some words.\ne are soHere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste till before a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yfmbP\"" "And" "I press \"yfmbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "e are somHere are some words.\ne are somHere are some words.\ne are somHere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste until the end of the line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fsy$$p\"" "And" "I type \"fsy$$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.some words.\nHere are some words.some words.\nHere are some words.some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yyp\"" "And" "I press \"yyp\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nHere are some words.\nThere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2yyP\"" "And" "I press \"2yyP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nThere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste with registers" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"b\"" "And" "I press \"b\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"a\" then type \"yw\"" "And" "I set the register to \"a\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"w\"" "And" "I press \"w\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"b\" then type \"yw\"" "And" "I set the register to \"b\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"w\"" "And" "I press \"w\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"c\" then type \"yw\"" "And" "I set the register to \"c\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$\"" "And" "I press \"$\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"a\" then type \"p\"" "And" "I set the register to \"a\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"b\" then type \"p\"" "And" "I set the register to \"b\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"c\" then type \"p\"" "And" "I set the register to \"c\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.Here are some \nHere are some words.Here are some \nHere are some words.Here are some " py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Delete text\n" nil] nil nil ([cl-struct-ecukes-scenario "Delete a word" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bdw\"" "And" "I type \"bdw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"and more \"" "Then" "I should see \"and more \"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a letter" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bx\"" "And" "I type \"bx\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"ords ords and more ords\"" "Then" "I should see \"ords ords and more ords\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a letter with count" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"b2x\"" "And" "I type \"b2x\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"rds rds and more rds\"" "Then" "I should see \"rds rds and more rds\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Lots of words words and more words\nLots of words words and more words\nLots of words words and more words\nLots of words words and more words" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fw3dw\"" "And" "I type \"fw3dw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Lots of more words\nLots of more words\nLots of more words\nLots of more words" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete a WORD" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "composite-words composite-words and more composite-words" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bdaW\"" "And" "I type \"bdaW\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"and more\"" "Then" "I should see \"and more\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThat is a line.\nThis is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"j\"" "And" "I press \"j\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dd\"" "And" "I press \"dd\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a line.\nThis is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete a line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "That is a line.\nThis is a line.\nAnother a line.\nThat is a line.\nThis is a line.\nThis is a line.\nThat is a line.\nAnother a line.\nThis is a line.\nLast line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2dd\"" "And" "I press \"2dd\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Another a line.\nThis is a line.\nThis is a line.\nLast line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete to the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fdD\"" "And" "I press \"fdD\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a super \nThis is a super \nThis is a super \nThis is a super " py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete to the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fdd^\"" "And" "I type \"fdd^\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "duper long line.\nduper long line.\nduper long line.\nduper long line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete up to a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fwdfh\"" "And" "I press \"fwdfh\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road patches of green.\nThe road patches of green.\nThe road patches of green.\nThe road patches of green." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete till before a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fwdth\"" "And" "I press \"fwdth\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road h patches of green.\nThe road h patches of green.\nThe road h patches of green.\nThe road h patches of green." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete till before a letter with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fw2dth\"" "And" "I press \"fw2dth\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road hes of green.\nThe road hes of green.\nThe road hes of green.\nThe road hes of green." py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Insert and change text\n" nil] nil nil ([cl-struct-ecukes-scenario "Text typed in insert state should be entered into the buffer" ([cl-struct-ecukes-step "When I replace the buffer text with \"aaa\"" "When" "I replace the buffer text with \"aaa\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"clfirst text \"" "And" "I type \"clfirst text \"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "first text first text first text" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Enter new lines" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cl\"" "And" "I press \"cl\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"word\" followed by enter" "And" "I press \"word\" followed by enter" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "word\nword\nword" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Open line below" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"oabc\"" "And" "I press \"oabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "bbb\nabc\nabc\nabc" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Open line above" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"Oabc\"" "And" "I press \"Oabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "abc\nabc\nabc\nbbb" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Insert at cursor" ([cl-struct-ecukes-step "When I replace the buffer text with \"a a a\"" "When" "I replace the buffer text with \"a a a\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"i-y-\"" "And" "I press \"i-y-\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"-y-a -y-a -y-a\"" "Then" "I should see \"-y-a -y-a -y-a\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Insert after cursor" ([cl-struct-ecukes-step "When I replace the buffer text with \"a a a\"" "When" "I replace the buffer text with \"a a a\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"a-x-\"" "And" "I press \"a-x-\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"a-x- a-x- a-x-\"" "Then" "I should see \"a-x- a-x- a-x-\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Insert at the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I go to word \"line\"" "And" "I go to word \"line\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"Istart \"" "And" "I type \"Istart \"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "start This is a line\nstart This is a line\nstart This is a line" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Insert at the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I go to word \"line\"" "And" "I go to word \"line\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"A end\"" "And" "I type \"A end\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a line end\nThis is a line end\nThis is a line end" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a letter" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"clw\"" "And" "I type \"clw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyw xyw xyw\"" "Then" "I should see \"xyw xyw xyw\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a word" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bcwabc\"" "And" "I type \"bcwabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc abc abc\"" "Then" "I should see \"abc abc abc\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a word at the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bcwabc\"" "And" "I type \"bcwabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "abc is a line\nabc is a line\nabc is a line" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change to the end of word" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bceabc\"" "And" "I type \"bceabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc abc abc\"" "Then" "I should see \"abc abc abc\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change to the end of word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "xyz yyz yyz xyz yyz yyz xyz yyz yyz xyz yyz yyz" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"b2ceabc\"" "And" "I type \"b2ceabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc yyz abc yyz abc yyz abc yyz\"" "Then" "I should see \"abc yyz abc yyz abc yyz abc yyz\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up to a letter (f)" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbcftxyz\"" "And" "I type \"bbbcftxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzher-test xyzher-test xyzher-test\"" "Then" "I should see \"xyzher-test xyzher-test xyzher-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up to a letter (f) with count" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbb2cftxyz\"" "And" "I type \"bbb2cftxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzest xyzest xyzest\"" "Then" "I should see \"xyzest xyzest xyzest\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up till before a letter (t)" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbcttxyz\"" "And" "I type \"bbbcttxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzther-test xyzther-test xyzther-test\"" "Then" "I should see \"xyzther-test xyzther-test xyzther-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a visual selection" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbv4lcxyz\"" "And" "I type \"bbbv4lcxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzer-test xyzer-test xyzer-test\"" "Then" "I should see \"xyzer-test xyzer-test xyzer-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a visual selection 2" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a simple line.\nThis is a simple line.\nThis is a simple line.\nThat is a simple line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bvt.cChanged text\"" "And" "I type \"bvt.cChanged text\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Changed text.\nChanged text.\nChanged text.\nThat is a simple line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change until the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wC\"" "And" "I press \"wC\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"line has changed.\"" "And" "I type \"line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This line has changed.\nThis line has changed.\nThis line has changed." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThis is a line.\nThat is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"cc\"" "And" "I type \"cc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The line has changed.\"" "And" "I type \"The line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The line has changed.\nThat is a line.\nThe line has changed.\nThat is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole visual line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThis is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"Vc\"" "And" "I press \"Vc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The line has changed.\"" "And" "I type \"The line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The line has changed.\nThat is a line.\nThe line has changed.\nThat is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThe next line.\nThe last line.\nThis is a line.\nThe next line.\nThe last line.\nThe last line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2cc\"" "And" "I press \"2cc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The first two lines have changed.\"" "And" "I type \"The first two lines have changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The first two lines have changed.\nThe last line.\nThe first two lines have changed.\nThe last line." py-string nil nil]) nil])] [cl-struct-ecukes-feature nil nil nil ([cl-struct-ecukes-scenario "The custom command should run at each cursor real and fake" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "There is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line" py-string nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"f0\"" "And" "I press \"f0\"" nil regular nil nil] [cl-struct-ecukes-step "And I call \"evil-mc-inc-num-at-each-cursor\"" "And" "I call \"evil-mc-inc-num-at-each-cursor\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "There is a 0 on this line\nThere is a 1 on this line\nThere is a 2 on this line\nThere is a 3 on this line\nThere is a 4 on this line\nThere is a 5 on this line" py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Text objects and surround" nil] nil nil ([cl-struct-ecukes-scenario "Change the bracket type" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"csbB\"" "And" "I press \"csbB\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a {very} very {long} line with {lots of} words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete brackets inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dib\"" "And" "I press \"dib\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a () very () line with () words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete brackets outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dab\"" "And" "I press \"dab\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a very line with words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy brackets inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (normal) line.\nThis is a (normal) line.\nThis is a (normal) line." py-string nil nil] [cl-struct-ecukes-step "And I press \"fn\"" "And" "I press \"fn\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yib\"" "And" "I press \"yib\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$p\"" "And" "I press \"$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (normal) line.normal\nThis is a (normal) line.normal\nThis is a (normal) line.normal" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy brackets outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (normal) line.\nThis is a (normal) line.\nThis is a (normal) line." py-string nil nil] [cl-struct-ecukes-step "And I press \"fn\"" "And" "I press \"fn\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yab\"" "And" "I press \"yab\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$p\"" "And" "I press \"$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (normal) line.(normal)\nThis is a (normal) line.(normal)\nThis is a (normal) line.(normal)" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a parenthesis expression inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (sentence) with brackets.\nThis is a (sentence) with brackets.\nThis is a (sentence) with brackets." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"f(cibchanged\"" "And" "I type \"f(cibchanged\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (changed) with brackets.\nThis is a (changed) with brackets.\nThis is a (changed) with brackets." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a parenthesis expression outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (sentence) with brackets.\nThis is a (sentence) with brackets.\nThis is a (sentence) with brackets." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"f(cabchanged\"" "And" "I type \"f(cabchanged\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a changed with brackets.\nThis is a changed with brackets.\nThis is a changed with brackets." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Surround a word with quotes" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a simple line.\nThis is a simple line.\nThat is a simple line.\nThis is a simple line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fmviwS'\"" "And" "I type \"fmviwS'\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a 'simple' line.\nThis is a 'simple' line.\nThat is a simple line.\nThis is a 'simple' line." py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Visual region\n" nil] nil nil ([cl-struct-ecukes-scenario "Change selected text with the cursor at the end of the region" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wve\"" "And" "I press \"wve\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cisn't\"" "And" "I press \"cisn't\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This isn't a line.\nThis isn't a line.\nThis isn't a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change selected text with the cursor at the beginning of the region" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wveo\"" "And" "I press \"wveo\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cisn't\"" "And" "I press \"cisn't\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This isn't a line.\nThis isn't a line.\nThis isn't a line." py-string nil nil]) nil])]) #[(feature) "\304! =\305! =\211\203\306\307 \"\210\n\203\306\310 \"\210\306\311 \"\210\312 !\210 \2030\306\313 \"\210\n\2039\306\314 \"\210\306\315 \"*\207" [ecukes-features feature last first -first-item -last-item run-hook-with-args ecukes-reporter-before-first-feature-hook ecukes-reporter-before-last-feature-hook ecukes-reporter-before-feature-hook ecukes-run-feature ecukes-reporter-after-first-feature-hook ecukes-reporter-after-last-feature-hook ecukes-reporter-after-feature-hook] 4])
ecukes-run-features(([cl-struct-ecukes-feature [cl-struct-ecukes-intro "Record current command info\n" nil] nil nil ([cl-struct-ecukes-scenario "Record commands to copy lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"yy\" \"3yy\") :value nil :explanation (arrays-of-different-length 2 3 \"yy\" \"3yy\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to change lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k k\nThis is the second line -1 -1 -1 t t t f f f k k k k\nThis is the third line -1 -1 -1 t t t f f f k k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"ctk\" \"3ctk\") :value nil :explanation (arrays-of-different-length 3 4 \"ctk\" \"3ctk\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to delete lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"dtk\" \"3dtk\") :value nil :explanation (arrays-of-different-length 3 4 \"dtk\" \"3dtk\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to work with surrounding delimiters" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil nil]) nil] [cl-struct-ecukes-scenario "Record commands to select inside parentheses" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"vib\"" "When" "I press \"vib\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-inner-paren\"" "Then" "The recorded command name should be \"evil-inner-paren\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"ib\"" "And" "The recorded command keys should be \"ib\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Record the command to join two lines" ([cl-struct-ecukes-step "Given I have one cursor at \"line\" in \"First line.\\nSecond line.\"" "Given" "I have one cursor at \"line\" in \"First line.\\nSecond line.\"" nil regular nil nil] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil nil] [cl-struct-ecukes-step "When I press \"J\"" "When" "I press \"J\"" nil regular nil nil] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-join\"" "Then" "The recorded command name should be \"evil-join\"" nil regular nil nil] [cl-struct-ecukes-step "And The recorded command keys should be \"J\"" "And" "The recorded command keys should be \"J\"" nil regular nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Copy paste\n" nil] nil nil ([cl-struct-ecukes-scenario "Copy paste a word (before)" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here is a list of words, some are small, some big and some huge." py-string nil nil] [cl-struct-ecukes-step "And I press \"4fs\"" "And" "I press \"4fs\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"bywbbP\"" "And" "I press \"bywbbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here is a list of some words, some are some small, some some big and some huge." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a word (after)" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here is a list of words, some are small, some big and some huge." py-string nil nil] [cl-struct-ecukes-step "And I press \"4fs\"" "And" "I press \"4fs\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"bywbbp\"" "And" "I press \"bywbbp\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here is a list of wsome ords, some are ssome mall, some bsome ig and some huge." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "blue and big and purple and big and pink and big and small" py-string nil nil] [cl-struct-ecukes-step "And I press \"fg\"" "And" "I press \"fg\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"bb3ywP\"" "And" "I press \"bb3ywP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "blue and big and and big and purple and big and and big and pink and big and and big and small" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste up to a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"ytmbP\"" "And" "I press \"ytmbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "e are soHere are some words.\ne are soHere are some words.\ne are soHere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste till before a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yfmbP\"" "And" "I press \"yfmbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "e are somHere are some words.\ne are somHere are some words.\ne are somHere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste until the end of the line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fsy$$p\"" "And" "I type \"fsy$$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.some words.\nHere are some words.some words.\nHere are some words.some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yyp\"" "And" "I press \"yyp\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nHere are some words.\nThere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2yyP\"" "And" "I press \"2yyP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nThere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste with registers" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"b\"" "And" "I press \"b\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"a\" then type \"yw\"" "And" "I set the register to \"a\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"w\"" "And" "I press \"w\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"b\" then type \"yw\"" "And" "I set the register to \"b\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"w\"" "And" "I press \"w\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"c\" then type \"yw\"" "And" "I set the register to \"c\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$\"" "And" "I press \"$\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"a\" then type \"p\"" "And" "I set the register to \"a\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"b\" then type \"p\"" "And" "I set the register to \"b\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"c\" then type \"p\"" "And" "I set the register to \"c\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.Here are some \nHere are some words.Here are some \nHere are some words.Here are some " py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Delete text\n" nil] nil nil ([cl-struct-ecukes-scenario "Delete a word" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bdw\"" "And" "I type \"bdw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"and more \"" "Then" "I should see \"and more \"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a letter" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bx\"" "And" "I type \"bx\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"ords ords and more ords\"" "Then" "I should see \"ords ords and more ords\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a letter with count" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"b2x\"" "And" "I type \"b2x\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"rds rds and more rds\"" "Then" "I should see \"rds rds and more rds\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Lots of words words and more words\nLots of words words and more words\nLots of words words and more words\nLots of words words and more words" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fw3dw\"" "And" "I type \"fw3dw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Lots of more words\nLots of more words\nLots of more words\nLots of more words" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete a WORD" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "composite-words composite-words and more composite-words" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bdaW\"" "And" "I type \"bdaW\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"and more\"" "Then" "I should see \"and more\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThat is a line.\nThis is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"j\"" "And" "I press \"j\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dd\"" "And" "I press \"dd\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a line.\nThis is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete a line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "That is a line.\nThis is a line.\nAnother a line.\nThat is a line.\nThis is a line.\nThis is a line.\nThat is a line.\nAnother a line.\nThis is a line.\nLast line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2dd\"" "And" "I press \"2dd\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Another a line.\nThis is a line.\nThis is a line.\nLast line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete to the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fdD\"" "And" "I press \"fdD\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a super \nThis is a super \nThis is a super \nThis is a super " py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete to the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fdd^\"" "And" "I type \"fdd^\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "duper long line.\nduper long line.\nduper long line.\nduper long line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete up to a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fwdfh\"" "And" "I press \"fwdfh\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road patches of green.\nThe road patches of green.\nThe road patches of green.\nThe road patches of green." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete till before a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fwdth\"" "And" "I press \"fwdth\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road h patches of green.\nThe road h patches of green.\nThe road h patches of green.\nThe road h patches of green." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete till before a letter with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fw2dth\"" "And" "I press \"fw2dth\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road hes of green.\nThe road hes of green.\nThe road hes of green.\nThe road hes of green." py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Insert and change text\n" nil] nil nil ([cl-struct-ecukes-scenario "Text typed in insert state should be entered into the buffer" ([cl-struct-ecukes-step "When I replace the buffer text with \"aaa\"" "When" "I replace the buffer text with \"aaa\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"clfirst text \"" "And" "I type \"clfirst text \"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "first text first text first text" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Enter new lines" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cl\"" "And" "I press \"cl\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"word\" followed by enter" "And" "I press \"word\" followed by enter" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "word\nword\nword" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Open line below" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"oabc\"" "And" "I press \"oabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "bbb\nabc\nabc\nabc" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Open line above" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"Oabc\"" "And" "I press \"Oabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "abc\nabc\nabc\nbbb" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Insert at cursor" ([cl-struct-ecukes-step "When I replace the buffer text with \"a a a\"" "When" "I replace the buffer text with \"a a a\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"i-y-\"" "And" "I press \"i-y-\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"-y-a -y-a -y-a\"" "Then" "I should see \"-y-a -y-a -y-a\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Insert after cursor" ([cl-struct-ecukes-step "When I replace the buffer text with \"a a a\"" "When" "I replace the buffer text with \"a a a\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"a-x-\"" "And" "I press \"a-x-\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"a-x- a-x- a-x-\"" "Then" "I should see \"a-x- a-x- a-x-\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Insert at the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I go to word \"line\"" "And" "I go to word \"line\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"Istart \"" "And" "I type \"Istart \"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "start This is a line\nstart This is a line\nstart This is a line" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Insert at the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I go to word \"line\"" "And" "I go to word \"line\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"A end\"" "And" "I type \"A end\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a line end\nThis is a line end\nThis is a line end" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a letter" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"clw\"" "And" "I type \"clw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyw xyw xyw\"" "Then" "I should see \"xyw xyw xyw\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a word" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bcwabc\"" "And" "I type \"bcwabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc abc abc\"" "Then" "I should see \"abc abc abc\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a word at the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bcwabc\"" "And" "I type \"bcwabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "abc is a line\nabc is a line\nabc is a line" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change to the end of word" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bceabc\"" "And" "I type \"bceabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc abc abc\"" "Then" "I should see \"abc abc abc\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change to the end of word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "xyz yyz yyz xyz yyz yyz xyz yyz yyz xyz yyz yyz" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"b2ceabc\"" "And" "I type \"b2ceabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc yyz abc yyz abc yyz abc yyz\"" "Then" "I should see \"abc yyz abc yyz abc yyz abc yyz\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up to a letter (f)" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbcftxyz\"" "And" "I type \"bbbcftxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzher-test xyzher-test xyzher-test\"" "Then" "I should see \"xyzher-test xyzher-test xyzher-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up to a letter (f) with count" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbb2cftxyz\"" "And" "I type \"bbb2cftxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzest xyzest xyzest\"" "Then" "I should see \"xyzest xyzest xyzest\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up till before a letter (t)" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbcttxyz\"" "And" "I type \"bbbcttxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzther-test xyzther-test xyzther-test\"" "Then" "I should see \"xyzther-test xyzther-test xyzther-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a visual selection" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbv4lcxyz\"" "And" "I type \"bbbv4lcxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzer-test xyzer-test xyzer-test\"" "Then" "I should see \"xyzer-test xyzer-test xyzer-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a visual selection 2" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a simple line.\nThis is a simple line.\nThis is a simple line.\nThat is a simple line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bvt.cChanged text\"" "And" "I type \"bvt.cChanged text\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Changed text.\nChanged text.\nChanged text.\nThat is a simple line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change until the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wC\"" "And" "I press \"wC\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"line has changed.\"" "And" "I type \"line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This line has changed.\nThis line has changed.\nThis line has changed." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThis is a line.\nThat is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"cc\"" "And" "I type \"cc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The line has changed.\"" "And" "I type \"The line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The line has changed.\nThat is a line.\nThe line has changed.\nThat is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole visual line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThis is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"Vc\"" "And" "I press \"Vc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The line has changed.\"" "And" "I type \"The line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The line has changed.\nThat is a line.\nThe line has changed.\nThat is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThe next line.\nThe last line.\nThis is a line.\nThe next line.\nThe last line.\nThe last line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2cc\"" "And" "I press \"2cc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The first two lines have changed.\"" "And" "I type \"The first two lines have changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The first two lines have changed.\nThe last line.\nThe first two lines have changed.\nThe last line." py-string nil nil]) nil])] [cl-struct-ecukes-feature nil nil nil ([cl-struct-ecukes-scenario "The custom command should run at each cursor real and fake" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "There is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line" py-string nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"f0\"" "And" "I press \"f0\"" nil regular nil nil] [cl-struct-ecukes-step "And I call \"evil-mc-inc-num-at-each-cursor\"" "And" "I call \"evil-mc-inc-num-at-each-cursor\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "There is a 0 on this line\nThere is a 1 on this line\nThere is a 2 on this line\nThere is a 3 on this line\nThere is a 4 on this line\nThere is a 5 on this line" py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Text objects and surround" nil] nil nil ([cl-struct-ecukes-scenario "Change the bracket type" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"csbB\"" "And" "I press \"csbB\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a {very} very {long} line with {lots of} words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete brackets inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dib\"" "And" "I press \"dib\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a () very () line with () words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete brackets outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dab\"" "And" "I press \"dab\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a very line with words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy brackets inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (normal) line.\nThis is a (normal) line.\nThis is a (normal) line." py-string nil nil] [cl-struct-ecukes-step "And I press \"fn\"" "And" "I press \"fn\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yib\"" "And" "I press \"yib\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$p\"" "And" "I press \"$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (normal) line.normal\nThis is a (normal) line.normal\nThis is a (normal) line.normal" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy brackets outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (normal) line.\nThis is a (normal) line.\nThis is a (normal) line." py-string nil nil] [cl-struct-ecukes-step "And I press \"fn\"" "And" "I press \"fn\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yab\"" "And" "I press \"yab\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$p\"" "And" "I press \"$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (normal) line.(normal)\nThis is a (normal) line.(normal)\nThis is a (normal) line.(normal)" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a parenthesis expression inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (sentence) with brackets.\nThis is a (sentence) with brackets.\nThis is a (sentence) with brackets." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"f(cibchanged\"" "And" "I type \"f(cibchanged\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (changed) with brackets.\nThis is a (changed) with brackets.\nThis is a (changed) with brackets." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a parenthesis expression outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (sentence) with brackets.\nThis is a (sentence) with brackets.\nThis is a (sentence) with brackets." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"f(cabchanged\"" "And" "I type \"f(cabchanged\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a changed with brackets.\nThis is a changed with brackets.\nThis is a changed with brackets." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Surround a word with quotes" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I rep
Undo branch point!
change
Undo branch point!
delete
Undo branch point!
delete
Undo branch point!
-- INSERT --
Undo branch point!
Undo branch point!
-- VISUAL --
evil-mc Created 3 cursors matching "\_<some\_>"
evil-mc Created 3 cursors matching "\_<some\_>"
evil-mc Created 3 cursors matching "\_<big\_>"
Debugger entered: ((cl-assertion-failed (s-contains\? expected actual) "Expected
%s
to be part of:
%s"))
cl--assertion-failed((s-contains\? expected actual) "Expected\n%s\nto be part of:\n%s" nil ("blue and big and and big and purple and big and and big and pink and big and and big and small" "blue and big and and big and purple and and big and pink and and big and small"))
#[(expected) "\303 \304\305\n \"\204\306\307\310\n D$\210*\310\207" [message actual expected buffer-string "Expected\n%s\nto be part of:\n%s" s-contains\? cl--assertion-failed (s-contains\? expected actual) nil] 6]("blue and big and and big and purple and big and and big and pink and big and and big and small")
apply(#[(expected) "\303 \304\305\n \"\204\306\307\310\n D$\210*\310\207" [message actual expected buffer-string "Expected\n%s\nto be part of:\n%s" s-contains\? cl--assertion-failed (s-contains\? expected actual) nil] 6] "blue and big and and big and purple and big and and big and pink and big and and big and small")
ecukes-run-step([cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "blue and big and and big and purple and big and and big and pink and big and and big and small" py-string nil nil])
#[(step) "\306! \232\307! \232\211\203\310\311 \f#\210\n\203 \310\312 \f#\210\310\313 \f#\210
\2037\314 !\211\2049\315\2029\316 \317H>\204I\320\321\322 D\"\210 \211\323\fI\210) \203\\\310\324 \f#\210\n\203f\310\325 \f#\210\f\305=\203w\326 \210\310\327 \"\210\202\226\f\315=\203\210\330 \210\310\331 \"\210\202\226\f\316=\203\226\332 \210\310\333 \"\210\310\334 \f#*\207" [steps step last first status success -first-item -last-item run-hook-with-args ecukes-reporter-before-first-step-hook ecukes-reporter-before-last-step-hook ecukes-reporter-before-step-hook ecukes-run-step failure skipped 0 signal wrong-type-argument ecukes-step 7 ecukes-reporter-after-first-step-hook ecukes-reporter-after-last-step-hook ecukes-stats-step-pass ecukes-reporter-after-step-success-hook ecukes-stats-step-fail ecukes-reporter-after-step-failed-hook ecukes-stats-step-skip ecukes-reporter-after-step-skipped-hook ecukes-reporter-after-step-hook cl-struct-ecukes-step-tags v] 5]([cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "blue and big and and big and purple and big and and big and pink and big and and big and small" py-string nil nil])
-each(([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "blue and big and purple and big and pink and big and small" py-string nil success] [cl-struct-ecukes-step "And I press \"fg\"" "And" "I press \"fg\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"bb3ywP\"" "And" "I press \"bb3ywP\"" nil regular nil success] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "blue and big and and big and purple and big and and big and pink and big and and big and small" py-string nil nil]) #[(step) "\306! \232\307! \232\211\203\310\311 \f#\210\n\203 \310\312 \f#\210\310\313 \f#\210
\2037\314 !\211\2049\315\2029\316 \317H>\204I\320\321\322 D\"\210 \211\323\fI\210) \203\\\310\324 \f#\210\n\203f\310\325 \f#\210\f\305=\203w\326 \210\310\327 \"\210\202\226\f\315=\203\210\330 \210\310\331 \"\210\202\226\f\316=\203\226\332 \210\310\333 \"\210\310\334 \f#*\207" [steps step last first status success -first-item -last-item run-hook-with-args ecukes-reporter-before-first-step-hook ecukes-reporter-before-last-step-hook ecukes-reporter-before-step-hook ecukes-run-step failure skipped 0 signal wrong-type-argument ecukes-step 7 ecukes-reporter-after-first-step-hook ecukes-reporter-after-last-step-hook ecukes-stats-step-pass ecukes-reporter-after-step-success-hook ecukes-stats-step-fail ecukes-reporter-after-step-failed-hook ecukes-stats-step-skip ecukes-reporter-after-step-skipped-hook ecukes-reporter-after-step-hook cl-struct-ecukes-step-tags v] 5])
ecukes-run-steps(([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "blue and big and purple and big and pink and big and small" py-string nil success] [cl-struct-ecukes-step "And I press \"fg\"" "And" "I press \"fg\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"bb3ywP\"" "And" "I press \"bb3ywP\"" nil regular nil success] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "blue and big and and big and purple and big and and big and pink and big and and big and small" py-string nil nil]) t)
ecukes-run-scenario([cl-struct-ecukes-scenario "Copy paste a word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "blue and big and purple and big and pink and big and small" py-string nil success] [cl-struct-ecukes-step "And I press \"fg\"" "And" "I press \"fg\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"bb3ywP\"" "And" "I press \"bb3ywP\"" nil regular nil success] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "blue and big and and big and purple and big and and big and pink and big and and big and small" py-string nil nil]) nil] t)
#[(scenario) "\306 \"\203g\307! \232\310! \232\f\203\311 \210
\203+\203+\f\203+\312
!\210 \2034\313\314 \"\210\n\203=\313\315 \"\210\313\316 \"\210\317 \"\210 \203Q\313\320 \"\210\n\203Z\313\321 \"\210\313\322 \"\210\323 \210\324\211*\207\313\325 \"\207" [scenarios scenario last first background-should-run background -contains\? -first-item -last-item ecukes-hooks-run-before ecukes-run-background-steps run-hook-with-args ecukes-reporter-before-first-scenario-hook ecukes-reporter-before-last-scenario-hook ecukes-reporter-before-scenario-hook ecukes-run-scenario ecukes-reporter-after-first-scenario-hook ecukes-reporter-after-last-scenario-hook ecukes-reporter-after-scenario-hook ecukes-hooks-run-after t ecukes-reporter-pending-scenario-hook background-success] 3]([cl-struct-ecukes-scenario "Copy paste a word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "blue and big and purple and big and pink and big and small" py-string nil success] [cl-struct-ecukes-step "And I press \"fg\"" "And" "I press \"fg\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"bb3ywP\"" "And" "I press \"bb3ywP\"" nil regular nil success] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "blue and big and and big and purple and big and and big and pink and big and and big and small" py-string nil nil]) nil])
-each(([cl-struct-ecukes-scenario "Copy paste a word (before)" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here is a list of words, some are small, some big and some huge." py-string nil success] [cl-struct-ecukes-step "And I press \"4fs\"" "And" "I press \"4fs\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"bywbbP\"" "And" "I press \"bywbbP\"" nil regular nil success] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here is a list of some words, some are some small, some some big and some huge." py-string nil success]) nil] [cl-struct-ecukes-scenario "Copy paste a word (after)" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here is a list of words, some are small, some big and some huge." py-string nil success] [cl-struct-ecukes-step "And I press \"4fs\"" "And" "I press \"4fs\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"bywbbp\"" "And" "I press \"bywbbp\"" nil regular nil success] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here is a list of wsome ords, some are ssome mall, some bsome ig and some huge." py-string nil success]) nil] [cl-struct-ecukes-scenario "Copy paste a word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "blue and big and purple and big and pink and big and small" py-string nil success] [cl-struct-ecukes-step "And I press \"fg\"" "And" "I press \"fg\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"bb3ywP\"" "And" "I press \"bb3ywP\"" nil regular nil success] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "blue and big and and big and purple and big and and big and pink and big and and big and small" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste up to a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"ytmbP\"" "And" "I press \"ytmbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "e are soHere are some words.\ne are soHere are some words.\ne are soHere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste till before a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yfmbP\"" "And" "I press \"yfmbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "e are somHere are some words.\ne are somHere are some words.\ne are somHere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste until the end of the line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fsy$$p\"" "And" "I type \"fsy$$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.some words.\nHere are some words.some words.\nHere are some words.some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yyp\"" "And" "I press \"yyp\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nHere are some words.\nThere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2yyP\"" "And" "I press \"2yyP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nThere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste with registers" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"b\"" "And" "I press \"b\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"a\" then type \"yw\"" "And" "I set the register to \"a\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"w\"" "And" "I press \"w\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"b\" then type \"yw\"" "And" "I set the register to \"b\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"w\"" "And" "I press \"w\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"c\" then type \"yw\"" "And" "I set the register to \"c\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$\"" "And" "I press \"$\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"a\" then type \"p\"" "And" "I set the register to \"a\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"b\" then type \"p\"" "And" "I set the register to \"b\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"c\" then type \"p\"" "And" "I set the register to \"c\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.Here are some \nHere are some words.Here are some \nHere are some words.Here are some " py-string nil nil]) nil]) #[(scenario) "\306 \"\203g\307! \232\310! \232\f\203\311 \210
\203+\203+\f\203+\312
!\210 \2034\313\314 \"\210\n\203=\313\315 \"\210\313\316 \"\210\317 \"\210 \203Q\313\320 \"\210\n\203Z\313\321 \"\210\313\322 \"\210\323 \210\324\211*\207\313\325 \"\207" [scenarios scenario last first background-should-run background -contains\? -first-item -last-item ecukes-hooks-run-before ecukes-run-background-steps run-hook-with-args ecukes-reporter-before-first-scenario-hook ecukes-reporter-before-last-scenario-hook ecukes-reporter-before-scenario-hook ecukes-run-scenario ecukes-reporter-after-first-scenario-hook ecukes-reporter-after-last-scenario-hook ecukes-reporter-after-scenario-hook ecukes-hooks-run-after t ecukes-reporter-pending-scenario-hook background-success] 3])
ecukes-run-feature([cl-struct-ecukes-feature [cl-struct-ecukes-intro "Copy paste\n" nil] nil nil ([cl-struct-ecukes-scenario "Copy paste a word (before)" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here is a list of words, some are small, some big and some huge." py-string nil success] [cl-struct-ecukes-step "And I press \"4fs\"" "And" "I press \"4fs\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"bywbbP\"" "And" "I press \"bywbbP\"" nil regular nil success] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here is a list of some words, some are some small, some some big and some huge." py-string nil success]) nil] [cl-struct-ecukes-scenario "Copy paste a word (after)" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here is a list of words, some are small, some big and some huge." py-string nil success] [cl-struct-ecukes-step "And I press \"4fs\"" "And" "I press \"4fs\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"bywbbp\"" "And" "I press \"bywbbp\"" nil regular nil success] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here is a list of wsome ords, some are ssome mall, some bsome ig and some huge." py-string nil success]) nil] [cl-struct-ecukes-scenario "Copy paste a word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "blue and big and purple and big and pink and big and small" py-string nil success] [cl-struct-ecukes-step "And I press \"fg\"" "And" "I press \"fg\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"bb3ywP\"" "And" "I press \"bb3ywP\"" nil regular nil success] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "blue and big and and big and purple and big and and big and pink and big and and big and small" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste up to a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"ytmbP\"" "And" "I press \"ytmbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "e are soHere are some words.\ne are soHere are some words.\ne are soHere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste till before a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yfmbP\"" "And" "I press \"yfmbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "e are somHere are some words.\ne are somHere are some words.\ne are somHere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste until the end of the line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fsy$$p\"" "And" "I type \"fsy$$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.some words.\nHere are some words.some words.\nHere are some words.some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yyp\"" "And" "I press \"yyp\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nHere are some words.\nThere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2yyP\"" "And" "I press \"2yyP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nThere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste with registers" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"b\"" "And" "I press \"b\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"a\" then type \"yw\"" "And" "I set the register to \"a\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"w\"" "And" "I press \"w\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"b\" then type \"yw\"" "And" "I set the register to \"b\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"w\"" "And" "I press \"w\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"c\" then type \"yw\"" "And" "I set the register to \"c\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$\"" "And" "I press \"$\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"a\" then type \"p\"" "And" "I set the register to \"a\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"b\" then type \"p\"" "And" "I set the register to \"b\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"c\" then type \"p\"" "And" "I set the register to \"c\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.Here are some \nHere are some words.Here are some \nHere are some words.Here are some " py-string nil nil]) nil])])
#[(feature) "\304! =\305! =\211\203\306\307 \"\210\n\203\306\310 \"\210\306\311 \"\210\312 !\210 \2030\306\313 \"\210\n\2039\306\314 \"\210\306\315 \"*\207" [ecukes-features feature last first -first-item -last-item run-hook-with-args ecukes-reporter-before-first-feature-hook ecukes-reporter-before-last-feature-hook ecukes-reporter-before-feature-hook ecukes-run-feature ecukes-reporter-after-first-feature-hook ecukes-reporter-after-last-feature-hook ecukes-reporter-after-feature-hook] 4]([cl-struct-ecukes-feature [cl-struct-ecukes-intro "Copy paste\n" nil] nil nil ([cl-struct-ecukes-scenario "Copy paste a word (before)" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here is a list of words, some are small, some big and some huge." py-string nil success] [cl-struct-ecukes-step "And I press \"4fs\"" "And" "I press \"4fs\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"bywbbP\"" "And" "I press \"bywbbP\"" nil regular nil success] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here is a list of some words, some are some small, some some big and some huge." py-string nil success]) nil] [cl-struct-ecukes-scenario "Copy paste a word (after)" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here is a list of words, some are small, some big and some huge." py-string nil success] [cl-struct-ecukes-step "And I press \"4fs\"" "And" "I press \"4fs\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"bywbbp\"" "And" "I press \"bywbbp\"" nil regular nil success] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here is a list of wsome ords, some are ssome mall, some bsome ig and some huge." py-string nil success]) nil] [cl-struct-ecukes-scenario "Copy paste a word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "blue and big and purple and big and pink and big and small" py-string nil success] [cl-struct-ecukes-step "And I press \"fg\"" "And" "I press \"fg\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"bb3ywP\"" "And" "I press \"bb3ywP\"" nil regular nil success] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "blue and big and and big and purple and big and and big and pink and big and and big and small" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste up to a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"ytmbP\"" "And" "I press \"ytmbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "e are soHere are some words.\ne are soHere are some words.\ne are soHere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste till before a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yfmbP\"" "And" "I press \"yfmbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "e are somHere are some words.\ne are somHere are some words.\ne are somHere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste until the end of the line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fsy$$p\"" "And" "I type \"fsy$$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.some words.\nHere are some words.some words.\nHere are some words.some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yyp\"" "And" "I press \"yyp\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nHere are some words.\nThere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2yyP\"" "And" "I press \"2yyP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nThere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste with registers" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"b\"" "And" "I press \"b\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"a\" then type \"yw\"" "And" "I set the register to \"a\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"w\"" "And" "I press \"w\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"b\" then type \"yw\"" "And" "I set the register to \"b\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"w\"" "And" "I press \"w\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"c\" then type \"yw\"" "And" "I set the register to \"c\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$\"" "And" "I press \"$\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"a\" then type \"p\"" "And" "I set the register to \"a\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"b\" then type \"p\"" "And" "I set the register to \"b\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"c\" then type \"p\"" "And" "I set the register to \"c\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.Here are some \nHere are some words.Here are some \nHere are some words.Here are some " py-string nil nil]) nil])])
-each(([cl-struct-ecukes-feature [cl-struct-ecukes-intro "Record current command info\n" nil] nil nil ([cl-struct-ecukes-scenario "Record commands to copy lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"yy\" \"3yy\") :value nil :explanation (arrays-of-different-length 2 3 \"yy\" \"3yy\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to change lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k k\nThis is the second line -1 -1 -1 t t t f f f k k k k\nThis is the third line -1 -1 -1 t t t f f f k k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"ctk\" \"3ctk\") :value nil :explanation (arrays-of-different-length 3 4 \"ctk\" \"3ctk\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to delete lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"dtk\" \"3dtk\") :value nil :explanation (arrays-of-different-length 3 4 \"dtk\" \"3dtk\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to work with surrounding delimiters" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil success]) nil] [cl-struct-ecukes-scenario "Record commands to select inside parentheses" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "When I press \"vib\"" "When" "I press \"vib\"" nil regular nil success] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-inner-paren\"" "Then" "The recorded command name should be \"evil-inner-paren\"" nil regular nil success] [cl-struct-ecukes-step "And The recorded command keys should be \"ib\"" "And" "The recorded command keys should be \"ib\"" nil regular nil success]) nil] [cl-struct-ecukes-scenario "Record the command to join two lines" ([cl-struct-ecukes-step "Given I have one cursor at \"line\" in \"First line.\\nSecond line.\"" "Given" "I have one cursor at \"line\" in \"First line.\\nSecond line.\"" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "When I press \"J\"" "When" "I press \"J\"" nil regular nil success] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-join\"" "Then" "The recorded command name should be \"evil-join\"" nil regular nil success] [cl-struct-ecukes-step "And The recorded command keys should be \"J\"" "And" "The recorded command keys should be \"J\"" nil regular nil success]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Copy paste\n" nil] nil nil ([cl-struct-ecukes-scenario "Copy paste a word (before)" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here is a list of words, some are small, some big and some huge." py-string nil success] [cl-struct-ecukes-step "And I press \"4fs\"" "And" "I press \"4fs\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"bywbbP\"" "And" "I press \"bywbbP\"" nil regular nil success] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here is a list of some words, some are some small, some some big and some huge." py-string nil success]) nil] [cl-struct-ecukes-scenario "Copy paste a word (after)" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here is a list of words, some are small, some big and some huge." py-string nil success] [cl-struct-ecukes-step "And I press \"4fs\"" "And" "I press \"4fs\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"bywbbp\"" "And" "I press \"bywbbp\"" nil regular nil success] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here is a list of wsome ords, some are ssome mall, some bsome ig and some huge." py-string nil success]) nil] [cl-struct-ecukes-scenario "Copy paste a word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "blue and big and purple and big and pink and big and small" py-string nil success] [cl-struct-ecukes-step "And I press \"fg\"" "And" "I press \"fg\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"bb3ywP\"" "And" "I press \"bb3ywP\"" nil regular nil success] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "blue and big and and big and purple and big and and big and pink and big and and big and small" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste up to a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"ytmbP\"" "And" "I press \"ytmbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "e are soHere are some words.\ne are soHere are some words.\ne are soHere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste till before a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yfmbP\"" "And" "I press \"yfmbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "e are somHere are some words.\ne are somHere are some words.\ne are somHere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste until the end of the line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fsy$$p\"" "And" "I type \"fsy$$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.some words.\nHere are some words.some words.\nHere are some words.some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yyp\"" "And" "I press \"yyp\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nHere are some words.\nThere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2yyP\"" "And" "I press \"2yyP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nThere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste with registers" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"b\"" "And" "I press \"b\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"a\" then type \"yw\"" "And" "I set the register to \"a\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"w\"" "And" "I press \"w\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"b\" then type \"yw\"" "And" "I set the register to \"b\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"w\"" "And" "I press \"w\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"c\" then type \"yw\"" "And" "I set the register to \"c\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$\"" "And" "I press \"$\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"a\" then type \"p\"" "And" "I set the register to \"a\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"b\" then type \"p\"" "And" "I set the register to \"b\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"c\" then type \"p\"" "And" "I set the register to \"c\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.Here are some \nHere are some words.Here are some \nHere are some words.Here are some " py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Delete text\n" nil] nil nil ([cl-struct-ecukes-scenario "Delete a word" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bdw\"" "And" "I type \"bdw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"and more \"" "Then" "I should see \"and more \"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a letter" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bx\"" "And" "I type \"bx\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"ords ords and more ords\"" "Then" "I should see \"ords ords and more ords\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a letter with count" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"b2x\"" "And" "I type \"b2x\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"rds rds and more rds\"" "Then" "I should see \"rds rds and more rds\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Lots of words words and more words\nLots of words words and more words\nLots of words words and more words\nLots of words words and more words" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fw3dw\"" "And" "I type \"fw3dw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Lots of more words\nLots of more words\nLots of more words\nLots of more words" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete a WORD" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "composite-words composite-words and more composite-words" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bdaW\"" "And" "I type \"bdaW\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"and more\"" "Then" "I should see \"and more\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThat is a line.\nThis is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"j\"" "And" "I press \"j\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dd\"" "And" "I press \"dd\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a line.\nThis is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete a line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "That is a line.\nThis is a line.\nAnother a line.\nThat is a line.\nThis is a line.\nThis is a line.\nThat is a line.\nAnother a line.\nThis is a line.\nLast line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2dd\"" "And" "I press \"2dd\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Another a line.\nThis is a line.\nThis is a line.\nLast line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete to the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fdD\"" "And" "I press \"fdD\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a super \nThis is a super \nThis is a super \nThis is a super " py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete to the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fdd^\"" "And" "I type \"fdd^\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "duper long line.\nduper long line.\nduper long line.\nduper long line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete up to a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fwdfh\"" "And" "I press \"fwdfh\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road patches of green.\nThe road patches of green.\nThe road patches of green.\nThe road patches of green." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete till before a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fwdth\"" "And" "I press \"fwdth\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road h patches of green.\nThe road h patches of green.\nThe road h patches of green.\nThe road h patches of green." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete till before a letter with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fw2dth\"" "And" "I press \"fw2dth\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road hes of green.\nThe road hes of green.\nThe road hes of green.\nThe road hes of green." py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Insert and change text\n" nil] nil nil ([cl-struct-ecukes-scenario "Text typed in insert state should be entered into the buffer" ([cl-struct-ecukes-step "When I replace the buffer text with \"aaa\"" "When" "I replace the buffer text with \"aaa\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"clfirst text \"" "And" "I type \"clfirst text \"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "first text first text first text" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Enter new lines" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cl\"" "And" "I press \"cl\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"word\" followed by enter" "And" "I press \"word\" followed by enter" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "word\nword\nword" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Open line below" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"oabc\"" "And" "I press \"oabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "bbb\nabc\nabc\nabc" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Open line above" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"Oabc\"" "And" "I press \"Oabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "abc\nabc\nabc\nbbb" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Insert at cursor" ([cl-struct-ecukes-step "When I replace the buffer text with \"a a a\"" "When" "I replace the buffer text with \"a a a\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"i-y-\"" "And" "I press \"i-y-\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"-y-a -y-a -y-a\"" "Then" "I should see \"-y-a -y-a -y-a\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Insert after cursor" ([cl-struct-ecukes-step "When I replace the buffer text with \"a a a\"" "When" "I replace the buffer text with \"a a a\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"a-x-\"" "And" "I press \"a-x-\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"a-x- a-x- a-x-\"" "Then" "I should see \"a-x- a-x- a-x-\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Insert at the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I go to word \"line\"" "And" "I go to word \"line\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"Istart \"" "And" "I type \"Istart \"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "start This is a line\nstart This is a line\nstart This is a line" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Insert at the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I go to word \"line\"" "And" "I go to word \"line\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"A end\"" "And" "I type \"A end\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a line end\nThis is a line end\nThis is a line end" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a letter" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"clw\"" "And" "I type \"clw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyw xyw xyw\"" "Then" "I should see \"xyw xyw xyw\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a word" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bcwabc\"" "And" "I type \"bcwabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc abc abc\"" "Then" "I should see \"abc abc abc\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a word at the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bcwabc\"" "And" "I type \"bcwabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "abc is a line\nabc is a line\nabc is a line" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change to the end of word" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bceabc\"" "And" "I type \"bceabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc abc abc\"" "Then" "I should see \"abc abc abc\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change to the end of word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "xyz yyz yyz xyz yyz yyz xyz yyz yyz xyz yyz yyz" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"b2ceabc\"" "And" "I type \"b2ceabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc yyz abc yyz abc yyz abc yyz\"" "Then" "I should see \"abc yyz abc yyz abc yyz abc yyz\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up to a letter (f)" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbcftxyz\"" "And" "I type \"bbbcftxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzher-test xyzher-test xyzher-test\"" "Then" "I should see \"xyzher-test xyzher-test xyzher-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up to a letter (f) with count" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbb2cftxyz\"" "And" "I type \"bbb2cftxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzest xyzest xyzest\"" "Then" "I should see \"xyzest xyzest xyzest\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up till before a letter (t)" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbcttxyz\"" "And" "I type \"bbbcttxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzther-test xyzther-test xyzther-test\"" "Then" "I should see \"xyzther-test xyzther-test xyzther-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a visual selection" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbv4lcxyz\"" "And" "I type \"bbbv4lcxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzer-test xyzer-test xyzer-test\"" "Then" "I should see \"xyzer-test xyzer-test xyzer-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a visual selection 2" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a simple line.\nThis is a simple line.\nThis is a simple line.\nThat is a simple line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bvt.cChanged text\"" "And" "I type \"bvt.cChanged text\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Changed text.\nChanged text.\nChanged text.\nThat is a simple line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change until the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wC\"" "And" "I press \"wC\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"line has changed.\"" "And" "I type \"line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This line has changed.\nThis line has changed.\nThis line has changed." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThis is a line.\nThat is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"cc\"" "And" "I type \"cc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The line has changed.\"" "And" "I type \"The line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The line has changed.\nThat is a line.\nThe line has changed.\nThat is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole visual line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThis is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"Vc\"" "And" "I press \"Vc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The line has changed.\"" "And" "I type \"The line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The line has changed.\nThat is a line.\nThe line has changed.\nThat is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThe next line.\nThe last line.\nThis is a line.\nThe next line.\nThe last line.\nThe last line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2cc\"" "And" "I press \"2cc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The first two lines have changed.\"" "And" "I type \"The first two lines have changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The first two lines have changed.\nThe last line.\nThe first two lines have changed.\nThe last line." py-string nil nil]) nil])] [cl-struct-ecukes-feature nil nil nil ([cl-struct-ecukes-scenario "The custom command should run at each cursor real and fake" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "There is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line" py-string nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"f0\"" "And" "I press \"f0\"" nil regular nil nil] [cl-struct-ecukes-step "And I call \"evil-mc-inc-num-at-each-cursor\"" "And" "I call \"evil-mc-inc-num-at-each-cursor\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "There is a 0 on this line\nThere is a 1 on this line\nThere is a 2 on this line\nThere is a 3 on this line\nThere is a 4 on this line\nThere is a 5 on this line" py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Text objects and surround" nil] nil nil ([cl-struct-ecukes-scenario "Change the bracket type" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"csbB\"" "And" "I press \"csbB\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a {very} very {long} line with {lots of} words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete brackets inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dib\"" "And" "I press \"dib\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a () very () line with () words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete brackets outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dab\"" "And" "I press \"dab\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a very line with words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy brackets inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (normal) line.\nThis is a (normal) line.\nThis is a (normal) line." py-string nil nil] [cl-struct-ecukes-step "And I press \"fn\"" "And" "I press \"fn\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yib\"" "And" "I press \"yib\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$p\"" "And" "I press \"$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (normal) line.normal\nThis is a (normal) line.normal\nThis is a (normal) line.normal" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy brackets outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (normal) line.\nThis is a (normal) line.\nThis is a (normal) line." py-string nil nil] [cl-struct-ecukes-step "And I press \"fn\"" "And" "I press \"fn\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yab\"" "And" "I press \"yab\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$p\"" "And" "I press \"$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (normal) line.(normal)\nThis is a (normal) line.(normal)\nThis is a (normal) line.(normal)" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a parenthesis expression inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (sentence) with brackets.\nThis is a (sentence) with brackets.\nThis is a (sentence) with brackets." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"f(cibchanged\"" "And" "I type \"f(cibchanged\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (changed) with brackets.\nThis is a (changed) with brackets.\nThis is a (changed) with brackets." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a parenthesis expression outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (sentence) with brackets.\nThis is a (sentence) with brackets.\nThis is a (sentence) with brackets." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"f(cabchanged\"" "And" "I type \"f(cabchanged\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a changed with brackets.\nThis is a changed with brackets.\nThis is a changed with brackets." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Surround a word with quotes" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a simple line.\nThis is a simple line.\nThat is a simple line.\nThis is a simple line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fmviwS'\"" "And" "I type \"fmviwS'\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a 'simple' line.\nThis is a 'simple' line.\nThat is a simple line.\nThis is a 'simple' line." py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Visual region\n" nil] nil nil ([cl-struct-ecukes-scenario "Change selected text with the cursor at the end of the region" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wve\"" "And" "I press \"wve\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cisn't\"" "And" "I press \"cisn't\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This isn't a line.\nThis isn't a line.\nThis isn't a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change selected text with the cursor at the beginning of the region" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wveo\"" "And" "I press \"wveo\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cisn't\"" "And" "I press \"cisn't\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This isn't a line.\nThis isn't a line.\nThis isn't a line." py-string nil nil]) nil])]) #[(feature) "\304! =\305! =\211\203\306\307 \"\210\n\203\306\310 \"\210\306\311 \"\210\312 !\210 \2030\306\313 \"\210\n\2039\306\314 \"\210\306\315 \"*\207" [ecukes-features feature last first -first-item -last-item run-hook-with-args ecukes-reporter-before-first-feature-hook ecukes-reporter-before-last-feature-hook ecukes-reporter-before-feature-hook ecukes-run-feature ecukes-reporter-after-first-feature-hook ecukes-reporter-after-last-feature-hook ecukes-reporter-after-feature-hook] 4])
ecukes-run-features(([cl-struct-ecukes-feature [cl-struct-ecukes-intro "Record current command info\n" nil] nil nil ([cl-struct-ecukes-scenario "Record commands to copy lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then these examples should pass:" "Then" "these examples should pass:" (("keys" "command") ("yy" "evil-yank") ("3yy" "evil-yank") ("yw" "evil-yank") ("ye" "evil-yank") ("3yw" "evil-yank") ("yt-" "evil-yank") ("ytk" "evil-yank") ("3yt-" "evil-yank") ("ytt" "evil-yank") ("yff" "evil-yank") ("2ytt" "evil-yank") ("2yff" "evil-yank")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"yy\" \"3yy\") :value nil :explanation (arrays-of-different-length 2 3 \"yy\" \"3yy\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to change lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k k\nThis is the second line -1 -1 -1 t t t f f f k k k k\nThis is the third line -1 -1 -1 t t t f f f k k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("cc" "evil-change") ("ctk" "evil-change") ("cfk" "evil-change") ("ctt" "evil-change") ("cff" "evil-change") ("3ctk" "evil-change") ("3cfk" "evil-change") ("3ctt" "evil-change") ("3cff" "evil-change") ("3cc" "evil-change")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"ctk\" \"3ctk\") :value nil :explanation (arrays-of-different-length 3 4 \"ctk\" \"3ctk\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to delete lines" ([cl-struct-ecukes-step "When I insert:" "When" "I insert:" "This is the start of text -1 -1 -1 t t t f f f k k k\nThis is the second line -1 -1 -1 t t t f f f k k k\nThis is the third line -1 -1 -1 t t t f f f k k k" py-string nil success] [cl-struct-ecukes-step "And I go to the beginning of buffer" "And" "I go to the beginning of buffer" nil regular nil success] [cl-struct-ecukes-step "Given I have at least one cursor" "Given" "I have at least one cursor" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("dd" "evil-delete") ("dtk" "evil-delete") ("dfk" "evil-delete") ("dtt" "evil-delete") ("dff" "evil-delete") ("3dtk" "evil-delete") ("3dfk" "evil-delete") ("3dtt" "evil-delete") ("3dff" "evil-delete") ("3dd" "evil-delete")) table "Test failed: ((should (equal (evil-mc-get-command-keys-string :keys) keys)) :form (equal \"dtk\" \"3dtk\") :value nil :explanation (arrays-of-different-length 3 4 \"dtk\" \"3dtk\" first-mismatch-at 0))" failure]) nil] [cl-struct-ecukes-scenario "Record commands to work with surrounding delimiters" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "Then These examples with undo should pass:" "Then" "These examples with undo should pass:" (("keys" "command") ("csbB" "evil-change") ("cs[B" "evil-change") ("csb{" "evil-change") ("dsb" "evil-delete") ("ds(" "evil-delete") ("cib" "evil-change") ("yib" "evil-yank")) table nil success]) nil] [cl-struct-ecukes-scenario "Record commands to select inside parentheses" ([cl-struct-ecukes-step "Given I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" "Given" "I have one cursor at \"inner\" in \"[external (outer (inner (center))]\"" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "When I press \"vib\"" "When" "I press \"vib\"" nil regular nil success] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-inner-paren\"" "Then" "The recorded command name should be \"evil-inner-paren\"" nil regular nil success] [cl-struct-ecukes-step "And The recorded command keys should be \"ib\"" "And" "The recorded command keys should be \"ib\"" nil regular nil success]) nil] [cl-struct-ecukes-scenario "Record the command to join two lines" ([cl-struct-ecukes-step "Given I have one cursor at \"line\" in \"First line.\\nSecond line.\"" "Given" "I have one cursor at \"line\" in \"First line.\\nSecond line.\"" nil regular nil success] [cl-struct-ecukes-step "And The cursors are frozen" "And" "The cursors are frozen" nil regular nil success] [cl-struct-ecukes-step "When I press \"J\"" "When" "I press \"J\"" nil regular nil success] [cl-struct-ecukes-step "Then The recorded command name should be \"evil-join\"" "Then" "The recorded command name should be \"evil-join\"" nil regular nil success] [cl-struct-ecukes-step "And The recorded command keys should be \"J\"" "And" "The recorded command keys should be \"J\"" nil regular nil success]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Copy paste\n" nil] nil nil ([cl-struct-ecukes-scenario "Copy paste a word (before)" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here is a list of words, some are small, some big and some huge." py-string nil success] [cl-struct-ecukes-step "And I press \"4fs\"" "And" "I press \"4fs\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"bywbbP\"" "And" "I press \"bywbbP\"" nil regular nil success] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here is a list of some words, some are some small, some some big and some huge." py-string nil success]) nil] [cl-struct-ecukes-scenario "Copy paste a word (after)" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here is a list of words, some are small, some big and some huge." py-string nil success] [cl-struct-ecukes-step "And I press \"4fs\"" "And" "I press \"4fs\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"bywbbp\"" "And" "I press \"bywbbp\"" nil regular nil success] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here is a list of wsome ords, some are ssome mall, some bsome ig and some huge." py-string nil success]) nil] [cl-struct-ecukes-scenario "Copy paste a word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "blue and big and purple and big and pink and big and small" py-string nil success] [cl-struct-ecukes-step "And I press \"fg\"" "And" "I press \"fg\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil success] [cl-struct-ecukes-step "And I press \"bb3ywP\"" "And" "I press \"bb3ywP\"" nil regular nil success] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "blue and big and and big and purple and big and and big and pink and big and and big and small" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste up to a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"ytmbP\"" "And" "I press \"ytmbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "e are soHere are some words.\ne are soHere are some words.\ne are soHere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste till before a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yfmbP\"" "And" "I press \"yfmbP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "e are somHere are some words.\ne are somHere are some words.\ne are somHere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste until the end of the line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fsy$$p\"" "And" "I type \"fsy$$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.some words.\nHere are some words.some words.\nHere are some words.some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yyp\"" "And" "I press \"yyp\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nHere are some words.\nThere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste a line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2yyP\"" "And" "I press \"2yyP\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nThere are some words.\nHere are some words.\nThere are some words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy paste with registers" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Here are some words.\nHere are some words.\nHere are some words." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"b\"" "And" "I press \"b\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"a\" then type \"yw\"" "And" "I set the register to \"a\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"w\"" "And" "I press \"w\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"b\" then type \"yw\"" "And" "I set the register to \"b\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"w\"" "And" "I press \"w\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"c\" then type \"yw\"" "And" "I set the register to \"c\" then type \"yw\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$\"" "And" "I press \"$\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"a\" then type \"p\"" "And" "I set the register to \"a\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"b\" then type \"p\"" "And" "I set the register to \"b\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "And I set the register to \"c\" then type \"p\"" "And" "I set the register to \"c\" then type \"p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Here are some words.Here are some \nHere are some words.Here are some \nHere are some words.Here are some " py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Delete text\n" nil] nil nil ([cl-struct-ecukes-scenario "Delete a word" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bdw\"" "And" "I type \"bdw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"and more \"" "Then" "I should see \"and more \"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a letter" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bx\"" "And" "I type \"bx\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"ords ords and more ords\"" "Then" "I should see \"ords ords and more ords\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a letter with count" ([cl-struct-ecukes-step "When I replace the buffer text with \"words words and more words\"" "When" "I replace the buffer text with \"words words and more words\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"b2x\"" "And" "I type \"b2x\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"rds rds and more rds\"" "Then" "I should see \"rds rds and more rds\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "Lots of words words and more words\nLots of words words and more words\nLots of words words and more words\nLots of words words and more words" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fw3dw\"" "And" "I type \"fw3dw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Lots of more words\nLots of more words\nLots of more words\nLots of more words" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete a WORD" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "composite-words composite-words and more composite-words" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bdaW\"" "And" "I type \"bdaW\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"and more\"" "Then" "I should see \"and more\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Delete a line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThat is a line.\nThis is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"j\"" "And" "I press \"j\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dd\"" "And" "I press \"dd\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a line.\nThis is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete a line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "That is a line.\nThis is a line.\nAnother a line.\nThat is a line.\nThis is a line.\nThis is a line.\nThat is a line.\nAnother a line.\nThis is a line.\nLast line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2dd\"" "And" "I press \"2dd\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Another a line.\nThis is a line.\nThis is a line.\nLast line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete to the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fdD\"" "And" "I press \"fdD\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a super \nThis is a super \nThis is a super \nThis is a super " py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete to the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line.\nThis is a super duper long line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fdd^\"" "And" "I type \"fdd^\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "duper long line.\nduper long line.\nduper long line.\nduper long line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete up to a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fwdfh\"" "And" "I press \"fwdfh\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road patches of green.\nThe road patches of green.\nThe road patches of green.\nThe road patches of green." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete till before a letter" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fwdth\"" "And" "I press \"fwdth\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road h patches of green.\nThe road h patches of green.\nThe road h patches of green.\nThe road h patches of green." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete till before a letter with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "The road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green.\nThe road was dark brown with patches of green." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"fw2dth\"" "And" "I press \"fw2dth\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The road hes of green.\nThe road hes of green.\nThe road hes of green.\nThe road hes of green." py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Insert and change text\n" nil] nil nil ([cl-struct-ecukes-scenario "Text typed in insert state should be entered into the buffer" ([cl-struct-ecukes-step "When I replace the buffer text with \"aaa\"" "When" "I replace the buffer text with \"aaa\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"clfirst text \"" "And" "I type \"clfirst text \"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "first text first text first text" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Enter new lines" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cl\"" "And" "I press \"cl\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"word\" followed by enter" "And" "I press \"word\" followed by enter" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "word\nword\nword" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Open line below" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"oabc\"" "And" "I press \"oabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "bbb\nabc\nabc\nabc" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Open line above" ([cl-struct-ecukes-step "When I replace the buffer text with \"bbb\"" "When" "I replace the buffer text with \"bbb\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"Oabc\"" "And" "I press \"Oabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "abc\nabc\nabc\nbbb" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Insert at cursor" ([cl-struct-ecukes-step "When I replace the buffer text with \"a a a\"" "When" "I replace the buffer text with \"a a a\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"i-y-\"" "And" "I press \"i-y-\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"-y-a -y-a -y-a\"" "Then" "I should see \"-y-a -y-a -y-a\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Insert after cursor" ([cl-struct-ecukes-step "When I replace the buffer text with \"a a a\"" "When" "I replace the buffer text with \"a a a\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"a-x-\"" "And" "I press \"a-x-\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"a-x- a-x- a-x-\"" "Then" "I should see \"a-x- a-x- a-x-\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Insert at the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I go to word \"line\"" "And" "I go to word \"line\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"Istart \"" "And" "I type \"Istart \"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "start This is a line\nstart This is a line\nstart This is a line" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Insert at the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I go to word \"line\"" "And" "I go to word \"line\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"A end\"" "And" "I type \"A end\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a line end\nThis is a line end\nThis is a line end" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a letter" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"clw\"" "And" "I type \"clw\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyw xyw xyw\"" "Then" "I should see \"xyw xyw xyw\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a word" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bcwabc\"" "And" "I type \"bcwabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc abc abc\"" "Then" "I should see \"abc abc abc\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a word at the beginning of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line\nThis is a line\nThis is a line" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bcwabc\"" "And" "I type \"bcwabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "abc is a line\nabc is a line\nabc is a line" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change to the end of word" ([cl-struct-ecukes-step "When I replace the buffer text with \"xyz xyz xyz\"" "When" "I replace the buffer text with \"xyz xyz xyz\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bceabc\"" "And" "I type \"bceabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc abc abc\"" "Then" "I should see \"abc abc abc\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change to the end of word with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "xyz yyz yyz xyz yyz yyz xyz yyz yyz xyz yyz yyz" py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"b2ceabc\"" "And" "I type \"b2ceabc\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"abc yyz abc yyz abc yyz abc yyz\"" "Then" "I should see \"abc yyz abc yyz abc yyz abc yyz\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up to a letter (f)" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbcftxyz\"" "And" "I type \"bbbcftxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzher-test xyzher-test xyzher-test\"" "Then" "I should see \"xyzher-test xyzher-test xyzher-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up to a letter (f) with count" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbb2cftxyz\"" "And" "I type \"bbb2cftxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzest xyzest xyzest\"" "Then" "I should see \"xyzest xyzest xyzest\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change up till before a letter (t)" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbcttxyz\"" "And" "I type \"bbbcttxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzther-test xyzther-test xyzther-test\"" "Then" "I should see \"xyzther-test xyzther-test xyzther-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a visual selection" ([cl-struct-ecukes-step "When I replace the buffer text with \"another-test another-test another-test\"" "When" "I replace the buffer text with \"another-test another-test another-test\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bbbv4lcxyz\"" "And" "I type \"bbbv4lcxyz\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see \"xyzer-test xyzer-test xyzer-test\"" "Then" "I should see \"xyzer-test xyzer-test xyzer-test\"" nil regular nil nil]) nil] [cl-struct-ecukes-scenario "Change a visual selection 2" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a simple line.\nThis is a simple line.\nThis is a simple line.\nThat is a simple line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"bvt.cChanged text\"" "And" "I type \"bvt.cChanged text\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "Changed text.\nChanged text.\nChanged text.\nThat is a simple line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change until the end of line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wC\"" "And" "I press \"wC\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"line has changed.\"" "And" "I type \"line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This line has changed.\nThis line has changed.\nThis line has changed." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThis is a line.\nThat is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"cc\"" "And" "I type \"cc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The line has changed.\"" "And" "I type \"The line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The line has changed.\nThat is a line.\nThe line has changed.\nThat is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole visual line" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThat is a line.\nThis is a line.\nThat is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"Vc\"" "And" "I press \"Vc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The line has changed.\"" "And" "I type \"The line has changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The line has changed.\nThat is a line.\nThe line has changed.\nThat is a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a whole line with count" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThe next line.\nThe last line.\nThis is a line.\nThe next line.\nThe last line.\nThe last line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"2cc\"" "And" "I press \"2cc\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"The first two lines have changed.\"" "And" "I type \"The first two lines have changed.\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "The first two lines have changed.\nThe last line.\nThe first two lines have changed.\nThe last line." py-string nil nil]) nil])] [cl-struct-ecukes-feature nil nil nil ([cl-struct-ecukes-scenario "The custom command should run at each cursor real and fake" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "There is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line\nThere is a 0 on this line" py-string nil nil] [cl-struct-ecukes-step "And I press \"vgrm\"" "And" "I press \"vgrm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"f0\"" "And" "I press \"f0\"" nil regular nil nil] [cl-struct-ecukes-step "And I call \"evil-mc-inc-num-at-each-cursor\"" "And" "I call \"evil-mc-inc-num-at-each-cursor\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "There is a 0 on this line\nThere is a 1 on this line\nThere is a 2 on this line\nThere is a 3 on this line\nThere is a 4 on this line\nThere is a 5 on this line" py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Text objects and surround" nil] nil nil ([cl-struct-ecukes-scenario "Change the bracket type" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"csbB\"" "And" "I press \"csbB\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a {very} very {long} line with {lots of} words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete brackets inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dib\"" "And" "I press \"dib\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a () very () line with () words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Delete brackets outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (very) very (long) line with (lots of) words." py-string nil nil] [cl-struct-ecukes-step "And I press \"f(v\"" "And" "I press \"f(v\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"dab\"" "And" "I press \"dab\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a very line with words." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy brackets inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (normal) line.\nThis is a (normal) line.\nThis is a (normal) line." py-string nil nil] [cl-struct-ecukes-step "And I press \"fn\"" "And" "I press \"fn\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yib\"" "And" "I press \"yib\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$p\"" "And" "I press \"$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (normal) line.normal\nThis is a (normal) line.normal\nThis is a (normal) line.normal" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Copy brackets outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (normal) line.\nThis is a (normal) line.\nThis is a (normal) line." py-string nil nil] [cl-struct-ecukes-step "And I press \"fn\"" "And" "I press \"fn\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"yab\"" "And" "I press \"yab\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"$p\"" "And" "I press \"$p\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (normal) line.(normal)\nThis is a (normal) line.(normal)\nThis is a (normal) line.(normal)" py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a parenthesis expression inner" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (sentence) with brackets.\nThis is a (sentence) with brackets.\nThis is a (sentence) with brackets." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"f(cibchanged\"" "And" "I type \"f(cibchanged\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a (changed) with brackets.\nThis is a (changed) with brackets.\nThis is a (changed) with brackets." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change a parenthesis expression outer" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a (sentence) with brackets.\nThis is a (sentence) with brackets.\nThis is a (sentence) with brackets." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"f(cabchanged\"" "And" "I type \"f(cabchanged\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a changed with brackets.\nThis is a changed with brackets.\nThis is a changed with brackets." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Surround a word with quotes" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a simple line.\nThis is a simple line.\nThat is a simple line.\nThis is a simple line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fmviwS'\"" "And" "I type \"fmviwS'\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a 'simple' line.\nThis is a 'simple' line.\nThat is a simple line.\nThis is a 'simple' line." py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Visual region\n" nil] nil nil ([cl-struct-ecukes-scenario "Change selected text with the cursor at the end of the region" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wve\"" "And" "I press \"wve\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cisn't\"" "And" "I press \"cisn't\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This isn't a line.\nThis isn't a line.\nThis isn't a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change selected text with the cursor at the beginning of the region" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wveo\"" "And" "I press \"wveo\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cisn't\"" "And" "I press \"cisn't\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This isn't a line.\nThis isn't a line.\nThis isn't a line." py-string nil nil]) nil])]))
ecukes-run(("/Users/aaronjensen/Source/evil-mc/features/evil-mc-command-info.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-copy-paste.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-delete.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-insert.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-run-for-each-cursor.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-text-objects.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-visual.feature"))
(let ((feature-files)) (-each args (function (lambda (arg) (let ((path (f-expand arg ...))) (if (f-dir\? path) (-each (f-files path ... ...) (function ...)) (setq feature-files (cons path feature-files))))))) (ecukes-run feature-files))
ecukes-cli/run("features")
apply(ecukes-cli/run "features")
commander--handle-command(nil)
commander-parse(("--debug"))
(if commander-parsing-done nil (commander-parse (or commander-args (cdr command-line-args-left))))
eval-buffer(#<buffer *load*> nil "/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el" nil t) ; Reading at buffer position 5944
load-with-code-conversion("/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el" "/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el" nil t)
load("/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el" nil t t)
command-line-1(("-scriptload" "/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el"))
command-line()
normal-top-level()
lace the buffer text with:" "This is a simple line.\nThis is a simple line.\nThat is a simple line.\nThis is a simple line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I type \"fmviwS'\"" "And" "I type \"fmviwS'\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This is a 'simple' line.\nThis is a 'simple' line.\nThat is a simple line.\nThis is a 'simple' line." py-string nil nil]) nil])] [cl-struct-ecukes-feature [cl-struct-ecukes-intro "Visual region\n" nil] nil nil ([cl-struct-ecukes-scenario "Change selected text with the cursor at the end of the region" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wve\"" "And" "I press \"wve\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cisn't\"" "And" "I press \"cisn't\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This isn't a line.\nThis isn't a line.\nThis isn't a line." py-string nil nil]) nil] [cl-struct-ecukes-scenario "Change selected text with the cursor at the beginning of the region" ([cl-struct-ecukes-step "When I replace the buffer text with:" "When" "I replace the buffer text with:" "This is a line.\nThis is a line.\nThis is a line." py-string nil nil] [cl-struct-ecukes-step "And I press \"grm\"" "And" "I press \"grm\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"wveo\"" "And" "I press \"wveo\"" nil regular nil nil] [cl-struct-ecukes-step "And I press \"cisn't\"" "And" "I press \"cisn't\"" nil regular nil nil] [cl-struct-ecukes-step "Then I should see:" "Then" "I should see:" "This isn't a line.\nThis isn't a line.\nThis isn't a line." py-string nil nil]) nil])]))
ecukes-run(("/Users/aaronjensen/Source/evil-mc/features/evil-mc-command-info.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-copy-paste.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-delete.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-insert.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-run-for-each-cursor.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-text-objects.feature" "/Users/aaronjensen/Source/evil-mc/features/evil-mc-visual.feature"))
(let ((feature-files)) (-each args (function (lambda (arg) (let ((path (f-expand arg ...))) (if (f-dir\? path) (-each (f-files path ... ...) (function ...)) (setq feature-files (cons path feature-files))))))) (ecukes-run feature-files))
ecukes-cli/run("features")
apply(ecukes-cli/run "features")
commander--handle-command(nil)
commander-parse(("--debug"))
(if commander-parsing-done nil (commander-parse (or commander-args (cdr command-line-args-left))))
eval-buffer(#<buffer *load*> nil "/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el" nil t)
load-with-code-conversion("/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el" "/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el" nil t)
load("/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el" nil t t)
command-line-1(("-scriptload" "/Users/aaronjensen/Source/evil-mc/.cask/25.1.50.1/elpa/ecukes-20150717.648/ecukes-cli.el"))
command-line()
normal-top-level()
.
.
.
.
.
make: *** [test-debug] Error 255
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment