microevent 1.0.2 → 1.1.0
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +7 -0
- data/lib/microevent.rb +3 -5
- data/spec/microevent_spec.rb +24 -8
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ac30af2eb689ccc6201226879572337d52c9f688
|
4
|
+
data.tar.gz: f05995920b3c89d921477fb26eb08114cdcad381
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 11bd4332a8beda1045a8bf2cebc7dcd4f66c9bcb4e37a3ddcd0115141235f35086300cb015cc2753cc388564015c526f252ac2fc3ea8290f7ca31cb926c5c6d9
|
7
|
+
data.tar.gz: 9604ad8913e1447872d6e3137cf070dd8b06bdf3ea154f308159be2e2bca973fe3ff15de0f0293ff8d4aae62ef86d2ef229e8a9da56f8c702caf1edfc30df715
|
data/CHANGELOG.md
CHANGED
data/lib/microevent.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
module MicroEvent
|
2
|
-
VERSION = "1.0
|
2
|
+
VERSION = "1.1.0".freeze
|
3
3
|
|
4
4
|
def bind(event, &fn)
|
5
5
|
@_ ||= Hash.new{ |h,k| h[k] = [] }
|
@@ -7,12 +7,10 @@ module MicroEvent
|
|
7
7
|
end
|
8
8
|
|
9
9
|
def unbind(event, &fn)
|
10
|
-
@_
|
11
|
-
fn ? @_[event].delete(fn) : @_.delete(event) || []
|
10
|
+
fn ? @_ && @_[event].delete(fn) : @_ && @_.delete(event) || []
|
12
11
|
end
|
13
12
|
|
14
13
|
def trigger(event, *args)
|
15
|
-
|
16
|
-
!@_[event].dup.each{ |fn| instance_exec(*args, &fn) }.empty?
|
14
|
+
!!@_ && !@_[event].dup.each{ |fn| instance_exec(*args, &fn) }.empty?
|
17
15
|
end
|
18
16
|
end
|
data/spec/microevent_spec.rb
CHANGED
@@ -139,14 +139,6 @@ describe MicroEvent do
|
|
139
139
|
assert_equal [23], result
|
140
140
|
end
|
141
141
|
|
142
|
-
it "will do nothing if there is nothing to remove" do
|
143
|
-
result = []
|
144
|
-
|
145
|
-
object.unbind :slot
|
146
|
-
|
147
|
-
assert_equal [], result
|
148
|
-
end
|
149
|
-
|
150
142
|
it "returns deleted callbacks" do
|
151
143
|
fn = proc{}
|
152
144
|
object.bind :slot, &fn
|
@@ -156,6 +148,14 @@ describe MicroEvent do
|
|
156
148
|
end
|
157
149
|
|
158
150
|
it "will return nil if nothing is removed" do
|
151
|
+
fn = proc{}
|
152
|
+
object.bind :another_slot, &fn
|
153
|
+
result = object.unbind :slot, &fn
|
154
|
+
|
155
|
+
assert_equal nil, result
|
156
|
+
end
|
157
|
+
|
158
|
+
it "will return nil if no callback is registered at all" do
|
159
159
|
fn = proc{}
|
160
160
|
result = object.unbind :slot, &fn
|
161
161
|
|
@@ -186,6 +186,14 @@ describe MicroEvent do
|
|
186
186
|
end
|
187
187
|
|
188
188
|
it 'will return emtpy array if no block is given and no callback deleted' do
|
189
|
+
fn = proc{}
|
190
|
+
object.bind :another_slot, &fn
|
191
|
+
result = object.unbind :slot
|
192
|
+
|
193
|
+
assert_equal [], result
|
194
|
+
end
|
195
|
+
|
196
|
+
it 'will return emtpy array if no block is given and no callback is registered at all' do
|
189
197
|
result = object.unbind :slot
|
190
198
|
|
191
199
|
assert_equal [], result
|
@@ -210,6 +218,14 @@ describe MicroEvent do
|
|
210
218
|
end
|
211
219
|
|
212
220
|
it "will return false if there is no callback listening" do
|
221
|
+
fn = proc{}
|
222
|
+
object.bind :other_slot, &fn
|
223
|
+
result = object.trigger :slot
|
224
|
+
|
225
|
+
assert_equal false, result
|
226
|
+
end
|
227
|
+
|
228
|
+
it "will return false if there is no callback at all registered" do
|
213
229
|
result = object.trigger :slot
|
214
230
|
|
215
231
|
assert_equal false, result
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: microevent
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0
|
4
|
+
version: 1.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jan Lelis
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-03-
|
11
|
+
date: 2015-03-14 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: MicroEvent.rb is a event emitter library which provides the observer
|
14
14
|
pattern to Ruby objects. It is inspired by MicroEvent.js and implemented in less
|