jelly_bird 0.0.1 → 0.0.2
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/jelly_bird/define.rb +3 -3
- data/lib/jelly_bird/version.rb +1 -1
- data/spec/jelly_bird/jelly_bird_spec.rb +43 -0
- metadata +5 -5
data/lib/jelly_bird/define.rb
CHANGED
@@ -2,14 +2,14 @@ module JellyBird
|
|
2
2
|
|
3
3
|
module Define
|
4
4
|
|
5
|
-
@@
|
5
|
+
@@generator = {}
|
6
6
|
|
7
7
|
def define(&default_lambda)
|
8
|
-
@@generator = default_lambda
|
8
|
+
@@generator[self.to_s] = default_lambda
|
9
9
|
end
|
10
10
|
|
11
11
|
def generator
|
12
|
-
@@generator
|
12
|
+
@@generator[self.to_s]
|
13
13
|
end
|
14
14
|
|
15
15
|
end
|
data/lib/jelly_bird/version.rb
CHANGED
@@ -59,6 +59,15 @@ describe JellyBird do
|
|
59
59
|
|
60
60
|
describe "#gen" do
|
61
61
|
|
62
|
+
before(:all) do
|
63
|
+
|
64
|
+
Dummy.define {{
|
65
|
+
:name => /\w{3,8}/.gen,
|
66
|
+
:number => /\d\d\d\d\d\d\d/.gen
|
67
|
+
}}
|
68
|
+
|
69
|
+
end
|
70
|
+
|
62
71
|
it "should be able to generate object" do
|
63
72
|
dummy = Dummy.gen( :name => "test" )
|
64
73
|
dummy.should be_kind_of(Dummy)
|
@@ -71,6 +80,40 @@ describe JellyBird do
|
|
71
80
|
end
|
72
81
|
end
|
73
82
|
|
83
|
+
it "should create object with other objects inside" do
|
84
|
+
dummy = Dummy.gen({:bomb => {:size => 15, :purpose => "anti-personal", :type => {:name => "claymore", :category => ["land", "mine"] }}})
|
85
|
+
dummy[:name].should_not be_nil
|
86
|
+
dummy[:bomb][:type][:category][1].should eql("mine")
|
87
|
+
end
|
88
|
+
|
89
|
+
it "should generate object inside of other object" do
|
90
|
+
|
91
|
+
# bug, currently for hashes you can input a gen inside of a define ;/
|
92
|
+
dummy = Dummy.gen
|
93
|
+
|
94
|
+
Rummy.define {{
|
95
|
+
:baby_rummy_is_a => dummy
|
96
|
+
}}
|
97
|
+
|
98
|
+
mummy = Rummy.gen
|
99
|
+
mummy[:baby_rummy_is_a][:name].should_not be_nil
|
100
|
+
|
101
|
+
end
|
102
|
+
|
103
|
+
it "should not override other generators" do
|
104
|
+
|
105
|
+
Rummy.define {{
|
106
|
+
:aa => "Rummy"
|
107
|
+
}}
|
108
|
+
|
109
|
+
Dummy.define {{
|
110
|
+
:bb => "Dummy"
|
111
|
+
}}
|
112
|
+
|
113
|
+
Rummy.gen[:aa].should eql("Rummy")
|
114
|
+
|
115
|
+
end
|
116
|
+
|
74
117
|
end
|
75
118
|
|
76
119
|
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: 27
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 0.0.
|
9
|
+
- 2
|
10
|
+
version: 0.0.2
|
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-07-03 00:00:00 Z
|
19
19
|
dependencies: []
|
20
20
|
|
21
21
|
description: JellyBird is a ultra small factory to help generating objects for purpose of tests.
|
@@ -69,7 +69,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
69
69
|
requirements: []
|
70
70
|
|
71
71
|
rubyforge_project: jelly_bird
|
72
|
-
rubygems_version: 1.8.
|
72
|
+
rubygems_version: 1.8.3
|
73
73
|
signing_key:
|
74
74
|
specification_version: 3
|
75
75
|
summary: Ultra small gem for generating objects
|