Emacs mode for editing plain text user stories
Copy all the files to ~/.emacs.d/elisp/feature-mode, for example, and add this to your .emacs to load the mode
(add-to-list 'load-path "~/.emacs.d/elisp/feature-mode")
You can install it with the following command:
M-x package-install feature-mode
Set default language if .feature doesn't have "# language: fi"
(setq feature-default-language "fi")
Point to cucumber languages.yml or gherkin i18n.yml to use exactly the same localization your cucumber uses
(setq feature-default-i18n-file "/path/to/gherkin/gem/i18n.yml")
(require 'feature-mode) (add-to-list 'auto-mode-alist '("\.feature$" . feature-mode))
Point goto-step-definition capability to your step definitions
(setq feature-step-search-path "features/**/*steps.rb") (setq feature-step-search-gems-path "gems/ruby/*/gems/*/**/*steps.rb")
feature-step-search-gems-path variable points to where you have extra
gems installed that have extra step definitions. For example, if you use
bundler to install gems for your
project and put them in a
gems/ directory via:
bundle install --path ./gems
In order to get goto-step-definition to work, you must install the ruby_parser gem (version 2.0.x) and gherkin (version 2.11.8). For example:
gem install ruby_parser --version "~> 2.0.5" gem install gherkin --version 2.11.8
|C-c ,v||Verify all scenarios in the current buffer file.|
|C-c ,s||Verify the scenario under the point in the current buffer.|
|C-c ,f||Verify all features in project. (Available in feature and ruby files)|
|C-c ,r||Repeat the last verification process.|
|C-c ,g||Go to step-definition under point (requires ruby_parser gem >= 2.0.5)|
At the moment, Cucumber.el supports whatever your Cucumber supports. Just configure it to load i18n.yml from your Gherkin gem sources.
Project Development / Maintenance
To run the tests in the source project, do the following:
gem install bundler bundle make test
You may have to use
sudo to run the gem install command.
Copyright (C) 2008 — 2016 Michael Klishin and other contributors
You can redistribute it and/or modify it under the terms of the GNU General Public License either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Suite 500, Boston, MA 02110.