spreewald 0.8.0 → 0.8.1

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
@@ -99,13 +99,16 @@ Marks scenario as pending
99
99
  Then an email should have been sent with:
100
100
  """
101
101
  From: max.mustermann@example.com
102
+ Reply-To: mmuster@gmail.com
102
103
  To: john.doe@example.com
103
- Subject: Unter anderem der Betreff kann auch "Anführungszeichen" enthalten
104
- Body: ...
104
+ Subject: The subject may contain "quotes"
105
105
  Attachments: ...
106
+
107
+ Message body goes here.
106
108
  """
107
109
 
108
- You can skip lines, of course.
110
+ You can skip lines, of course. Note that the mail body is only checked for
111
+ _inclusion_.
109
112
 
110
113
 
111
114
  * **When I follow the (first|second|third)? link in the e?mail**
@@ -148,6 +151,74 @@ Marks scenario as pending
148
151
 
149
152
 
150
153
 
154
+ ### file_attachment_steps.rb
155
+
156
+ Attach a file
157
+
158
+ Example:
159
+
160
+ Company.new.logo = File.new…
161
+
162
+ Given the file "…" was attached as logo to the company above
163
+
164
+
165
+ Example:
166
+
167
+ class Gallery
168
+ has_many :images, :as => :owner
169
+ end
170
+
171
+ class Image
172
+ belongs_to :owner, polymorphic: true
173
+ end
174
+
175
+ # so container = Image.new; container.file = File.new… , container.owner = object
176
+
177
+ Given the file "…" was attached as Image/file to the company above
178
+
179
+
180
+ Example:
181
+
182
+ Set updated_at with
183
+
184
+ Given … above at "2011-11-11 11:11"
185
+
186
+
187
+ * **Given the file "..." was attached( as (.../)?...)? to the ... above( at "...")?**
188
+
189
+ Attach a file
190
+
191
+ Example:
192
+
193
+ Company.new.logo = File.new…
194
+
195
+ Given the file "…" was attached as logo to the company above
196
+
197
+
198
+ Example:
199
+
200
+ class Gallery
201
+ has_many :images, :as => :owner
202
+ end
203
+
204
+ class Image
205
+ belongs_to :owner, polymorphic: true
206
+ end
207
+
208
+ # so container = Image.new; container.file = File.new… , container.owner = object
209
+
210
+ Given the file "…" was attached as Image/file to the company above
211
+
212
+
213
+ Example:
214
+
215
+ Set updated_at with
216
+
217
+ Given … above at "2011-11-11 11:11"
218
+
219
+
220
+
221
+
151
222
  ### table_steps.rb
152
223
 
153
224
  Check the content of tables in your HTML.
@@ -382,6 +453,7 @@ deprecation notice. Decide for yourself whether you want to use them:
382
453
  * **Then I should get a download with filename "..."**
383
454
 
384
455
  Checks "Content-Disposition" HTTP header
456
+ Attention: Doesn't work with Selenium, see https://github.com/jnicklas/capybara#gotchas
385
457
 
386
458
 
387
459
  * **Then "..." should be selected for "..."**
data/Rakefile CHANGED
@@ -2,7 +2,7 @@
2
2
  require "bundler/gem_tasks"
3
3
 
4
4
  desc 'Default: Run all tests.'
5
- task :default => 'tests:run' # now you can run the tests by just typing "rake" into your console
5
+ task :default => 'all:features'
6
6
 
7
7
 
8
8
  desc 'Update the "Steps" section of the README'
@@ -41,10 +41,10 @@ namespace :travis do
41
41
 
42
42
  end
43
43
 
44
- namespace :tests do
44
+ namespace :all do
45
45
 
46
46
  desc "Run tests on all test apps"
47
- task :run do # to run the tests type "rake tests:run" into your console
47
+ task :features do
48
48
  success = true
49
49
  for_each_directory_of('tests/**/Rakefile') do |directory|
50
50
  Bundler.with_clean_env do
@@ -76,7 +76,9 @@ def for_each_directory_of(path, &block)
76
76
  directory = File.dirname(rakefile)
77
77
  puts '', "\033[44m#{directory}\033[0m", ''
78
78
 
79
- unless RUBY_VERSION.start_with?("1.9") and directory.include?("rails-2.3")
79
+ if RUBY_VERSION.start_with?("1.9") and directory.include?("rails-2.3")
80
+ puts 'Skipping Rails 2.3 with Ruby 1.9.'
81
+ else
80
82
  block.call(directory)
81
83
  end
82
84
  end
@@ -17,17 +17,18 @@ end
17
17
  # From: max.mustermann@example.com
18
18
  # Reply-To: mmuster@gmail.com
19
19
  # To: john.doe@example.com
20
- # Subject: Unter anderem der Betreff kann auch "Anführungszeichen" enthalten
20
+ # Subject: The subject may contain "quotes"
21
21
  # Attachments: ...
22
22
  #
23
23
  # Message body goes here.
24
24
  # """
25
25
  #
26
- # You can skip lines, of course.
26
+ # You can skip lines, of course. Note that the mail body is only checked for
27
+ # _inclusion_.
27
28
  Then /^(an|no) e?mail should have been sent with:$/ do |mode, raw_data|
28
29
  patiently do
29
30
  raw_data.strip!
30
- header, body = raw_data.split(/\n\n/)
31
+ header, body = raw_data.split(/\n\n/, 2) # 2: maximum number of fields
31
32
  conditions = {}
32
33
  header.split("\n").each do |row|
33
34
  if row.match(/^[a-z\-]+: /i)
@@ -22,6 +22,12 @@
22
22
  # Given the file "…" was attached as Image/file to the company above
23
23
  #
24
24
  #
25
+ # Example:
26
+ #
27
+ # Set updated_at with
28
+ #
29
+ # Given … above at "2011-11-11 11:11"
30
+ #
25
31
  Given /^the file "([^"]*)" was attached(?: as (?:([^"]*)\/)?([^"]*))? to the ([^"]*) above(?: at "([^"]*)")?$/ do
26
32
  |path_to_file, container_name, relation_name, model_name, time_string|
27
33
 
@@ -1,5 +1,5 @@
1
1
  # coding: UTF-8
2
2
 
3
3
  module Spreewald
4
- VERSION = "0.8.0"
4
+ VERSION = "0.8.1"
5
5
  end
data/spreewald.gemspec CHANGED
@@ -12,7 +12,7 @@ Gem::Specification.new do |gem|
12
12
 
13
13
  gem.files = `git ls-files`.split($\)
14
14
  gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
15
- gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
15
+ gem.test_files = gem.files.grep(%r{^tests/})
16
16
  gem.name = "spreewald"
17
17
  gem.require_paths = ["lib"]
18
18
  gem.version = Spreewald::VERSION
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: ../..
3
3
  specs:
4
- spreewald (0.7.0)
4
+ spreewald (0.8.1)
5
5
  capybara
6
6
  cucumber
7
7
  cucumber-rails
@@ -1,15 +1,6 @@
1
- development:
2
- adapter: mysql2
3
- database: spreewald_development
4
- encoding: utf8
5
- host: localhost
6
- username: root
7
- password: junior
8
-
9
1
  test:
10
2
  adapter: mysql2
11
3
  database: spreewald_test
12
- encoding: utf8
13
4
  host: localhost
14
5
  username: root
15
- password: junior
6
+ password: tomhanks
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: ../..
3
3
  specs:
4
- spreewald (0.7.0)
4
+ spreewald (0.8.1)
5
5
  capybara
6
6
  cucumber
7
7
  cucumber-rails
@@ -1,15 +1,6 @@
1
- development:
2
- adapter: mysql2
3
- database: spreewald_development
4
- encoding: utf8
5
- host: localhost
6
- username: root
7
- password: junior
8
-
9
1
  test:
10
2
  adapter: mysql2
11
3
  database: spreewald_test
12
- encoding: utf8
13
4
  host: localhost
14
5
  username: root
15
- password: junior
6
+ password: tomhanks
@@ -113,3 +113,19 @@ Feature: Test Spreewald's email steps
113
113
  OTHER-BODY
114
114
  '''
115
115
  """
116
+
117
+ # Test body with multiple paragraphs
118
+ Then the following multiline step should fail:
119
+ """
120
+ Then an email should have been sent with:
121
+ '''
122
+ From: from@example.com
123
+ Reply-To: reply-to@example.com
124
+ To: to@example.com
125
+ Subject: SUBJECT
126
+
127
+ BODY
128
+
129
+ MORE-BODY
130
+ '''
131
+ """
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spreewald
3
3
  version: !ruby/object:Gem::Version
4
- hash: 63
4
+ hash: 61
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 8
9
- - 0
10
- version: 0.8.0
9
+ - 1
10
+ version: 0.8.1
11
11
  platform: ruby
12
12
  authors:
13
13
  - Tobias Kraze
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2013-12-04 00:00:00 +01:00
18
+ date: 2013-12-09 00:00:00 +01:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -178,5 +178,53 @@ rubygems_version: 1.3.9.5
178
178
  signing_key:
179
179
  specification_version: 3
180
180
  summary: Collection of useful cucumber steps.
181
- test_files: []
182
-
181
+ test_files:
182
+ - tests/rails-2.3/Gemfile
183
+ - tests/rails-2.3/Gemfile.lock
184
+ - tests/rails-2.3/Rakefile
185
+ - tests/rails-2.3/config/boot.rb
186
+ - tests/rails-2.3/config/database.yml
187
+ - tests/rails-2.3/config/environment.rb
188
+ - tests/rails-2.3/config/environments/test.rb
189
+ - tests/rails-2.3/config/initializers/backtrace_silencers.rb
190
+ - tests/rails-2.3/config/initializers/cookie_verification_secret.rb
191
+ - tests/rails-2.3/config/initializers/inflections.rb
192
+ - tests/rails-2.3/config/initializers/mime_types.rb
193
+ - tests/rails-2.3/config/initializers/new_rails_defaults.rb
194
+ - tests/rails-2.3/config/initializers/session_store.rb
195
+ - tests/rails-2.3/config/preinitializer.rb
196
+ - tests/rails-2.3/config/routes.rb
197
+ - tests/rails-2.3/features/support/env.rb
198
+ - tests/rails-2.3/features/support/paths.rb
199
+ - tests/rails-2.3/scripts/generate
200
+ - tests/rails-3.2/.DS_Store
201
+ - tests/rails-3.2/Gemfile
202
+ - tests/rails-3.2/Gemfile.lock
203
+ - tests/rails-3.2/Rakefile
204
+ - tests/rails-3.2/config/application.rb
205
+ - tests/rails-3.2/config/boot.rb
206
+ - tests/rails-3.2/config/database.yml
207
+ - tests/rails-3.2/config/environment.rb
208
+ - tests/rails-3.2/config/initializers/backtrace_silencers.rb
209
+ - tests/rails-3.2/config/initializers/inflections.rb
210
+ - tests/rails-3.2/config/initializers/mime_types.rb
211
+ - tests/rails-3.2/config/initializers/secret_token.rb
212
+ - tests/rails-3.2/config/initializers/session_store.rb
213
+ - tests/rails-3.2/config/routes.rb
214
+ - tests/rails-3.2/features/support/env.rb
215
+ - tests/rails-3.2/features/support/paths.rb
216
+ - tests/shared/app/controllers/application_controller.rb
217
+ - tests/shared/app/controllers/emails_controller.rb
218
+ - tests/shared/app/controllers/forms_controller.rb
219
+ - tests/shared/app/controllers/tables_controller.rb
220
+ - tests/shared/app/models/mailer.rb
221
+ - tests/shared/app/views/forms/form1.html.haml
222
+ - tests/shared/app/views/layouts/application.html.haml
223
+ - tests/shared/app/views/tables/table1.html.haml
224
+ - tests/shared/config/database.sample.yml
225
+ - tests/shared/db/migrate/.gitignore
226
+ - tests/shared/features/shared/email_steps.feature
227
+ - tests/shared/features/shared/step_definitions/test_steps.rb
228
+ - tests/shared/features/shared/table_steps.feature
229
+ - tests/shared/features/shared/web_steps.feature
230
+ - tests/shared/features/support/paths.rb