pickle 0.2.4 → 0.2.5
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +8 -0
- data/README.rdoc +1 -0
- data/VERSION +1 -1
- data/features/step_definitions/pickle_steps.rb +1 -1
- data/lib/pickle/session.rb +3 -3
- data/pickle.gemspec +2 -2
- data/rails_generators/pickle/templates/pickle_steps.rb +1 -1
- data/spec/lib/pickle_session_spec.rb +14 -14
- metadata +3 -3
data/History.txt
CHANGED
@@ -1,9 +1,17 @@
|
|
1
|
+
== 0.2.5 - 17 Mar 2010
|
2
|
+
|
3
|
+
* 2 improvements
|
4
|
+
* Bugfix for find_models_via_table (failing to find models was not causing an error) [Chris Flipse]
|
5
|
+
* find_models_via_table & create_models_via_table return the found/created models [Chris Flipse, Ian White]
|
6
|
+
|
7
|
+
|
1
8
|
== 0.2.4 - 9 Mar 2010
|
2
9
|
|
3
10
|
* 1 major improvement
|
4
11
|
* Finding models via a table now works in the same way as creating models via a table (0.2.3), you
|
5
12
|
can create pickle refs
|
6
13
|
|
14
|
+
|
7
15
|
== 0.2.3 - 9 Mar 2010
|
8
16
|
|
9
17
|
* 1 major improvement
|
data/README.rdoc
CHANGED
@@ -68,6 +68,7 @@ The following people have made Pickle better:
|
|
68
68
|
* {Michael Moen}[http://github.com/UnderpantsGnome]
|
69
69
|
* {Myron Marston}[http://github.com/myronmarston]
|
70
70
|
* {Stephan Hagemann}[http://github.com/xing]
|
71
|
+
* {Chris Flipse}[http://github.com/cflipse]
|
71
72
|
|
72
73
|
== Get Started
|
73
74
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.2.
|
1
|
+
0.2.5
|
@@ -27,7 +27,7 @@ end
|
|
27
27
|
|
28
28
|
# find models with a table
|
29
29
|
Then(/^the following #{capture_plural_factory} should exists?:?$/) do |plural_factory, table|
|
30
|
-
find_models_from_table(plural_factory, table)
|
30
|
+
find_models_from_table(plural_factory, table).should_not be_any(&:nil?)
|
31
31
|
end
|
32
32
|
|
33
33
|
# find exactly n models
|
data/lib/pickle/session.rb
CHANGED
@@ -31,7 +31,7 @@ module Pickle
|
|
31
31
|
# if a column exists in the table which matches the singular factory name, this is used as the pickle ref
|
32
32
|
def create_models_from_table(plural_factory, table)
|
33
33
|
factory = plural_factory.singularize
|
34
|
-
table.hashes.
|
34
|
+
table.hashes.map do |hash|
|
35
35
|
pickle_ref = factory + (hash[factory] ? " \"#{hash.delete(factory)}\"" : "")
|
36
36
|
create_model(pickle_ref, hash)
|
37
37
|
end
|
@@ -61,7 +61,7 @@ module Pickle
|
|
61
61
|
# if a column exists in the table which matches the singular factory name, this is used as the pickle ref
|
62
62
|
def find_models_from_table(plural_factory, table)
|
63
63
|
factory = plural_factory.singularize
|
64
|
-
table.hashes.
|
64
|
+
table.hashes.map do |hash|
|
65
65
|
pickle_ref = factory + (hash[factory] ? " \"#{hash.delete(factory)}\"" : "")
|
66
66
|
find_model(pickle_ref, hash)
|
67
67
|
end
|
@@ -172,4 +172,4 @@ module Pickle
|
|
172
172
|
models_by_index(factory) << record
|
173
173
|
end
|
174
174
|
end
|
175
|
-
end
|
175
|
+
end
|
data/pickle.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{pickle}
|
8
|
-
s.version = "0.2.
|
8
|
+
s.version = "0.2.5"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Ian White"]
|
12
|
-
s.date = %q{2010-03-
|
12
|
+
s.date = %q{2010-03-17}
|
13
13
|
s.description = %q{Easy model creation and reference in your cucumber features}
|
14
14
|
s.email = %q{ian.w.white@gmail.com}
|
15
15
|
s.extra_rdoc_files = [
|
@@ -27,7 +27,7 @@ end
|
|
27
27
|
|
28
28
|
# find models with a table
|
29
29
|
Then(/^the following #{capture_plural_factory} should exists?:?$/) do |plural_factory, table|
|
30
|
-
find_models_from_table(plural_factory, table)
|
30
|
+
find_models_from_table(plural_factory, table).should_not be_any(&:nil?)
|
31
31
|
end
|
32
32
|
|
33
33
|
# find exactly n models
|
@@ -213,16 +213,16 @@ describe Pickle::Session do
|
|
213
213
|
@table = mock(:hashes => [{'name' => 'Fred'}, {'name' => 'Betty'}])
|
214
214
|
end
|
215
215
|
|
216
|
-
it "#create_models_from_table(<plural factory>, <table>) should call create_model for each of the table hashes with plain factory name" do
|
217
|
-
should_receive(:create_model).with("user", 'name' => "Fred").once.ordered
|
218
|
-
should_receive(:create_model).with("user", 'name' => "Betty").once.ordered
|
219
|
-
create_models_from_table("users", @table)
|
216
|
+
it "#create_models_from_table(<plural factory>, <table>) should call create_model for each of the table hashes with plain factory name and return the models" do
|
217
|
+
should_receive(:create_model).with("user", 'name' => "Fred").once.ordered.and_return(:fred)
|
218
|
+
should_receive(:create_model).with("user", 'name' => "Betty").once.ordered.and_return(:betty)
|
219
|
+
create_models_from_table("users", @table).should == [:fred, :betty]
|
220
220
|
end
|
221
221
|
|
222
|
-
it "#find_models_from_table(<plural factory>, <table>) should call find_model for each of the table hashes with plain factory name" do
|
223
|
-
should_receive(:find_model).with("user", 'name' => "Fred").once.ordered
|
224
|
-
should_receive(:find_model).with("user", 'name' => "Betty").once.ordered
|
225
|
-
find_models_from_table("users", @table)
|
222
|
+
it "#find_models_from_table(<plural factory>, <table>) should call find_model for each of the table hashes with plain factory name and return the models" do
|
223
|
+
should_receive(:find_model).with("user", 'name' => "Fred").once.ordered.and_return(:fred)
|
224
|
+
should_receive(:find_model).with("user", 'name' => "Betty").once.ordered.and_return(:betty)
|
225
|
+
find_models_from_table("users", @table).should == [:fred, :betty]
|
226
226
|
end
|
227
227
|
end
|
228
228
|
|
@@ -232,15 +232,15 @@ describe Pickle::Session do
|
|
232
232
|
end
|
233
233
|
|
234
234
|
it "#create_models_from_table(<plural factory>, <table>) should call create_model for each of the table hashes with labelled pickle ref" do
|
235
|
-
should_receive(:create_model).with("user \"fred\"", 'name' => "Fred").once.ordered
|
236
|
-
should_receive(:create_model).with("user \"betty\"", 'name' => "Betty").once.ordered
|
237
|
-
create_models_from_table("users", @table)
|
235
|
+
should_receive(:create_model).with("user \"fred\"", 'name' => "Fred").once.ordered.and_return(:fred)
|
236
|
+
should_receive(:create_model).with("user \"betty\"", 'name' => "Betty").once.ordered.and_return(:betty)
|
237
|
+
create_models_from_table("users", @table).should == [:fred, :betty]
|
238
238
|
end
|
239
239
|
|
240
240
|
it "#find_models_from_table(<plural factory>, <table>) should call find_model for each of the table hashes with labelled pickle ref" do
|
241
|
-
should_receive(:find_model).with("user \"fred\"", 'name' => "Fred").once.ordered
|
242
|
-
should_receive(:find_model).with("user \"betty\"", 'name' => "Betty").once.ordered
|
243
|
-
find_models_from_table("users", @table)
|
241
|
+
should_receive(:find_model).with("user \"fred\"", 'name' => "Fred").once.ordered.and_return(:fred)
|
242
|
+
should_receive(:find_model).with("user \"betty\"", 'name' => "Betty").once.ordered.and_return(:betty)
|
243
|
+
find_models_from_table("users", @table).should == [:fred, :betty]
|
244
244
|
end
|
245
245
|
end
|
246
246
|
end
|
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 2
|
8
|
-
-
|
9
|
-
version: 0.2.
|
8
|
+
- 5
|
9
|
+
version: 0.2.5
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Ian White
|
@@ -14,7 +14,7 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2010-03-
|
17
|
+
date: 2010-03-17 00:00:00 +00:00
|
18
18
|
default_executable:
|
19
19
|
dependencies: []
|
20
20
|
|