triton 0.0.2 → 0.0.3

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/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- triton (0.0.1)
4
+ triton (0.0.3)
5
5
 
6
6
  GEM
7
7
  remote: http://rubygems.org/
@@ -33,7 +33,8 @@ module Triton
33
33
  end
34
34
 
35
35
  # Unregister the given block. It won't be call then went an event is emitted.
36
- def remove_listener(type, listener)
36
+ def remove_listener(listener)
37
+ type = listener.type
37
38
  if listeners.has_key? type
38
39
  listeners[type].delete(listener)
39
40
  listeners.delete(type) if listeners[type].empty?
@@ -93,7 +94,7 @@ module Triton
93
94
  @callback.call(sender, *args)
94
95
 
95
96
  if @once
96
- Messenger::remove_listener(@type, self)
97
+ Messenger::remove_listener(self)
97
98
  end
98
99
  end
99
100
  end
@@ -1,3 +1,3 @@
1
1
  module Triton
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
@@ -43,15 +43,7 @@ describe Triton::Messenger do
43
43
  ok = false
44
44
  listener = Triton::Messenger.on(:test) { fail "it should not have been called" }
45
45
  Triton::Messenger.on(:test) { ok = true }
46
- Triton::Messenger.remove_listener(:test, listener)
47
- Triton::Messenger.emit(:test)
48
- ok.must_equal true
49
- end
50
-
51
- it "should not unregister listeners of unknown type" do
52
- ok = false
53
- listener = Triton::Messenger.on(:test) { ok = true }
54
- Triton::Messenger.remove_listener(:unknown, listener)
46
+ Triton::Messenger.remove_listener(listener)
55
47
  Triton::Messenger.emit(:test)
56
48
  ok.must_equal true
57
49
  end
@@ -59,7 +51,7 @@ describe Triton::Messenger do
59
51
  it "should not unregister unknown listeners" do
60
52
  ok = false
61
53
  Triton::Messenger.on(:test) { ok = true }
62
- Triton::Messenger.remove_listener(:test, Triton::Messenger::Listener.new(:test, nil))
54
+ Triton::Messenger.remove_listener(Triton::Messenger::Listener.new(:test, nil))
63
55
  Triton::Messenger.emit(:test)
64
56
  ok.must_equal true
65
57
  end
@@ -129,9 +121,9 @@ describe Triton::Messenger::Listener do
129
121
  end
130
122
 
131
123
  it "unregisters itself once the event fired" do
132
- event = Triton::Messenger::Listener.new(:test, lambda { |s| }, true)
133
- Triton::Messenger.expects(:remove_listener).with(:test, event)
134
- event.fire
124
+ listener = Triton::Messenger::Listener.new(:test, lambda { |s| }, true)
125
+ Triton::Messenger.expects(:remove_listener).with(listener)
126
+ listener.fire
135
127
  end
136
128
  end
137
129
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: triton
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2011-11-02 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: minitest
16
- requirement: &14248700 !ruby/object:Gem::Requirement
16
+ requirement: &10592980 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 2.7.0
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *14248700
24
+ version_requirements: *10592980
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: mocha
27
- requirement: &14248200 !ruby/object:Gem::Requirement
27
+ requirement: &10592440 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 0.10.0
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *14248200
35
+ version_requirements: *10592440
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: bundler
38
- requirement: &14247740 !ruby/object:Gem::Requirement
38
+ requirement: &10591980 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,7 +43,7 @@ dependencies:
43
43
  version: '1.0'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *14247740
46
+ version_requirements: *10591980
47
47
  description: Triton is an implementation of the event/listener pattern like EventEmitter
48
48
  on Node.js
49
49
  email: cedric.darne@gmail.com