jelly_bird 0.0.5 → 0.0.6
Sign up to get free protection for your applications and to get access to all the features.
- data/Readme.md +8 -1
- data/lib/jelly_bird/gen.rb +5 -4
- data/lib/jelly_bird/version.rb +1 -1
- data/spec/jelly_bird/jelly_bird_spec.rb +10 -0
- metadata +4 -4
data/Readme.md
CHANGED
@@ -75,7 +75,14 @@ remember that if you wanna embbed one into another please don't specify them at
|
|
75
75
|
|
76
76
|
Now just use it in tests!
|
77
77
|
|
78
|
-
|
78
|
+
# Changlelog
|
79
|
+
|
80
|
+
0.0.6 - Added ability for `.gen` and `.generate` to take blocks which receives object to make things aka `save`
|
81
|
+
0.0.5 - Fixed bugs
|
82
|
+
0.0.4 - Yanked version
|
83
|
+
0.0.1 -> 0.0.3 - Initial release
|
84
|
+
|
85
|
+
# Powered by
|
79
86
|
It is powered by `randexp` gem and initial concept was based on `dm-sweatshop` syntax. Big thanks to this two projects.
|
80
87
|
|
81
88
|
|
data/lib/jelly_bird/gen.rb
CHANGED
@@ -2,15 +2,16 @@ module JellyBird
|
|
2
2
|
|
3
3
|
module Generate
|
4
4
|
|
5
|
-
def gen(opts = {})
|
6
|
-
generate(:default, opts)
|
5
|
+
def gen(opts = {}, &block)
|
6
|
+
generate(:default, opts, &block)
|
7
7
|
end
|
8
8
|
|
9
|
-
def generate(name = :default, opts = {})
|
9
|
+
def generate(name = :default, opts = {}, &block)
|
10
10
|
options = self::generator(name).call if self::generator(name)
|
11
11
|
options.merge!(opts)
|
12
12
|
obj = self.new(options)
|
13
|
-
|
13
|
+
options.each_pair { |key, value| obj[key] = value } if obj.kind_of?(Hash)
|
14
|
+
yield(obj) if block_given?
|
14
15
|
obj
|
15
16
|
end
|
16
17
|
|
data/lib/jelly_bird/version.rb
CHANGED
@@ -7,6 +7,10 @@ class Mummy
|
|
7
7
|
self.attributes = opts
|
8
8
|
end
|
9
9
|
|
10
|
+
def bandage
|
11
|
+
self.attributes[:bandage] = true
|
12
|
+
end
|
13
|
+
|
10
14
|
end
|
11
15
|
|
12
16
|
class Dummy < Hash; end
|
@@ -119,6 +123,12 @@ describe JellyBird do
|
|
119
123
|
|
120
124
|
end
|
121
125
|
|
126
|
+
it "should be able to run bandage within gen " do
|
127
|
+
mummy = Mummy.gen {|mummy| mummy.bandage }
|
128
|
+
mummy.should be_kind_of(Mummy)
|
129
|
+
mummy.attributes[:bandage].should be_true
|
130
|
+
end
|
131
|
+
|
122
132
|
end
|
123
133
|
|
124
134
|
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jelly_bird
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 19
|
5
5
|
prerelease:
|
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
|
- JO
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2011-
|
18
|
+
date: 2011-09-02 00:00:00 +01:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|