cucumber-rails 0.1.1.rc2 → 0.1.1.rc3
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +9 -0
- data/Rakefile +2 -2
- data/VERSION +1 -1
- data/cucumber-rails.gemspec +23 -10
- data/generators/cucumber/cucumber_generator.rb +63 -20
- data/generators/cucumber/templates/capybara_env.rb +24 -0
- data/generators/cucumber/templates/cucumber_environment.rb +8 -1
- data/generators/cucumber/templates/env.rb +0 -22
- data/generators/cucumber/templates/web_steps/capybara_steps.rb +247 -0
- data/generators/cucumber/templates/web_steps/web_steps_de.rb +139 -0
- data/generators/cucumber/templates/web_steps/web_steps_no.rb +117 -0
- data/generators/cucumber/templates/web_steps/web_steps_pt-BR.rb +143 -0
- data/generators/cucumber/templates/{webrat_steps/webrat_steps_en.rb → web_steps/webrat_steps.rb} +84 -68
- data/generators/cucumber/templates/webrat_env.rb +22 -0
- data/generators/feature/feature_generator.rb +1 -0
- data/generators/feature/templates/feature.erb +5 -1
- data/generators/feature/templates/steps.erb +1 -1
- data/lib/cucumber/rails/world.rb +1 -1
- data/lib/cucumber/web/tableish.rb +27 -0
- data/spec/cucumber/web/tableish_spec.rb +103 -0
- data/spec/spec_helper.rb +6 -0
- data/tasks/rspec.rake +13 -0
- metadata +20 -9
- data/generators/cucumber/templates/webrat_steps/webrat_steps_de.rb +0 -241
- data/lib/cucumber-rails.rb +0 -3
@@ -0,0 +1,22 @@
|
|
1
|
+
require 'cucumber/webrat/element_locator' # Deprecated - remove this line if you don't use #element_at or #table_at
|
2
|
+
require 'cucumber/web/tableish'
|
3
|
+
World(Cucumber::Tableish)
|
4
|
+
require 'webrat'
|
5
|
+
require 'webrat/core/matchers'
|
6
|
+
Webrat.configure do |config|
|
7
|
+
config.mode = :rails
|
8
|
+
config.open_error_files = false # Set to true if you want error pages to pop up in the browser
|
9
|
+
end
|
10
|
+
|
11
|
+
# If you set this to true, each scenario will run in a database transaction.
|
12
|
+
# You can still turn off transactions on a per-scenario basis, simply tagging
|
13
|
+
# a feature or scenario with the @no-txn tag.
|
14
|
+
#
|
15
|
+
# If you set this to false, transactions will be off for all scenarios,
|
16
|
+
# regardless of whether you use @no-txn or not.
|
17
|
+
#
|
18
|
+
# Beware that turning transactions off will leave data in your database
|
19
|
+
# after each scenario, which can lead to hard-to-debug failures in
|
20
|
+
# subsequent scenarios. If you do this, we recommend you create a Before
|
21
|
+
# block that will explicitly put your database in a known state.
|
22
|
+
Cucumber::Rails::World.use_transactional_fixtures = true
|
@@ -7,7 +7,11 @@ Feature: Manage <%= plural_name %>
|
|
7
7
|
Given I am on the new <%= singular_name %> page
|
8
8
|
<% keyword = 'When' -%>
|
9
9
|
<% named_args.each do |arg| -%>
|
10
|
-
|
10
|
+
<% if arg.type == 'boolean' -%>
|
11
|
+
<%= keyword %> I uncheck "<%= arg.name.humanize %>"
|
12
|
+
<% else -%>
|
13
|
+
<%= keyword %> I fill in "<%= arg.name.humanize %>" with "<%= arg.value(1) %>"
|
14
|
+
<% end -%>
|
11
15
|
<% keyword = 'And' -%>
|
12
16
|
<% end -%>
|
13
17
|
And I press "Create"
|
@@ -10,5 +10,5 @@ When /^I delete the (\d+)(?:st|nd|rd|th) <%= singular_name %>$/ do |pos|
|
|
10
10
|
end
|
11
11
|
|
12
12
|
Then /^I should see the following <%= plural_name %>:$/ do |expected_<%= plural_name %>_table|
|
13
|
-
expected_<%= plural_name %>_table.diff!(
|
13
|
+
expected_<%= plural_name %>_table.diff!(tableish('table tr', 'td,th'))
|
14
14
|
end
|
data/lib/cucumber/rails/world.rb
CHANGED
@@ -15,7 +15,7 @@ end
|
|
15
15
|
module Cucumber #:nodoc:
|
16
16
|
module Rails
|
17
17
|
class World < ActionController::IntegrationTest
|
18
|
-
include ActiveSupport::Testing::SetupAndTeardown
|
18
|
+
include ActiveSupport::Testing::SetupAndTeardown if ActiveSupport::Testing.const_defined?("SetupAndTeardown")
|
19
19
|
def initialize #:nodoc:
|
20
20
|
@_result = Test::Unit::TestResult.new
|
21
21
|
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
require 'nokogiri'
|
2
|
+
|
3
|
+
module Cucumber
|
4
|
+
module Tableish
|
5
|
+
def tableish(row_selector, column_selectors)
|
6
|
+
html = defined?(Capybara) ? body : response_body
|
7
|
+
_tableish(html, row_selector, column_selectors)
|
8
|
+
end
|
9
|
+
|
10
|
+
def _tableish(html, row_selector, column_selectors)
|
11
|
+
doc = Nokogiri::HTML(html)
|
12
|
+
column_count = nil
|
13
|
+
doc.search(row_selector).map do |row|
|
14
|
+
cells = case(column_selectors)
|
15
|
+
when String
|
16
|
+
row.search(column_selectors)
|
17
|
+
when Proc
|
18
|
+
column_selectors.call(row)
|
19
|
+
end
|
20
|
+
column_count ||= cells.length
|
21
|
+
cells[0...column_count].map do |cell|
|
22
|
+
cell.text.strip
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
@@ -0,0 +1,103 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + "/../../spec_helper")
|
2
|
+
require 'cucumber/web/tableish'
|
3
|
+
|
4
|
+
module Cucumber
|
5
|
+
module Web
|
6
|
+
describe Tableish do
|
7
|
+
include Tableish
|
8
|
+
|
9
|
+
unless RUBY_PLATFORM =~ /java/
|
10
|
+
it "should convert a table" do
|
11
|
+
html = <<-HTML
|
12
|
+
<table>
|
13
|
+
<tr>
|
14
|
+
<th>tool</th>
|
15
|
+
<th>dude</th>
|
16
|
+
</tr>
|
17
|
+
<tr>
|
18
|
+
<td>webrat</td>
|
19
|
+
<td>bryan</td>
|
20
|
+
</tr>
|
21
|
+
<tr>
|
22
|
+
<td>cucumber</td>
|
23
|
+
<td>aslak</td>
|
24
|
+
</tr>
|
25
|
+
</table>
|
26
|
+
HTML
|
27
|
+
|
28
|
+
_tableish(html, 'table tr', 'td,th').should == [
|
29
|
+
%w{tool dude},
|
30
|
+
%w{webrat bryan},
|
31
|
+
%w{cucumber aslak}
|
32
|
+
]
|
33
|
+
end
|
34
|
+
|
35
|
+
it "should size to the first row" do
|
36
|
+
html = <<-HTML
|
37
|
+
<table>
|
38
|
+
<tr>
|
39
|
+
<th>tool</th>
|
40
|
+
<th>dude</th>
|
41
|
+
</tr>
|
42
|
+
<tr>
|
43
|
+
<td>webrat</td>
|
44
|
+
<td>bryan</td>
|
45
|
+
<td>crapola</td>
|
46
|
+
</tr>
|
47
|
+
<tr>
|
48
|
+
<td>cucumber</td>
|
49
|
+
<td>aslak</td>
|
50
|
+
<td>gunk</td>
|
51
|
+
<td>filth</td>
|
52
|
+
</tr>
|
53
|
+
</table>
|
54
|
+
HTML
|
55
|
+
|
56
|
+
_tableish(html, 'table tr', 'td,th').should == [
|
57
|
+
%w{tool dude},
|
58
|
+
%w{webrat bryan},
|
59
|
+
%w{cucumber aslak}
|
60
|
+
]
|
61
|
+
end
|
62
|
+
|
63
|
+
it "should convert a dl" do
|
64
|
+
html = <<-HTML
|
65
|
+
<dl>
|
66
|
+
<dt>webrat</dt>
|
67
|
+
<dd>bryan</dd>
|
68
|
+
<dt>cucumber</dt>
|
69
|
+
<dd>aslak</dd>
|
70
|
+
</dl>
|
71
|
+
HTML
|
72
|
+
|
73
|
+
_tableish(html, 'dl dt', lambda{|dt| [dt, dt.next.next]}).should == [
|
74
|
+
%w{webrat bryan},
|
75
|
+
%w{cucumber aslak}
|
76
|
+
]
|
77
|
+
end
|
78
|
+
|
79
|
+
it "should convert a ul" do
|
80
|
+
html = <<-HTML
|
81
|
+
<ul id="phony">
|
82
|
+
<li>nope</li>
|
83
|
+
</ul>
|
84
|
+
|
85
|
+
<ul id="yes">
|
86
|
+
<li>webrat</li>
|
87
|
+
<li>bryan</li>
|
88
|
+
<li>cucumber</li>
|
89
|
+
<li>aslak</li>
|
90
|
+
</ul>
|
91
|
+
HTML
|
92
|
+
|
93
|
+
_tableish(html, 'ul#yes li', lambda{|li| [li]}).should == [
|
94
|
+
%w{webrat},
|
95
|
+
%w{bryan},
|
96
|
+
%w{cucumber},
|
97
|
+
%w{aslak},
|
98
|
+
]
|
99
|
+
end
|
100
|
+
end
|
101
|
+
end
|
102
|
+
end
|
103
|
+
end
|
data/spec/spec_helper.rb
ADDED
data/tasks/rspec.rake
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
begin
|
2
|
+
require 'spec/rake/spectask'
|
3
|
+
|
4
|
+
desc "Run RSpec"
|
5
|
+
Spec::Rake::SpecTask.new do |t|
|
6
|
+
t.spec_opts = %w{--color --diff --format profile}
|
7
|
+
t.spec_files = FileList['spec/**/*_spec.rb']
|
8
|
+
t.rcov = ENV['RCOV']
|
9
|
+
t.rcov_opts = %w{--exclude osx\/objc,gems\/,spec\/}
|
10
|
+
end
|
11
|
+
rescue LoadError
|
12
|
+
task :spec
|
13
|
+
end
|
metadata
CHANGED
@@ -1,16 +1,17 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cucumber-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.1.
|
4
|
+
version: 0.1.1.rc3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- "Dennis Bl\xC3\xB6te"
|
8
8
|
- "Aslak Helles\xC3\xB8y"
|
9
|
+
- Rob Holland
|
9
10
|
autorequire:
|
10
11
|
bindir: bin
|
11
12
|
cert_chain: []
|
12
13
|
|
13
|
-
date: 2009-
|
14
|
+
date: 2009-12-07 00:00:00 +01:00
|
14
15
|
default_executable:
|
15
16
|
dependencies:
|
16
17
|
- !ruby/object:Gem::Dependency
|
@@ -19,9 +20,9 @@ dependencies:
|
|
19
20
|
version_requirement:
|
20
21
|
version_requirements: !ruby/object:Gem::Requirement
|
21
22
|
requirements:
|
22
|
-
- - "
|
23
|
+
- - ">="
|
23
24
|
- !ruby/object:Gem::Version
|
24
|
-
version: 0.4.
|
25
|
+
version: 0.4.5.rc1
|
25
26
|
version:
|
26
27
|
description: Cucumber Generators and Runtime for Rails
|
27
28
|
email: cukes@googlegroups.com
|
@@ -33,12 +34,14 @@ extra_rdoc_files:
|
|
33
34
|
- README.rdoc
|
34
35
|
files:
|
35
36
|
- .gitignore
|
37
|
+
- History.txt
|
36
38
|
- README.rdoc
|
37
39
|
- Rakefile
|
38
40
|
- VERSION
|
39
41
|
- cucumber-rails.gemspec
|
40
42
|
- generators/cucumber/USAGE
|
41
43
|
- generators/cucumber/cucumber_generator.rb
|
44
|
+
- generators/cucumber/templates/capybara_env.rb
|
42
45
|
- generators/cucumber/templates/cucumber
|
43
46
|
- generators/cucumber/templates/cucumber.rake
|
44
47
|
- generators/cucumber/templates/cucumber_environment.rb
|
@@ -46,18 +49,25 @@ files:
|
|
46
49
|
- generators/cucumber/templates/paths.rb
|
47
50
|
- generators/cucumber/templates/spork_env.rb
|
48
51
|
- generators/cucumber/templates/version_check.rb
|
49
|
-
- generators/cucumber/templates/
|
50
|
-
- generators/cucumber/templates/
|
52
|
+
- generators/cucumber/templates/web_steps/capybara_steps.rb
|
53
|
+
- generators/cucumber/templates/web_steps/web_steps_de.rb
|
54
|
+
- generators/cucumber/templates/web_steps/web_steps_no.rb
|
55
|
+
- generators/cucumber/templates/web_steps/web_steps_pt-BR.rb
|
56
|
+
- generators/cucumber/templates/web_steps/webrat_steps.rb
|
57
|
+
- generators/cucumber/templates/webrat_env.rb
|
51
58
|
- generators/feature/USAGE
|
52
59
|
- generators/feature/feature_generator.rb
|
53
60
|
- generators/feature/templates/feature.erb
|
54
61
|
- generators/feature/templates/steps.erb
|
55
|
-
- lib/cucumber-rails.rb
|
56
62
|
- lib/cucumber/rails/action_controller.rb
|
57
63
|
- lib/cucumber/rails/active_record.rb
|
58
64
|
- lib/cucumber/rails/rspec.rb
|
59
65
|
- lib/cucumber/rails/test_unit.rb
|
60
66
|
- lib/cucumber/rails/world.rb
|
67
|
+
- lib/cucumber/web/tableish.rb
|
68
|
+
- spec/cucumber/web/tableish_spec.rb
|
69
|
+
- spec/spec_helper.rb
|
70
|
+
- tasks/rspec.rake
|
61
71
|
has_rdoc: true
|
62
72
|
homepage: http://github.com/dbloete/cucumber-rails
|
63
73
|
licenses: []
|
@@ -86,5 +96,6 @@ rubygems_version: 1.3.5
|
|
86
96
|
signing_key:
|
87
97
|
specification_version: 3
|
88
98
|
summary: Cucumber Generators and Runtime for Rails
|
89
|
-
test_files:
|
90
|
-
|
99
|
+
test_files:
|
100
|
+
- spec/cucumber/web/tableish_spec.rb
|
101
|
+
- spec/spec_helper.rb
|
@@ -1,241 +0,0 @@
|
|
1
|
-
# IMPORTANT: This file was generated by Cucumber <%= Cucumber::VERSION %>
|
2
|
-
# Edit at your own peril - it's recommended to regenerate this file
|
3
|
-
# in the future When you upgrade to a newer version of Cucumber.
|
4
|
-
# Consider adding your own code to a new file instead of editing this one.
|
5
|
-
|
6
|
-
require File.expand_path(File.join(File.dirname(__FILE__), "..", "support", "paths"))
|
7
|
-
|
8
|
-
# Commonly used webrat steps
|
9
|
-
# http://github.com/brynary/webrat
|
10
|
-
|
11
|
-
Given /^(?:|ich )bin auf (.+)$/ do |page_name|
|
12
|
-
visit path_to(page_name)
|
13
|
-
end
|
14
|
-
|
15
|
-
When /^(?:|ich )auf (.+) gehe$/ do |page_name|
|
16
|
-
visit path_to(page_name)
|
17
|
-
end
|
18
|
-
|
19
|
-
When /^(?:|ich )auf "([^\"]*)" drücke$/ do |button|
|
20
|
-
click_button(button)
|
21
|
-
end
|
22
|
-
|
23
|
-
When /^(?:|ich )auf "([^\"]*)" klicke$/ do |link|
|
24
|
-
click_link(link)
|
25
|
-
end
|
26
|
-
|
27
|
-
When /^(?:|ich )auf "([^\"]*)" innerhalb "([^\"]*)" klicke$/ do |link, parent|
|
28
|
-
click_link_within(parent, link)
|
29
|
-
end
|
30
|
-
|
31
|
-
When /^(?:|ich )"([^\"]*)" mit "([^\"]*)" ausfülle$/ do |field, value|
|
32
|
-
fill_in(field, :with => value)
|
33
|
-
end
|
34
|
-
|
35
|
-
When /^(?:|ich )"([^\"]*)" in "([^\"]*)" eingebe$/ do |value, field|
|
36
|
-
fill_in(field, :with => value)
|
37
|
-
end
|
38
|
-
|
39
|
-
# Wird benutzt, um ein Formular mittels Tabelle zu füllen. Beispiel:
|
40
|
-
#
|
41
|
-
# Wenn ich folgendes eingebe:
|
42
|
-
# | Account Number | 5002 |
|
43
|
-
# | Expiry date | 2009-11-01 |
|
44
|
-
# | Note | Nice guy |
|
45
|
-
# | Wants Email? | |
|
46
|
-
#
|
47
|
-
# TODO: Add support for checkbox, select og option
|
48
|
-
# based on naming conventions.
|
49
|
-
#
|
50
|
-
When /^(?:|ich )folgendes eingebe:$/ do |fields|
|
51
|
-
fields.rows_hash.each do |name, value|
|
52
|
-
When %{ich "#{name}" mit "#{value}" ausfülle}
|
53
|
-
end
|
54
|
-
end
|
55
|
-
|
56
|
-
When /^(?:|ich )"([^\"]*)" in "([^\"]*)" auswähle$/ do |value, field|
|
57
|
-
select(value, :from => field)
|
58
|
-
end
|
59
|
-
|
60
|
-
# Use this step in conjunction with Rail's datetime_select helper. For example:
|
61
|
-
# When I select "December 25, 2008 10:00" as the date and time
|
62
|
-
When /^(?:|ich )"([^\"]*)" als Datum und Uhrzeit auswähle$/ do |time|
|
63
|
-
select_datetime(time)
|
64
|
-
end
|
65
|
-
|
66
|
-
# Use this step when using multiple datetime_select helpers on a page or
|
67
|
-
# you want to specify which datetime to select. Given the following view:
|
68
|
-
# <%%= f.label :preferred %><br />
|
69
|
-
# <%%= f.datetime_select :preferred %>
|
70
|
-
# <%%= f.label :alternative %><br />
|
71
|
-
# <%%= f.datetime_select :alternative %>
|
72
|
-
# The following steps would fill out the form:
|
73
|
-
# When I select "November 23, 2004 11:20" as the "Preferred" date and time
|
74
|
-
# And I select "November 25, 2004 10:30" as the "Alternative" date and time
|
75
|
-
When /^(?:|ich )"([^\"]*)" als "([^\"]*)" Datum und Uhrzeit auswähle$/ do |datetime, datetime_label|
|
76
|
-
select_datetime(datetime, :from => datetime_label)
|
77
|
-
end
|
78
|
-
|
79
|
-
# Use this step in conjunction with Rail's time_select helper. For example:
|
80
|
-
# When I select "2:20PM" as the time
|
81
|
-
# Note: Rail's default time helper provides 24-hour time-- not 12 hour time. Webrat
|
82
|
-
# will convert the 2:20PM to 14:20 and Then select it.
|
83
|
-
When /^(?:|ich )"([^\"]*)" als Uhrzeit auswähle$/ do |time|
|
84
|
-
select_time(time)
|
85
|
-
end
|
86
|
-
|
87
|
-
# Use this step When using multiple time_select helpers on a page or you want to
|
88
|
-
# specify the name of the time on the form. For example:
|
89
|
-
# When I select "7:30AM" as the "Gym" time
|
90
|
-
When /^(?:|ich )"([^\"]*)" als "([^\"]*)" Uhrzeit auswähle$/ do |time, time_label|
|
91
|
-
select_time(time, :from => time_label)
|
92
|
-
end
|
93
|
-
|
94
|
-
# Use this step in conjunction with Rail's date_select helper. For example:
|
95
|
-
# When I select "February 20, 1981" as the date
|
96
|
-
When /^(?:|ich )"([^\"]*)" als Datum auswähle$/ do |date|
|
97
|
-
select_date(date)
|
98
|
-
end
|
99
|
-
|
100
|
-
# Use this step When using multiple date_select helpers on one page or
|
101
|
-
# you want to specify the name of the date on the form. For example:
|
102
|
-
# When I select "April 26, 1982" as the "Date of Birth" date
|
103
|
-
When /^(?:|ich )"([^\"]*)" als "([^\"]*)" Datum auswähle$/ do |date, date_label|
|
104
|
-
select_date(date, :from => date_label)
|
105
|
-
end
|
106
|
-
|
107
|
-
When /^(?:|ich )"([^\"]*)" anhake$/ do |field|
|
108
|
-
check(field)
|
109
|
-
end
|
110
|
-
|
111
|
-
When /^(?:|ich )"([^\"]*)" abhake$/ do |field|
|
112
|
-
uncheck(field)
|
113
|
-
end
|
114
|
-
|
115
|
-
When /^(?:|ich )"([^\"]*)" auswähle$/ do |field|
|
116
|
-
choose(field)
|
117
|
-
end
|
118
|
-
|
119
|
-
When /^(?:|ich )die Datei "([^\"]*)" als "([^\"]*)" anhänge$/ do |path, field|
|
120
|
-
attach_file(field, path)
|
121
|
-
end
|
122
|
-
|
123
|
-
Then /^(?:|ich sollte |sollte (?:|ich )?)"([^\"]*)" sehen$/ do |text|
|
124
|
-
<% if framework == :rspec -%>
|
125
|
-
response.should contain(text)
|
126
|
-
<% else -%>
|
127
|
-
assert_contain text
|
128
|
-
<% end -%>
|
129
|
-
end
|
130
|
-
|
131
|
-
Then /^(?:|ich sollte |sollte (?:|ich )?)"([^\"]*)" innerhalb "([^\"]*)" sehen$/ do |text, selector|
|
132
|
-
within(selector) do |content|
|
133
|
-
<% if framework == :rspec -%>
|
134
|
-
content.should contain(text)
|
135
|
-
<% else -%>
|
136
|
-
assert content.include?(text)
|
137
|
-
<% end -%>
|
138
|
-
end
|
139
|
-
end
|
140
|
-
|
141
|
-
Then /^(?:|ich sollte |sollte (?:|ich )?)\/([^\/]*)\/ sehen$/ do |regexp|
|
142
|
-
regexp = Regexp.new(regexp)
|
143
|
-
<% if framework == :rspec -%>
|
144
|
-
response.should contain(regexp)
|
145
|
-
<% else -%>
|
146
|
-
assert_contain regexp
|
147
|
-
<% end -%>
|
148
|
-
end
|
149
|
-
|
150
|
-
Then /^(?:|ich sollte |sollte (?:|ich )?)\/([^\/]*)\/ innerhalb "([^\"]*)" sehen$/ do |regexp, selector|
|
151
|
-
within(selector) do |content|
|
152
|
-
regexp = Regexp.new(regexp)
|
153
|
-
<% if framework == :rspec -%>
|
154
|
-
content.should contain(regexp)
|
155
|
-
<% else -%>
|
156
|
-
assert content =~ regexp
|
157
|
-
<% end -%>
|
158
|
-
end
|
159
|
-
end
|
160
|
-
|
161
|
-
Then /^(?:|ich sollte |sollte (?:|ich )?)nicht "([^\"]*)" sehen$/ do |text|
|
162
|
-
<% if framework == :rspec -%>
|
163
|
-
response.should_not contain(text)
|
164
|
-
<% else -%>
|
165
|
-
assert_not_contain text
|
166
|
-
<% end -%>
|
167
|
-
end
|
168
|
-
|
169
|
-
Then /^(?:|ich sollte |sollte (?:|ich )?)nicht "([^\"]*)" innerhalb "([^\"]*)" sehen$/ do |text, selector|
|
170
|
-
within(selector) do |content|
|
171
|
-
<% if framework == :rspec -%>
|
172
|
-
content.should_not contain(text)
|
173
|
-
<% else -%>
|
174
|
-
assert !content.include?(text)
|
175
|
-
<% end -%>
|
176
|
-
end
|
177
|
-
end
|
178
|
-
|
179
|
-
Then /^(?:|ich sollte |sollte (?:|ich )?)nicht \/([^\/]*)\/ sehen$/ do |regexp|
|
180
|
-
regexp = Regexp.new(regexp)
|
181
|
-
<% if framework == :rspec -%>
|
182
|
-
response.should_not contain(regexp)
|
183
|
-
<% else -%>
|
184
|
-
assert_not_contain regexp
|
185
|
-
<% end -%>
|
186
|
-
end
|
187
|
-
|
188
|
-
Then /^(?:|ich sollte |sollte (?:|ich )?)nicht \/([^\/]*)\/ innerhalb "([^\"]*)" sehen$/ do |regexp, selector|
|
189
|
-
within(selector) do |content|
|
190
|
-
regexp = Regexp.new(regexp)
|
191
|
-
<% if framework == :rspec -%>
|
192
|
-
content.should_not contain(regexp)
|
193
|
-
<% else -%>
|
194
|
-
assert content !~ regexp
|
195
|
-
<% end -%>
|
196
|
-
end
|
197
|
-
end
|
198
|
-
|
199
|
-
Then /^sollte das "([^\"]*)" Feld "([^\"]*)" enthalten$/ do |field, value|
|
200
|
-
<% if framework == :rspec -%>
|
201
|
-
field_labeled(field).value.should =~ /#{value}/
|
202
|
-
<% else -%>
|
203
|
-
assert_match(/#{value}/, field_labeled(field).value)
|
204
|
-
<% end -%>
|
205
|
-
end
|
206
|
-
|
207
|
-
Then /^sollte das "([^\"]*)" Feld nicht "([^\"]*)" enthalten$/ do |field, value|
|
208
|
-
<% if framework == :rspec -%>
|
209
|
-
field_labeled(field).value.should_not =~ /#{value}/
|
210
|
-
<% else -%>
|
211
|
-
assert_no_match(/#{value}/, field_labeled(field).value)
|
212
|
-
<% end -%>
|
213
|
-
end
|
214
|
-
|
215
|
-
Then /^sollte die "([^\"]*)" Checkbox angehakt sein$/ do |label|
|
216
|
-
<% if framework == :rspec -%>
|
217
|
-
field_labeled(label).should be_checked
|
218
|
-
<% else -%>
|
219
|
-
assert field_labeled(label).checked?
|
220
|
-
<% end -%>
|
221
|
-
end
|
222
|
-
|
223
|
-
Then /^sollte die "([^\"]*)" Checkbox nicht angehakt sein$/ do |label|
|
224
|
-
<% if framework == :rspec -%>
|
225
|
-
field_labeled(label).should_not be_checked
|
226
|
-
<% else -%>
|
227
|
-
assert !field_labeled(label).checked?
|
228
|
-
<% end -%>
|
229
|
-
end
|
230
|
-
|
231
|
-
Then /^(?:|ich sollte |sollte (?:|ich )?)auf (.+) sein$/ do |page_name|
|
232
|
-
<% if framework == :rspec -%>
|
233
|
-
URI.parse(current_url).path.should == path_to(page_name)
|
234
|
-
<% else -%>
|
235
|
-
assert_equal path_to(page_name), URI.parse(current_url).path
|
236
|
-
<% end -%>
|
237
|
-
end
|
238
|
-
|
239
|
-
Then /^zeig mir die Seite$/ do
|
240
|
-
save_and_open_page
|
241
|
-
end
|