ianwhite-pickle 0.1.5 → 0.1.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/History.txt +38 -1
- data/Todo.txt +2 -0
- data/lib/pickle/adapter.rb +5 -2
- data/lib/pickle/config.rb +5 -8
- data/lib/pickle/email/parser.rb +18 -0
- data/lib/pickle/email/world.rb +17 -0
- data/lib/pickle/email.rb +36 -0
- data/lib/pickle/parser/matchers.rb +4 -4
- data/lib/pickle/parser.rb +3 -3
- data/lib/pickle/path/world.rb +8 -0
- data/lib/pickle/path.rb +44 -0
- data/lib/pickle/{parser/with_session.rb → session/parser.rb} +2 -2
- data/lib/pickle/session.rb +61 -32
- data/lib/pickle/version.rb +1 -1
- data/lib/pickle/world.rb +12 -0
- data/lib/pickle.rb +2 -13
- data/rails_generators/pickle/pickle_generator.rb +20 -7
- data/rails_generators/pickle/templates/env.rb +5 -3
- data/rails_generators/pickle/templates/pickle_email_steps.rb +50 -0
- data/rails_generators/pickle/templates/pickle_path_steps.rb +53 -0
- data/rails_generators/pickle/templates/pickle_steps.rb +1 -2
- data/spec/lib/pickle_adapter_spec.rb +10 -2
- data/spec/lib/pickle_config_spec.rb +4 -8
- data/spec/lib/pickle_email_parser_spec.rb +49 -0
- data/spec/lib/pickle_email_spec.rb +131 -0
- data/spec/lib/pickle_path_spec.rb +68 -0
- data/spec/lib/pickle_session_spec.rb +68 -53
- metadata +17 -6
- data/lib/pickle/injector.rb +0 -18
- data/spec/lib/pickle_injector_spec.rb +0 -22
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ianwhite-pickle
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ian White
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-01-
|
12
|
+
date: 2009-01-24 00:00:00 -08:00
|
13
13
|
default_executable:
|
14
14
|
dependencies: []
|
15
15
|
|
@@ -24,15 +24,22 @@ extra_rdoc_files: []
|
|
24
24
|
files:
|
25
25
|
- lib/pickle/adapter.rb
|
26
26
|
- lib/pickle/config.rb
|
27
|
-
- lib/pickle/
|
27
|
+
- lib/pickle/email/parser.rb
|
28
|
+
- lib/pickle/email/world.rb
|
29
|
+
- lib/pickle/email.rb
|
28
30
|
- lib/pickle/parser/matchers.rb
|
29
|
-
- lib/pickle/parser/with_session.rb
|
30
31
|
- lib/pickle/parser.rb
|
32
|
+
- lib/pickle/path/world.rb
|
33
|
+
- lib/pickle/path.rb
|
34
|
+
- lib/pickle/session/parser.rb
|
31
35
|
- lib/pickle/session.rb
|
32
36
|
- lib/pickle/version.rb
|
37
|
+
- lib/pickle/world.rb
|
33
38
|
- lib/pickle.rb
|
34
39
|
- rails_generators/pickle/pickle_generator.rb
|
35
40
|
- rails_generators/pickle/templates/env.rb
|
41
|
+
- rails_generators/pickle/templates/pickle_email_steps.rb
|
42
|
+
- rails_generators/pickle/templates/pickle_path_steps.rb
|
36
43
|
- rails_generators/pickle/templates/pickle_steps.rb
|
37
44
|
- License.txt
|
38
45
|
- README.textile
|
@@ -40,9 +47,11 @@ files:
|
|
40
47
|
- History.txt
|
41
48
|
- spec/lib/pickle_adapter_spec.rb
|
42
49
|
- spec/lib/pickle_config_spec.rb
|
43
|
-
- spec/lib/
|
50
|
+
- spec/lib/pickle_email_parser_spec.rb
|
51
|
+
- spec/lib/pickle_email_spec.rb
|
44
52
|
- spec/lib/pickle_parser_matchers_spec.rb
|
45
53
|
- spec/lib/pickle_parser_spec.rb
|
54
|
+
- spec/lib/pickle_path_spec.rb
|
46
55
|
- spec/lib/pickle_session_spec.rb
|
47
56
|
- spec/lib/pickle_spec.rb
|
48
57
|
has_rdoc: true
|
@@ -76,8 +85,10 @@ summary: Easy model creation and reference in your cucumber features
|
|
76
85
|
test_files:
|
77
86
|
- spec/lib/pickle_adapter_spec.rb
|
78
87
|
- spec/lib/pickle_config_spec.rb
|
79
|
-
- spec/lib/
|
88
|
+
- spec/lib/pickle_email_parser_spec.rb
|
89
|
+
- spec/lib/pickle_email_spec.rb
|
80
90
|
- spec/lib/pickle_parser_matchers_spec.rb
|
81
91
|
- spec/lib/pickle_parser_spec.rb
|
92
|
+
- spec/lib/pickle_path_spec.rb
|
82
93
|
- spec/lib/pickle_session_spec.rb
|
83
94
|
- spec/lib/pickle_spec.rb
|
data/lib/pickle/injector.rb
DELETED
@@ -1,18 +0,0 @@
|
|
1
|
-
module Pickle
|
2
|
-
module Injector
|
3
|
-
def self.inject(delegate_class, options = {})
|
4
|
-
target_class = options[:into] || raise('inject requires a target class specified with :into')
|
5
|
-
delegate_name = options[:name] || delegate_class.name.underscore.gsub('/','_')
|
6
|
-
init_delegate = options[:init] || lambda { new }
|
7
|
-
|
8
|
-
# create a session object on demand (in target)
|
9
|
-
target_class.send(:define_method, delegate_name) do
|
10
|
-
instance_variable_get("@#{delegate_name}") || instance_variable_set("@#{delegate_name}", delegate_class.instance_eval(&init_delegate))
|
11
|
-
end
|
12
|
-
|
13
|
-
# in the target, delegate the public instance methods of delegate_class to the delegate_name method
|
14
|
-
delegate_methods = delegate_class.public_instance_methods - Object.instance_methods
|
15
|
-
target_class.delegate *(delegate_methods + [{:to => delegate_name}])
|
16
|
-
end
|
17
|
-
end
|
18
|
-
end
|
@@ -1,22 +0,0 @@
|
|
1
|
-
require File.expand_path(File.join(File.dirname(__FILE__), '../spec_helper'))
|
2
|
-
|
3
|
-
describe Pickle::Injector do
|
4
|
-
describe ".inject Pickle::Session, :into => <a class>" do
|
5
|
-
before do
|
6
|
-
klass = Class.new
|
7
|
-
Pickle::Injector.inject Pickle::Session, :into => klass
|
8
|
-
@object = klass.new
|
9
|
-
end
|
10
|
-
|
11
|
-
it "object should respond_to Pickle:Session methods" do
|
12
|
-
@object.should respond_to(:model)
|
13
|
-
@object.should respond_to(:create_model)
|
14
|
-
@object.should respond_to(:find_model)
|
15
|
-
end
|
16
|
-
|
17
|
-
it "object.model (a pickle method) should call object.pickle_session.model" do
|
18
|
-
@object.pickle_session.should_receive(:model).with('a user')
|
19
|
-
@object.model('a user')
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|