Shorty 0.2.1 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -37,19 +37,19 @@ Usage: Ruby
37
37
 
38
38
  You can also use lambdas or a code block:
39
39
 
40
- add :start, lambda { `service ssh restart` }
41
- before :start, :run, lambda { puts 're-starting ssh' }
42
- after :start, :run, lambda { puts 'finished re-starting ssh' }
43
-
44
- add :stop do
40
+ add :start, lambda { `service ssh restart` }
41
+
42
+ add :stop do
45
43
  `service ssh stop`
46
44
  end
47
45
 
48
- run :start
49
-
50
- # equivalent to...
51
- run :start, :run
46
+ before :start, :call, lambda { puts 're-starting ssh' }
52
47
 
48
+ after :stop, :call do
49
+ puts 'ssh stopped'
50
+ end
51
+
52
+ run :start, :call
53
53
  # --> "lambda { `service ssh restart` }.call" is called.
54
54
 
55
55
  Shorty is implemented [in just one file](https://github.com/da99/Shorty/blob/master/lib/Shorty.rb)
data/lib/Shorty.rb CHANGED
@@ -60,19 +60,14 @@ class Shorty
60
60
  }
61
61
  end
62
62
 
63
- def run name, action = nil
63
+ def run name, action
64
64
 
65
65
  r = shortys[name]
66
66
  raise ArgumentError, "#{name.inspect} not found" unless r
67
- action ||= :run
68
67
 
69
68
  run_hooks befores, name, action, r
70
69
 
71
- result = if r.is_a?(Proc) && action == :run
72
- r.call
73
- else
74
- r.send action
75
- end
70
+ result = r.send(action)
76
71
 
77
72
  run_hooks afters, name, action, r
78
73
 
@@ -1,3 +1,3 @@
1
1
  class Shorty
2
- VERSION = "0.2.1"
2
+ VERSION = "0.3.0"
3
3
  end
data/spec/files/uptime.rb CHANGED
@@ -1,12 +1,12 @@
1
1
 
2
2
  add :uptime, lambda { puts 'uptime' }
3
3
 
4
- before :uptime, :run do
4
+ before :uptime, :call do
5
5
  puts "starting uptime"
6
6
  end
7
7
 
8
- after :uptime, :run do
8
+ after :uptime, :call do
9
9
  puts "finished uptime"
10
10
  end
11
11
 
12
- run :uptime
12
+ run :uptime, :call
data/spec/tests/DSL.rb CHANGED
@@ -6,7 +6,7 @@ describe "Shorty DSL" do
6
6
  it "adds Shorty functionality" do
7
7
  a = nil
8
8
  add :ssh, lambda { a = :a}
9
- run :ssh
9
+ run :ssh, :call
10
10
  a.should == :a
11
11
  end
12
12
 
data/spec/tests/Shorty.rb CHANGED
@@ -48,42 +48,49 @@ describe "Shorty :run" do
48
48
  @s.add :my_box, My_Box
49
49
  }
50
50
 
51
- it "sets default action to :run" do
52
- @s.run(:my_box)
53
- .should == "My_Box run"
54
- end
55
-
56
51
  it "runs target action" do
57
52
  @s.run(:my_box, :custom)
58
53
  .should == "My_Box custom"
59
54
  end
60
55
 
61
- end # === Shorty run
62
-
63
-
64
- describe "Shorty before" do
65
-
66
- it "runs before hooks before run" do
56
+ it "runs before hooks" do
67
57
  s = Shorty.new
68
58
  t = []
69
59
  s.add :test, lambda { t << :t }
70
- s.before :test, :run do
60
+ s.before :test, :call do
71
61
  t << :b
72
62
  end
73
63
 
74
- s.run :test
64
+ s.run :test, :call
75
65
  t.should == [:b, :t]
76
66
  end
77
67
 
68
+ it "runs after hooks" do
69
+ s = Shorty.new
70
+ t = []
71
+ s.add :test, lambda { t << :t }
72
+ s.after :test, :call do
73
+ t << :a
74
+ end
75
+
76
+ s.run :test, :call
77
+ t.should == [:t, :a]
78
+ end
79
+
80
+ end # === Shorty run
81
+
82
+
83
+ describe "Shorty before" do
84
+
78
85
  it "accepts a block" do
79
86
  s = Shorty.new
80
87
  t = []
81
88
  s.add :test, lambda { t << :t }
82
- s.before :test, :run do
89
+ s.before :test, :call do
83
90
  t << :b
84
91
  end
85
92
 
86
- s.run :test
93
+ s.run :test, :call
87
94
  t.should == [:b, :t]
88
95
  end
89
96
 
@@ -91,11 +98,11 @@ describe "Shorty before" do
91
98
  s = Shorty.new
92
99
  t = []
93
100
  s.add :test, lambda { t << :t }
94
- s.before :test, :run, lambda {
101
+ s.before :test, :call, lambda {
95
102
  t << :b
96
103
  }
97
104
 
98
- s.run :test
105
+ s.run :test, :call
99
106
  t.should == [:b, :t]
100
107
  end
101
108
 
@@ -104,7 +111,7 @@ describe "Shorty before" do
104
111
  s.add :test, lambda {}
105
112
  lambda {
106
113
  l = lambda {}
107
- s.before(:test, :run, l) {}
114
+ s.before(:test, :call, l) {}
108
115
  }.should.raise(ArgumentError)
109
116
  .message.should.match %r!lambda and block both given!
110
117
  end
@@ -114,27 +121,15 @@ end # === Shorty before
114
121
 
115
122
  describe "Shorty after" do
116
123
 
117
- it "runs after hooks after run" do
118
- s = Shorty.new
119
- t = []
120
- s.add :test, lambda { t << :t }
121
- s.after :test, :run do
122
- t << :a
123
- end
124
-
125
- s.run :test
126
- t.should == [:t, :a]
127
- end
128
-
129
124
  it "accepts a block" do
130
125
  s = Shorty.new
131
126
  t = []
132
127
  s.add :test, lambda { t << :t }
133
- s.after :test, :run do
128
+ s.after :test, :call do
134
129
  t << :a
135
130
  end
136
131
 
137
- s.run :test
132
+ s.run :test, :call
138
133
  t.should == [:t, :a]
139
134
  end
140
135
 
@@ -142,11 +137,11 @@ describe "Shorty after" do
142
137
  s = Shorty.new
143
138
  t = []
144
139
  s.add :test, lambda { t << :t }
145
- s.after :test, :run, lambda {
140
+ s.after :test, :call, lambda {
146
141
  t << :a
147
142
  }
148
143
 
149
- s.run :test
144
+ s.run :test, :call
150
145
  t.should == [:t, :a]
151
146
  end
152
147
 
@@ -155,7 +150,7 @@ describe "Shorty after" do
155
150
  s.add :test, lambda {}
156
151
  lambda {
157
152
  l = lambda {}
158
- s.after(:test, :run, l) {}
153
+ s.after(:test, :call, l) {}
159
154
  }.should.raise(ArgumentError)
160
155
  .message.should.match %r!lambda and block both given!
161
156
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: Shorty
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.3.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors: