~ubuntu-branches/ubuntu/wily/cucumber/wily-proposed

« back to all changes in this revision

Viewing changes to legacy_features/profiles.feature

  • Committer: Package Import Robot
  • Author(s): Cédric Boutillier, Antonio Terceiro, Cédric Boutillier
  • Date: 2015-06-20 16:52:32 UTC
  • mfrom: (1.1.7)
  • Revision ID: package-import@ubuntu.com-20150620165232-hznc8mxma08er27p
Tags: 2.0.0-1
[ Antonio Terceiro ]
* debian/cucumber.pod: fix typo in manpage (Closes: #767215)

[ Cédric Boutillier ]
* Imported Upstream version 2.0.0
* rename the file in debian/missing-source to remove -min suffix, and make
  lintian happy
* reproducibility: use last changelog date to build the manpage
* update 0004-Update_default_binary_path.patch
* drop 0001-Remove-rubygems-bundler-stuff-from-spec_helper.patch, not needed
  anymore
* build-depend on pry
* depend on ruby-cucumber-core

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
Feature: Profiles
2
 
  In order to save time and prevent carpal tunnel syndrome
3
 
  Cucumber users can save and reuse commonly used cucumber flags in a 'cucumber.yml' file.
4
 
  These named arguments are called profiles and the yml file should be in the root of your project.
5
 
  Any cucumber argument is valid in a profile.  To see all the available flags type 'cucumber --help'
6
 
  For more information about profiles please see the wiki:
7
 
  http://wiki.github.com/cucumber/cucumber/cucumber.yml
8
 
 
9
 
  Background: Basic App
10
 
    Given a standard Cucumber project directory structure
11
 
    And a file named "features/sample.feature" with:
12
 
      """
13
 
      Feature: Sample
14
 
        Scenario: this is a test
15
 
          Given I am just testing stuff
16
 
      """
17
 
    And a file named "features/support/env.rb"
18
 
    And a file named "features/support/super_env.rb"
19
 
    And the following profiles are defined:
20
 
      """
21
 
      default: features/sample.feature --require features/support/env.rb -v
22
 
      super: features/sample.feature --require features/support/super_env.rb -v
23
 
      """
24
 
 
25
 
  Scenario: Explicitly defining a profile to run
26
 
    When I run cucumber features/sample.feature --profile super
27
 
    Then the output should contain
28
 
      """
29
 
      Using the super profile...
30
 
      """
31
 
    And exactly these files should be loaded: features/support/super_env.rb
32
 
 
33
 
  Scenario: Explicitly defining a profile defined in an ERB formatted file
34
 
    Given the following profiles are defined:
35
 
      """
36
 
      <% requires = "--require features/support/super_env.rb" %>
37
 
      super: <%= "features/sample.feature #{requires} -v" %>
38
 
      """
39
 
    When I run cucumber features/sample.feature --profile super
40
 
    Then the output should contain
41
 
      """
42
 
      Using the super profile...
43
 
      """
44
 
    And exactly these files should be loaded: features/support/super_env.rb
45
 
 
46
 
  Scenario: Defining multiple profiles to run
47
 
    When I run cucumber features/sample.feature --profile default --profile super
48
 
    Then the output should contain
49
 
      """
50
 
      Using the default and super profiles...
51
 
      """
52
 
    And exactly these files should be loaded: features/support/env.rb, features/support/super_env.rb
53
 
 
54
 
  Scenario: Arguments passed in but no profile specified
55
 
    When I run cucumber -v
56
 
    Then the default profile should be used
57
 
    And exactly these files should be loaded: features/support/env.rb
58
 
 
59
 
  Scenario: Trying to use a missing profile
60
 
    When I run cucumber -p foo
61
 
    Then STDERR should be
62
 
      """
63
 
      Could not find profile: 'foo'
64
 
 
65
 
      Defined profiles in cucumber.yml:
66
 
        * default
67
 
        * super
68
 
 
69
 
      """
70
 
 
71
 
  Scenario Outline: Disabling the default profile
72
 
    When I run cucumber -v features/ <Flag>
73
 
    Then the output should contain
74
 
      """
75
 
      Disabling profiles...
76
 
      """
77
 
    And exactly these files should be loaded: features/support/env.rb, features/support/super_env.rb
78
 
 
79
 
    Examples:
80
 
    |   Flag          |
81
 
    | -P              |
82
 
    | --no-profile    |
83
 
 
84
 
 
85
 
  Scenario: Overriding the profile's features to run
86
 
    Given a file named "features/another.feature" with:
87
 
      """
88
 
      Feature: Just this one should be ran
89
 
      """
90
 
      When I run cucumber -p default features/another.feature
91
 
      Then exactly these features should be ran: features/another.feature
92
 
 
93
 
  Scenario: Overriding the profile's formatter
94
 
    You will most likely want to define a formatter in your default formatter.
95
 
    However, you often want to run your features with a different formatter
96
 
    yet still use the other the other arguments in the profile. Cucumber will
97
 
    allow you to do this by giving precedence to the formatter specified on the
98
 
    command line and override the one in the profile.
99
 
 
100
 
    Given the following profiles are defined:
101
 
      """
102
 
      default: features/sample.feature --require features/support/env.rb -v --format profile
103
 
      """
104
 
    When I run cucumber features --format pretty
105
 
    And the output should contain
106
 
      """
107
 
      Feature: Sample
108
 
      """
109
 
 
110
 
  Scenario Outline: Showing profiles when listing failing scenarios
111
 
    Given a file named "features/step_definitions/steps.rb" with:
112
 
      """
113
 
      Given /^I am just testing stuff$/ do
114
 
        raise 'BANG'
115
 
      end
116
 
      """
117
 
    When I run cucumber -q -p super -p default -f <format> features/sample.feature --require features/step_definitions/steps.rb
118
 
    Then it should fail
119
 
    And the output should contain
120
 
       """
121
 
       cucumber -p super features/sample.feature:2
122
 
       """
123
 
    Examples:
124
 
      | format  |
125
 
      | pretty  |
126
 
      | progress|