spreewald 0.4.6 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/README.md CHANGED
@@ -148,7 +148,7 @@ Check the content of tables in your HTML.
148
148
 
149
149
  See [this article](https://makandracards.com/makandra/763-cucumber-step-to-match-table-rows-with-capybara) for details.
150
150
 
151
- * **Then I should( not)? see a table with the following rows( in any order)?**
151
+ * **Then I should( not)? see a table with (exactly )?the following rows( in any order)?**
152
152
 
153
153
 
154
154
 
@@ -160,19 +160,19 @@ Steps to travel through time using [Timecop](https://github.com/jtrupiano/timeco
160
160
 
161
161
  See [this article](https://makandracards.com/makandra/1222-useful-cucumber-steps-to-travel-through-time-with-timecop) for details.
162
162
 
163
- * **When the (date|time) is "(\d{4}-\d{2}-\d{2}( \d{1,2}:\d{2})?)"**
163
+ * **When the (date|time) is "?(\d{4}-\d{2}-\d{2}( \d{1,2}:\d{2})?)"?**
164
164
 
165
165
  Example:
166
166
 
167
- Given the date is "2012-02-10"
168
- Given the time is "2012-02-10 13:40"
167
+ Given the date is 2012-02-10
168
+ Given the time is 2012-02-10 13:40
169
169
 
170
170
 
171
- * **When the time is "(\d{1,2}:\d{2})"**
171
+ * **When the time is "?(\d{1,2}:\d{2})"?**
172
172
 
173
173
  Example:
174
174
 
175
- Given the time is "13:40"
175
+ Given the time is 13:40
176
176
 
177
177
 
178
178
  * **When it is (\d+|a|some|a few) (seconds?|minutes?|hours?|days?|weeks?|months?|years?) (later|earlier)**
@@ -279,7 +279,7 @@ deprecation notice. Decide for yourself whether you want to use them:
279
279
  Note that this does not detect if the text might be hidden via CSS
280
280
 
281
281
 
282
- * **Then I should see \/([^\/]*)\/**
282
+ * **Then I should see /([^/]*)/**
283
283
 
284
284
  Checks that a regexp appears on the page
285
285
 
@@ -291,7 +291,7 @@ deprecation notice. Decide for yourself whether you want to use them:
291
291
 
292
292
 
293
293
 
294
- * **Then I should not see \/([^\/]*)\/**
294
+ * **Then I should not see /([^/]*)/**
295
295
 
296
296
 
297
297
 
@@ -504,3 +504,10 @@ deprecation notice. Decide for yourself whether you want to use them:
504
504
 
505
505
  More details [here](https://makandracards.com/makandra/12139-waiting-for-page-loads-and-ajax-requests-to-finish-with-capybara).
506
506
 
507
+
508
+ * **When I perform basic authentication as ".../..." and go to ...**
509
+
510
+ Performs HTTP basic authentication with the given credentials and visits the given path.
511
+
512
+ More details [here](https://makandracards.com/makandra/971-perform-http-basic-authentication-in-cucumber).
513
+
@@ -477,7 +477,7 @@ end
477
477
  # When I follow "Read more" inside any ".text_snippet"
478
478
  #
479
479
  When /^I follow "([^"]*)" inside any "([^"]*)"$/ do |label, selector|
480
- node = first("#{selector} a", :text => label)
480
+ node = find("#{selector} a", :text => label)
481
481
  node.click
482
482
  end
483
483
 
@@ -576,3 +576,23 @@ When /^I wait for the page to load$/ do
576
576
  end
577
577
  page.has_content? ''
578
578
  end
579
+
580
+ # Performs HTTP basic authentication with the given credentials and visits the given path.
581
+ #
582
+ # More details [here](https://makandracards.com/makandra/971-perform-http-basic-authentication-in-cucumber).
583
+ When /^I perform basic authentication as "([^\"]*)\/([^\"]*)" and go to (.*)$/ do |user, password, page_name|
584
+ path = _path_to(page_name)
585
+ if Capybara::current_driver == :selenium
586
+ visit("http://#{user}:#{password}@#{page.driver.rack_server.host}:#{page.driver.rack_server.port}#{path}")
587
+ else
588
+ authorizers = [
589
+ (page.driver.browser if page.driver.respond_to?(:browser)),
590
+ (self),
591
+ (page.driver)
592
+ ].compact
593
+ authorizer = authorizers.detect { |authorizer| authorizer.respond_to?(:basic_authorize) }
594
+ authorizer.basic_authorize(user, password)
595
+ visit path
596
+ end
597
+ end
598
+
@@ -1,5 +1,5 @@
1
1
  # coding: UTF-8
2
2
 
3
3
  module Spreewald
4
- VERSION = "0.4.6"
4
+ VERSION = "0.5.0"
5
5
  end
@@ -45,7 +45,8 @@ module DocumentationGenerator
45
45
  gsub(/\(\[\^\\?"\](\*|\+)\)/, '...').
46
46
  gsub('(?:|I )', 'I ').
47
47
  gsub('?:', '').
48
- gsub(/\(\.(\+|\*)\)/, '...')
48
+ gsub(/\(\.(\+|\*)\)/, '...').
49
+ gsub(/\\\//, '/')
49
50
  end
50
51
  end
51
52
  end
metadata CHANGED
@@ -1,72 +1,75 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: spreewald
3
- version: !ruby/object:Gem::Version
4
- version: 0.4.6
3
+ version: !ruby/object:Gem::Version
4
+ hash: 11
5
5
  prerelease:
6
+ segments:
7
+ - 0
8
+ - 5
9
+ - 0
10
+ version: 0.5.0
6
11
  platform: ruby
7
- authors:
12
+ authors:
8
13
  - Tobias Kraze
9
14
  autorequire:
10
15
  bindir: bin
11
16
  cert_chain: []
12
- date: 2013-02-21 00:00:00.000000000 Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
17
+
18
+ date: 2013-02-22 00:00:00 +01:00
19
+ default_executable:
20
+ dependencies:
21
+ - !ruby/object:Gem::Dependency
15
22
  name: cucumber-rails
16
- requirement: !ruby/object:Gem::Requirement
17
- none: false
18
- requirements:
19
- - - ! '>='
20
- - !ruby/object:Gem::Version
21
- version: '0'
22
- type: :runtime
23
23
  prerelease: false
24
- version_requirements: !ruby/object:Gem::Requirement
24
+ requirement: &id001 !ruby/object:Gem::Requirement
25
25
  none: false
26
- requirements:
27
- - - ! '>='
28
- - !ruby/object:Gem::Version
29
- version: '0'
30
- - !ruby/object:Gem::Dependency
31
- name: cucumber
32
- requirement: !ruby/object:Gem::Requirement
33
- none: false
34
- requirements:
35
- - - ! '>='
36
- - !ruby/object:Gem::Version
37
- version: '0'
26
+ requirements:
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ hash: 3
30
+ segments:
31
+ - 0
32
+ version: "0"
38
33
  type: :runtime
34
+ version_requirements: *id001
35
+ - !ruby/object:Gem::Dependency
36
+ name: cucumber
39
37
  prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
38
+ requirement: &id002 !ruby/object:Gem::Requirement
41
39
  none: false
42
- requirements:
43
- - - ! '>='
44
- - !ruby/object:Gem::Version
45
- version: '0'
46
- - !ruby/object:Gem::Dependency
47
- name: capybara
48
- requirement: !ruby/object:Gem::Requirement
49
- none: false
50
- requirements:
51
- - - ! '>='
52
- - !ruby/object:Gem::Version
53
- version: '0'
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ hash: 3
44
+ segments:
45
+ - 0
46
+ version: "0"
54
47
  type: :runtime
48
+ version_requirements: *id002
49
+ - !ruby/object:Gem::Dependency
50
+ name: capybara
55
51
  prerelease: false
56
- version_requirements: !ruby/object:Gem::Requirement
52
+ requirement: &id003 !ruby/object:Gem::Requirement
57
53
  none: false
58
- requirements:
59
- - - ! '>='
60
- - !ruby/object:Gem::Version
61
- version: '0'
62
- description: A collection of cucumber steps we use in our projects, including steps
63
- to check HTML, tables, emails and some utility methods.
64
- email:
54
+ requirements:
55
+ - - ">="
56
+ - !ruby/object:Gem::Version
57
+ hash: 3
58
+ segments:
59
+ - 0
60
+ version: "0"
61
+ type: :runtime
62
+ version_requirements: *id003
63
+ description: A collection of cucumber steps we use in our projects, including steps to check HTML, tables, emails and some utility methods.
64
+ email:
65
65
  - tobias@kraze.eu
66
66
  executables: []
67
+
67
68
  extensions: []
69
+
68
70
  extra_rdoc_files: []
69
- files:
71
+
72
+ files:
70
73
  - .gitignore
71
74
  - Gemfile
72
75
  - LICENSE
@@ -89,29 +92,39 @@ files:
89
92
  - lib/spreewald_support/version.rb
90
93
  - spreewald.gemspec
91
94
  - support/documentation_generator.rb
95
+ has_rdoc: true
92
96
  homepage: https://github.com/makandra/spreewald
93
97
  licenses: []
98
+
94
99
  post_install_message:
95
100
  rdoc_options: []
96
- require_paths:
101
+
102
+ require_paths:
97
103
  - lib
98
- required_ruby_version: !ruby/object:Gem::Requirement
104
+ required_ruby_version: !ruby/object:Gem::Requirement
99
105
  none: false
100
- requirements:
101
- - - ! '>='
102
- - !ruby/object:Gem::Version
103
- version: '0'
104
- required_rubygems_version: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - ">="
108
+ - !ruby/object:Gem::Version
109
+ hash: 3
110
+ segments:
111
+ - 0
112
+ version: "0"
113
+ required_rubygems_version: !ruby/object:Gem::Requirement
105
114
  none: false
106
- requirements:
107
- - - ! '>='
108
- - !ruby/object:Gem::Version
109
- version: '0'
115
+ requirements:
116
+ - - ">="
117
+ - !ruby/object:Gem::Version
118
+ hash: 3
119
+ segments:
120
+ - 0
121
+ version: "0"
110
122
  requirements: []
123
+
111
124
  rubyforge_project:
112
- rubygems_version: 1.8.24
125
+ rubygems_version: 1.3.9.5
113
126
  signing_key:
114
127
  specification_version: 3
115
128
  summary: Collection of useful cucumber steps.
116
129
  test_files: []
117
- has_rdoc:
130
+