adva-core 0.0.5 → 0.0.6
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/lib/adva/generators/templates/app/Gemfile +24 -0
- data/lib/adva/generators/templates/app/app_template.rb +2 -2
- data/lib/adva/registry.rb +8 -8
- data/lib/adva_core/version.rb +1 -1
- data/lib/testing/assertions.rb +19 -7
- data/lib/testing/step_definitions/common_steps.rb +6 -2
- data/lib/testing/step_definitions/webrat_steps.rb +1 -1
- metadata +11 -10
@@ -0,0 +1,24 @@
|
|
1
|
+
source :rubygems
|
2
|
+
|
3
|
+
gem 'adva-core'
|
4
|
+
gem 'adva-blog'
|
5
|
+
gem 'adva-cache'
|
6
|
+
gem 'adva-categories'
|
7
|
+
gem 'adva-static'
|
8
|
+
gem 'adva-user'
|
9
|
+
gem 'adva-markup'
|
10
|
+
|
11
|
+
group :test do
|
12
|
+
gem 'sqlite3-ruby', '1.2.5'
|
13
|
+
gem 'cucumber', '0.9.4'
|
14
|
+
gem 'cucumber-rails', '0.3.2'
|
15
|
+
gem 'webrat', '0.7.2'
|
16
|
+
gem 'thor'
|
17
|
+
gem 'ruby-debug'
|
18
|
+
gem 'mocha'
|
19
|
+
gem 'fakefs', :require => 'fakefs/safe'
|
20
|
+
gem 'test_declarative'
|
21
|
+
gem 'database_cleaner', '0.5.2'
|
22
|
+
gem 'launchy'
|
23
|
+
gem 'factory_girl', '1.3.2'
|
24
|
+
end
|
@@ -1,3 +1,3 @@
|
|
1
1
|
copy_file config[:source].join('lib/bundler/repository.rb'), "#{app_path}/lib/bundler/repository.rb"
|
2
|
-
copy_file config[:source].join('Gemfile'), "#{app_path}/Gemfile"
|
3
|
-
remove_file 'public/index.html'
|
2
|
+
copy_file config[:source].join('adva-core/lib/adva/generators/templates/app/Gemfile'), "#{app_path}/Gemfile"
|
3
|
+
remove_file 'public/index.html'
|
data/lib/adva/registry.rb
CHANGED
@@ -6,15 +6,15 @@ module Adva
|
|
6
6
|
def instance
|
7
7
|
@@instance ||= new
|
8
8
|
end
|
9
|
-
|
9
|
+
|
10
10
|
def get(*args)
|
11
11
|
instance.get(*args)
|
12
12
|
end
|
13
|
-
|
13
|
+
|
14
14
|
def set(*args)
|
15
15
|
instance.set(*args)
|
16
16
|
end
|
17
|
-
|
17
|
+
|
18
18
|
def clear
|
19
19
|
instance.clear
|
20
20
|
end
|
@@ -40,18 +40,18 @@ module Adva
|
|
40
40
|
end
|
41
41
|
|
42
42
|
def get(*keys)
|
43
|
-
keys.map { |key| key.to_sym }.inject(self) do |result, key|
|
43
|
+
keys.map { |key| key.to_sym }.inject(self) do |result, key|
|
44
44
|
return nil unless result.has_key?(key)
|
45
45
|
result[key]
|
46
46
|
end
|
47
47
|
end
|
48
|
-
|
48
|
+
|
49
49
|
protected
|
50
|
-
|
50
|
+
|
51
51
|
def merge!(other)
|
52
52
|
other.each { |key, value| self[key] = value }
|
53
53
|
end
|
54
|
-
|
54
|
+
|
55
55
|
def to_registry(hash)
|
56
56
|
hash.inject(Registry.new) do |registry, (key, value)|
|
57
57
|
registry[key.to_sym] = value.is_a?(Hash) ? to_registry(value) : value
|
@@ -59,4 +59,4 @@ module Adva
|
|
59
59
|
end
|
60
60
|
end
|
61
61
|
end
|
62
|
-
end
|
62
|
+
end
|
data/lib/adva_core/version.rb
CHANGED
data/lib/testing/assertions.rb
CHANGED
@@ -1,8 +1,6 @@
|
|
1
|
-
def
|
2
|
-
|
3
|
-
|
4
|
-
matching_emails = emails.select do |email|
|
5
|
-
attributes.all? do |name, value|
|
1
|
+
def emails_for_assertion(attributes)
|
2
|
+
::ActionMailer::Base.deliveries.select do |email|
|
3
|
+
attributes.all? do |name, value|
|
6
4
|
case name
|
7
5
|
when 'body'
|
8
6
|
value.split(',').map(&:strip).all? { |value| email.body.include?(value) }
|
@@ -11,9 +9,23 @@ def assert_email_sent(attributes)
|
|
11
9
|
end
|
12
10
|
end
|
13
11
|
end
|
14
|
-
|
12
|
+
end
|
13
|
+
|
14
|
+
def assert_email_sent(attributes)
|
15
|
+
emails = ::ActionMailer::Base.deliveries
|
16
|
+
assert !emails.empty?, "No emails were sent"
|
17
|
+
assert !emails_for_assertion(attributes).empty?, begin
|
15
18
|
msg = ["None of the #{emails.size} emails matched #{attributes.inspect}.\nInstead, there are the following emails:"]
|
16
19
|
msg += emails.map { |email| attributes.keys.map { |key| [key, email.send(key)] }.map { |key, value| "#{key}: #{value}" }.join(',') }
|
17
20
|
msg.join("\n")
|
18
21
|
end
|
19
|
-
end
|
22
|
+
end
|
23
|
+
|
24
|
+
def assert_no_email_sent(attributes = {})
|
25
|
+
if attributes.empty?
|
26
|
+
assert ::ActionMailer::Base.deliveries.empty?
|
27
|
+
else
|
28
|
+
assert emails_for_assertion(attributes).empty?, "Expected none of the emails to match #{attributes.inspect}, but one did."
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
@@ -114,9 +114,9 @@ Then /^I should (not )?see a ([a-z ]+ )?row (?:of the ([a-z ]+) table )?where "(
|
|
114
114
|
xpath_result = body.xpath("//#{table_xpath}/descendant::td[@headers='#{header_id}'][normalize-space(text())='#{cell_content}']/#{tr_xpath}/@id")
|
115
115
|
|
116
116
|
if optional_not.present?
|
117
|
-
assert xpath_result.empty?,
|
117
|
+
assert xpath_result.empty?, "Expected not find a row where #{header.inspect} is #{cell_content}."
|
118
118
|
else
|
119
|
-
assert xpath_result.any?,
|
119
|
+
assert xpath_result.any?, "Expected to find at least one row where #{header.inspect} is #{cell_content}."
|
120
120
|
end
|
121
121
|
end
|
122
122
|
|
@@ -258,6 +258,10 @@ Then /^the following emails should have been sent:$/ do |expected_emails|
|
|
258
258
|
end
|
259
259
|
end
|
260
260
|
|
261
|
+
Then /^no emails should have been sent$/ do
|
262
|
+
assert_no_email_sent
|
263
|
+
end
|
264
|
+
|
261
265
|
Then /^"([^"]*)" should be filled in with "([^"]*)"$/ do |field, value|
|
262
266
|
field = webrat.field_labeled(field)
|
263
267
|
assert_equal value, field.value
|
@@ -44,7 +44,7 @@ end
|
|
44
44
|
# | Note | Nice guy |
|
45
45
|
# | Wants Email? | |
|
46
46
|
#
|
47
|
-
When /^(?:|I )fill in the following
|
47
|
+
When /^(?:|I )fill in the following:?$/ do |fields|
|
48
48
|
fields.rows_hash.each do |name, value|
|
49
49
|
step = case webrat.field_labeled(name)
|
50
50
|
when Webrat::TextField, Webrat::TextareaField, Webrat::PasswordField
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: adva-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 19
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 0.0.
|
9
|
+
- 6
|
10
|
+
version: 0.0.6
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Ingo Weiss
|
@@ -16,7 +16,7 @@ autorequire:
|
|
16
16
|
bindir: bin
|
17
17
|
cert_chain: []
|
18
18
|
|
19
|
-
date:
|
19
|
+
date: 2011-01-14 00:00:00 +01:00
|
20
20
|
default_executable:
|
21
21
|
dependencies:
|
22
22
|
- !ruby/object:Gem::Dependency
|
@@ -139,12 +139,12 @@ dependencies:
|
|
139
139
|
requirements:
|
140
140
|
- - "="
|
141
141
|
- !ruby/object:Gem::Version
|
142
|
-
hash:
|
142
|
+
hash: 47
|
143
143
|
segments:
|
144
144
|
- 0
|
145
145
|
- 0
|
146
|
-
-
|
147
|
-
version: 0.0.
|
146
|
+
- 24
|
147
|
+
version: 0.0.24
|
148
148
|
type: :runtime
|
149
149
|
version_requirements: *id008
|
150
150
|
- !ruby/object:Gem::Dependency
|
@@ -187,12 +187,12 @@ dependencies:
|
|
187
187
|
requirements:
|
188
188
|
- - "="
|
189
189
|
- !ruby/object:Gem::Version
|
190
|
-
hash:
|
190
|
+
hash: 3
|
191
191
|
segments:
|
192
192
|
- 0
|
193
193
|
- 0
|
194
|
-
-
|
195
|
-
version: 0.0.
|
194
|
+
- 14
|
195
|
+
version: 0.0.14
|
196
196
|
type: :runtime
|
197
197
|
version_requirements: *id011
|
198
198
|
- !ruby/object:Gem::Dependency
|
@@ -362,6 +362,7 @@ files:
|
|
362
362
|
- lib/adva/generators/templates/engine/redirects.rb.erb
|
363
363
|
- lib/adva/generators/templates/engine/Gemfile.erb
|
364
364
|
- lib/adva/generators/templates/engine/all.rb
|
365
|
+
- lib/adva/generators/templates/app/Gemfile
|
365
366
|
- lib/adva/generators/templates/app/app_template.rb
|
366
367
|
- lib/adva/generators/engine.rb
|
367
368
|
- lib/adva/responder/redirect.rb
|