as3signals 0.7.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.
- data/CHANGELOG.textile +51 -0
- data/Gemfile +6 -0
- data/MIT-LICENSE.txt +22 -0
- data/README.textile +43 -0
- data/Rakefile +52 -0
- data/as3-signals.as3proj +87 -0
- data/as3-signals.docproj +9 -0
- data/as3signals.gemspec +24 -0
- data/build-asunit.properties +7 -0
- data/build-asunit.xml +34 -0
- data/build.properties +20 -0
- data/build.xml +53 -0
- data/lib/as3signals.rb +15 -0
- data/src/org/osflash/signals/DeluxeSignal.as +260 -0
- data/src/org/osflash/signals/IDeluxeSignal.as +34 -0
- data/src/org/osflash/signals/IDispatcher.as +15 -0
- data/src/org/osflash/signals/ISignal.as +44 -0
- data/src/org/osflash/signals/ISignalOwner.as +13 -0
- data/src/org/osflash/signals/Signal.as +206 -0
- data/src/org/osflash/signals/events/GenericEvent.as +44 -0
- data/src/org/osflash/signals/events/IBubbleEventHandler.as +14 -0
- data/src/org/osflash/signals/events/IEvent.as +27 -0
- data/src/org/osflash/signals/natives/INativeDispatcher.as +34 -0
- data/src/org/osflash/signals/natives/NativeMappedSignal.as +230 -0
- data/src/org/osflash/signals/natives/NativeRelaySignal.as +71 -0
- data/src/org/osflash/signals/natives/NativeSignal.as +176 -0
- data/tests/org/osflash/signals/AllTests.as +44 -0
- data/tests/org/osflash/signals/AllTestsRunner.as +19 -0
- data/tests/org/osflash/signals/AmbiguousRelationshipTest.as +60 -0
- data/tests/org/osflash/signals/DeluxeSignalAmbiguousRelationshipTest.as +60 -0
- data/tests/org/osflash/signals/DeluxeSignalDispatchExtraArgsTest.as +43 -0
- data/tests/org/osflash/signals/DeluxeSignalDispatchNoArgsTest.as +55 -0
- data/tests/org/osflash/signals/DeluxeSignalDispatchNonEventTest.as +67 -0
- data/tests/org/osflash/signals/DeluxeSignalSplitInterfacesTest.as +41 -0
- data/tests/org/osflash/signals/DeluxeSignalTest.as +134 -0
- data/tests/org/osflash/signals/DeluxeSignalWithBubblingEventTest.as +129 -0
- data/tests/org/osflash/signals/DeluxeSignalWithCustomEventTest.as +84 -0
- data/tests/org/osflash/signals/DeluxeSignalWithGenericEventTest.as +190 -0
- data/tests/org/osflash/signals/GenericEventTest.as +62 -0
- data/tests/org/osflash/signals/PriorityListenersTest.as +68 -0
- data/tests/org/osflash/signals/RedispatchedEventTest.as +51 -0
- data/tests/org/osflash/signals/SignalDispatchArgsTest.as +74 -0
- data/tests/org/osflash/signals/SignalDispatchNoArgsTest.as +55 -0
- data/tests/org/osflash/signals/SignalDispatchNonEventTest.as +81 -0
- data/tests/org/osflash/signals/SignalSplitInterfacesTest.as +47 -0
- data/tests/org/osflash/signals/SignalTest.as +267 -0
- data/tests/org/osflash/signals/SignalWithCustomEventTest.as +107 -0
- data/tests/org/osflash/signals/natives/AmbiguousRelationshipInNativeSignalTest.as +63 -0
- data/tests/org/osflash/signals/natives/NativeMappedSignalBoundaryUseTest.as +100 -0
- data/tests/org/osflash/signals/natives/NativeMappedSignalDefaultsTest.as +78 -0
- data/tests/org/osflash/signals/natives/NativeMappedSignalFunctionArgTest.as +148 -0
- data/tests/org/osflash/signals/natives/NativeMappedSignalFunctionNoArgsTest.as +95 -0
- data/tests/org/osflash/signals/natives/NativeMappedSignalObjectArgTest.as +85 -0
- data/tests/org/osflash/signals/natives/NativeRelaySignalTest.as +174 -0
- data/tests/org/osflash/signals/natives/NativeSignalTest.as +312 -0
- metadata +152 -0
@@ -0,0 +1,312 @@
|
|
1
|
+
package org.osflash.signals.natives
|
2
|
+
{
|
3
|
+
import asunit.asserts.*;
|
4
|
+
import asunit.framework.IAsync;
|
5
|
+
import flash.events.EventDispatcher;
|
6
|
+
|
7
|
+
import org.osflash.signals.IDeluxeSignal;
|
8
|
+
|
9
|
+
import flash.display.Sprite;
|
10
|
+
import flash.events.Event;
|
11
|
+
import flash.events.IEventDispatcher;
|
12
|
+
import flash.events.MouseEvent;
|
13
|
+
|
14
|
+
public class NativeSignalTest
|
15
|
+
{
|
16
|
+
[Inject]
|
17
|
+
public var async:IAsync;
|
18
|
+
|
19
|
+
private var clicked:NativeSignal;
|
20
|
+
private var sprite:IEventDispatcher;
|
21
|
+
|
22
|
+
[Before]
|
23
|
+
public function setUp():void
|
24
|
+
{
|
25
|
+
sprite = new Sprite();
|
26
|
+
clicked = new NativeSignal(sprite, 'click', MouseEvent);
|
27
|
+
}
|
28
|
+
|
29
|
+
[After]
|
30
|
+
public function tearDown():void
|
31
|
+
{
|
32
|
+
clicked.removeAll();
|
33
|
+
clicked = null;
|
34
|
+
}
|
35
|
+
|
36
|
+
protected function verifyNoListeners():void
|
37
|
+
{
|
38
|
+
assertFalse('the EventDispatcher should not have listeners for the event', sprite.hasEventListener('click'));
|
39
|
+
assertEquals('the NativeSignal should have no listeners', 0, clicked.numListeners);
|
40
|
+
}
|
41
|
+
//////
|
42
|
+
public function testInstantiated():void
|
43
|
+
{
|
44
|
+
assertTrue("NativeSignal instantiated", clicked is NativeSignal);
|
45
|
+
assertTrue('implements IDeluxeSignal', clicked is IDeluxeSignal);
|
46
|
+
assertTrue('implements INativeDispatcher', clicked is INativeDispatcher);
|
47
|
+
assertFalse('sprite has no click event listener to start', sprite.hasEventListener('click'));
|
48
|
+
assertSame('target round-trips through constructor', sprite, clicked.target);
|
49
|
+
}
|
50
|
+
//////
|
51
|
+
[Test]
|
52
|
+
public function signal_add_then_EventDispatcher_dispatch_should_call_signal_listener():void
|
53
|
+
{
|
54
|
+
clicked.add( async.add(onClicked) );
|
55
|
+
sprite.dispatchEvent(new MouseEvent('click'));
|
56
|
+
}
|
57
|
+
|
58
|
+
private function onClicked(e:MouseEvent):void
|
59
|
+
{
|
60
|
+
assertSame(sprite, e.currentTarget);
|
61
|
+
}
|
62
|
+
//////
|
63
|
+
[Test]
|
64
|
+
public function when_signal_adds_listener_then_target_should_have_listener():void
|
65
|
+
{
|
66
|
+
clicked.add(emptyHandler);
|
67
|
+
assertEquals(1, clicked.numListeners);
|
68
|
+
assertTrue(sprite.hasEventListener('click'));
|
69
|
+
}
|
70
|
+
|
71
|
+
private function emptyHandler(e:MouseEvent):void {}
|
72
|
+
|
73
|
+
[Test]
|
74
|
+
public function when_signal_adds_then_removes_listener_then_target_should_not_have_listeners():void
|
75
|
+
{
|
76
|
+
clicked.add(emptyHandler);
|
77
|
+
clicked.remove(emptyHandler);
|
78
|
+
verifyNoListeners();
|
79
|
+
}
|
80
|
+
|
81
|
+
[Test]
|
82
|
+
public function when_signal_removes_all_listeners_then_target_should_not_have_listeners():void
|
83
|
+
{
|
84
|
+
clicked.add(emptyHandler);
|
85
|
+
clicked.add( function(e:*):void {} );
|
86
|
+
clicked.removeAll();
|
87
|
+
verifyNoListeners();
|
88
|
+
}
|
89
|
+
|
90
|
+
[Test]
|
91
|
+
public function when_addOnce_and_removeAll_listeners_then_target_should_not_have_listeners():void
|
92
|
+
{
|
93
|
+
clicked.addOnce(emptyHandler);
|
94
|
+
clicked.addOnce( function(e:*):void {} );
|
95
|
+
clicked.removeAll();
|
96
|
+
verifyNoListeners();
|
97
|
+
}
|
98
|
+
//////
|
99
|
+
|
100
|
+
[Test]
|
101
|
+
public function add_listener_then_remove_function_not_in_listeners_should_do_nothing():void
|
102
|
+
{
|
103
|
+
clicked.add(newEmptyHandler());
|
104
|
+
clicked.remove(newEmptyHandler());
|
105
|
+
assertEquals(1, clicked.numListeners);
|
106
|
+
}
|
107
|
+
|
108
|
+
private function newEmptyHandler():Function
|
109
|
+
{
|
110
|
+
return function(e:*):void {};
|
111
|
+
}
|
112
|
+
|
113
|
+
//////
|
114
|
+
[Test]
|
115
|
+
public function addOnce_and_dispatch_from_signal_should_remove_listener_automatically():void
|
116
|
+
{
|
117
|
+
clicked.addOnce( async.add(emptyHandler) );
|
118
|
+
clicked.dispatch(new MouseEvent('click'));
|
119
|
+
verifyNoListeners();
|
120
|
+
}
|
121
|
+
//////
|
122
|
+
[Test]
|
123
|
+
public function addOnce_normal_priority_and_dispatch_from_EventDispatcher_should_remove_listener_automatically():void
|
124
|
+
{
|
125
|
+
var normalPriority:int = 0;
|
126
|
+
clicked.addOnceWithPriority( async.add(emptyHandler) , normalPriority);
|
127
|
+
sprite.dispatchEvent(new MouseEvent('click'));
|
128
|
+
verifyNoListeners();
|
129
|
+
}
|
130
|
+
//////
|
131
|
+
[Test]
|
132
|
+
public function addOnce_lowest_priority_and_dispatch_from_EventDispatcher_should_remove_listener_automatically():void
|
133
|
+
{
|
134
|
+
var lowestPriority:int = int.MIN_VALUE;
|
135
|
+
clicked.addOnceWithPriority( async.add(emptyHandler) , lowestPriority);
|
136
|
+
sprite.dispatchEvent(new MouseEvent('click'));
|
137
|
+
verifyNoListeners();
|
138
|
+
}
|
139
|
+
//////
|
140
|
+
[Test]
|
141
|
+
public function addOnce_highest_priority_and_dispatch_from_EventDispatcher_should_remove_listener_automatically():void
|
142
|
+
{
|
143
|
+
var highestPriority:int = int.MAX_VALUE;
|
144
|
+
clicked.addOnceWithPriority( async.add(emptyHandler) , highestPriority);
|
145
|
+
sprite.dispatchEvent(new MouseEvent('click'));
|
146
|
+
verifyNoListeners();
|
147
|
+
}
|
148
|
+
//////
|
149
|
+
[Test(expects="ArgumentError")]
|
150
|
+
public function adding_listener_without_args_should_throw_ArgumentError():void
|
151
|
+
{
|
152
|
+
clicked.add(function():void {});
|
153
|
+
}
|
154
|
+
|
155
|
+
[Test(expects="ArgumentError")]
|
156
|
+
public function adding_listener_with_two_args_should_throw_ArgumentError():void
|
157
|
+
{
|
158
|
+
clicked.add(function(a:*, b:*):void {});
|
159
|
+
}
|
160
|
+
|
161
|
+
[Test(expects="ArgumentError")]
|
162
|
+
public function dispatch_wrong_event_class_should_throw_ArgumentError():void
|
163
|
+
{
|
164
|
+
clicked.dispatch(new Event('click'));
|
165
|
+
}
|
166
|
+
|
167
|
+
[Test(expects="ArgumentError")]
|
168
|
+
public function dispatch_event_with_type_not_matching_signal_name_should_throw_ArgumentError():void
|
169
|
+
{
|
170
|
+
var wrongType:String = 'rollOver';
|
171
|
+
clicked.dispatch(new MouseEvent(wrongType));
|
172
|
+
}
|
173
|
+
|
174
|
+
[Test(expects="ArgumentError")]
|
175
|
+
public function dispatch_null_should_throw_ArgumentError():void
|
176
|
+
{
|
177
|
+
clicked.dispatch(null);
|
178
|
+
}
|
179
|
+
|
180
|
+
[Test]
|
181
|
+
public function eventClass_defaults_to_native_Event_class():void
|
182
|
+
{
|
183
|
+
var added:NativeSignal = new NativeSignal(sprite, Event.ADDED);
|
184
|
+
assertSame(Event, added.eventClass);
|
185
|
+
}
|
186
|
+
|
187
|
+
[Test]
|
188
|
+
public function eventClass_roundtrips_through_constructor():void
|
189
|
+
{
|
190
|
+
var clicked:NativeSignal = new NativeSignal(sprite, MouseEvent.CLICK, MouseEvent);
|
191
|
+
assertSame(MouseEvent, clicked.eventClass);
|
192
|
+
}
|
193
|
+
|
194
|
+
[Test]
|
195
|
+
public function valueClasses_contains_only_eventClass():void
|
196
|
+
{
|
197
|
+
var clicked:NativeSignal = new NativeSignal(sprite, MouseEvent.CLICK, MouseEvent);
|
198
|
+
assertEquals(1, clicked.valueClasses.length);
|
199
|
+
assertSame(MouseEvent, clicked.valueClasses[0]);
|
200
|
+
assertSame(clicked.eventClass, clicked.valueClasses[0]);
|
201
|
+
}
|
202
|
+
|
203
|
+
//////
|
204
|
+
// Captures Issue #5 - You can't addOnce to a signal from a function called by the same signal.
|
205
|
+
[Test]
|
206
|
+
public function addOnce_in_handler_and_dispatch_should_call_new_listener():void
|
207
|
+
{
|
208
|
+
clicked.addOnce( async.add(addOnceInHandler, 10) );
|
209
|
+
clicked.dispatch(new MouseEvent('click'));
|
210
|
+
}
|
211
|
+
|
212
|
+
protected function addOnceInHandler(e:MouseEvent):void
|
213
|
+
{
|
214
|
+
clicked.addOnce( async.add(secondAddOnceListener, 10) );
|
215
|
+
clicked.dispatch(new MouseEvent('click'));
|
216
|
+
}
|
217
|
+
|
218
|
+
protected function secondAddOnceListener(e:MouseEvent):void
|
219
|
+
{
|
220
|
+
}
|
221
|
+
|
222
|
+
//////
|
223
|
+
// Captures Issue #14
|
224
|
+
[Test]
|
225
|
+
public function addOnce_same_handler_in_handler_and_dispatch_should_call_it_again():void
|
226
|
+
{
|
227
|
+
assertEquals(0, clicked.numListeners);
|
228
|
+
|
229
|
+
clicked.addOnce( onClickAddOnceAgain );
|
230
|
+
|
231
|
+
assertEquals(1, clicked.numListeners);
|
232
|
+
|
233
|
+
clicked.dispatch(new MouseEvent('click'));
|
234
|
+
}
|
235
|
+
|
236
|
+
protected function onClickAddOnceAgain(e:MouseEvent):void
|
237
|
+
{
|
238
|
+
assertEquals(0, clicked.numListeners);
|
239
|
+
|
240
|
+
clicked.addOnce( onClickAddOnceAgain );
|
241
|
+
|
242
|
+
assertEquals(1, clicked.numListeners);
|
243
|
+
}
|
244
|
+
|
245
|
+
|
246
|
+
//////
|
247
|
+
[Test]
|
248
|
+
public function can_use_anonymous_listeners():void
|
249
|
+
{
|
250
|
+
var listeners:Array = [];
|
251
|
+
|
252
|
+
for ( var i:int = 0; i < 100; i++ )
|
253
|
+
{
|
254
|
+
listeners.push(clicked.add(function(e:MouseEvent):void{}));
|
255
|
+
}
|
256
|
+
|
257
|
+
assertTrue("there should be 100 listeners", clicked.numListeners == 100);
|
258
|
+
|
259
|
+
for each( var fnt:Function in listeners )
|
260
|
+
{
|
261
|
+
clicked.remove(fnt);
|
262
|
+
}
|
263
|
+
assertTrue("all anonymous listeners removed", clicked.numListeners == 0);
|
264
|
+
}
|
265
|
+
|
266
|
+
//////
|
267
|
+
[Test]
|
268
|
+
public function can_use_anonymous_listeners_in_addOnce():void
|
269
|
+
{
|
270
|
+
var listeners:Array = [];
|
271
|
+
|
272
|
+
for ( var i:int = 0; i < 100; i++ )
|
273
|
+
{
|
274
|
+
listeners.push(clicked.addOnce(function(e:MouseEvent):void{}));
|
275
|
+
}
|
276
|
+
|
277
|
+
assertTrue("there should be 100 listeners", clicked.numListeners == 100);
|
278
|
+
|
279
|
+
for each( var fnt:Function in listeners )
|
280
|
+
{
|
281
|
+
clicked.remove(fnt);
|
282
|
+
}
|
283
|
+
assertTrue("all anonymous listeners removed", clicked.numListeners == 0);
|
284
|
+
}
|
285
|
+
|
286
|
+
//////
|
287
|
+
[Test]
|
288
|
+
public function removed_listener_should_be_returned():void
|
289
|
+
{
|
290
|
+
var listener:Function = clicked.add(function(e:MouseEvent):void{});
|
291
|
+
|
292
|
+
assertTrue("Listener is returned", listener == clicked.remove(listener));
|
293
|
+
}
|
294
|
+
////// Captures Issue #24
|
295
|
+
[Test]
|
296
|
+
public function setting_target_to_a_different_object_should_remove_all_listeners_from_1st_target():void
|
297
|
+
{
|
298
|
+
clicked.add(emptyHandler);
|
299
|
+
clicked.target = new EventDispatcher();
|
300
|
+
assertFalse(sprite.hasEventListener('click'));
|
301
|
+
}
|
302
|
+
//////
|
303
|
+
[Test]
|
304
|
+
public function setting_target_to_the_same_object_should_not_remove_listeners():void
|
305
|
+
{
|
306
|
+
clicked.add(emptyHandler);
|
307
|
+
var numListenersBefore:uint = clicked.numListeners;
|
308
|
+
clicked.target = sprite;
|
309
|
+
assertEquals(numListenersBefore, clicked.numListeners);
|
310
|
+
}
|
311
|
+
}
|
312
|
+
}
|
metadata
ADDED
@@ -0,0 +1,152 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: as3signals
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
hash: 3
|
5
|
+
prerelease: false
|
6
|
+
segments:
|
7
|
+
- 0
|
8
|
+
- 7
|
9
|
+
- 0
|
10
|
+
version: 0.7.0
|
11
|
+
platform: ruby
|
12
|
+
authors: []
|
13
|
+
|
14
|
+
autorequire:
|
15
|
+
bindir: bin
|
16
|
+
cert_chain: []
|
17
|
+
|
18
|
+
date: 2010-10-09 00:00:00 -07:00
|
19
|
+
default_executable:
|
20
|
+
dependencies:
|
21
|
+
- !ruby/object:Gem::Dependency
|
22
|
+
name: sprout
|
23
|
+
prerelease: false
|
24
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ">="
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
hash: 961915964
|
30
|
+
segments:
|
31
|
+
- 1
|
32
|
+
- 0
|
33
|
+
- 26
|
34
|
+
- pre
|
35
|
+
version: 1.0.26.pre
|
36
|
+
type: :runtime
|
37
|
+
version_requirements: *id001
|
38
|
+
- !ruby/object:Gem::Dependency
|
39
|
+
name: asunit4
|
40
|
+
prerelease: false
|
41
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
42
|
+
none: false
|
43
|
+
requirements:
|
44
|
+
- - ">="
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
hash: 3
|
47
|
+
segments:
|
48
|
+
- 0
|
49
|
+
version: "0"
|
50
|
+
type: :development
|
51
|
+
version_requirements: *id002
|
52
|
+
description:
|
53
|
+
email:
|
54
|
+
- amoslanka@gmail.com
|
55
|
+
executables: []
|
56
|
+
|
57
|
+
extensions: []
|
58
|
+
|
59
|
+
extra_rdoc_files: []
|
60
|
+
|
61
|
+
files:
|
62
|
+
- lib/as3signals.rb
|
63
|
+
- src/org/osflash/signals/DeluxeSignal.as
|
64
|
+
- src/org/osflash/signals/events/GenericEvent.as
|
65
|
+
- src/org/osflash/signals/events/IBubbleEventHandler.as
|
66
|
+
- src/org/osflash/signals/events/IEvent.as
|
67
|
+
- src/org/osflash/signals/IDeluxeSignal.as
|
68
|
+
- src/org/osflash/signals/IDispatcher.as
|
69
|
+
- src/org/osflash/signals/ISignal.as
|
70
|
+
- src/org/osflash/signals/ISignalOwner.as
|
71
|
+
- src/org/osflash/signals/natives/INativeDispatcher.as
|
72
|
+
- src/org/osflash/signals/natives/NativeMappedSignal.as
|
73
|
+
- src/org/osflash/signals/natives/NativeRelaySignal.as
|
74
|
+
- src/org/osflash/signals/natives/NativeSignal.as
|
75
|
+
- src/org/osflash/signals/Signal.as
|
76
|
+
- as3-signals.as3proj
|
77
|
+
- as3-signals.docproj
|
78
|
+
- as3signals.gemspec
|
79
|
+
- build-asunit.properties
|
80
|
+
- build-asunit.xml
|
81
|
+
- build.properties
|
82
|
+
- build.xml
|
83
|
+
- CHANGELOG.textile
|
84
|
+
- Gemfile
|
85
|
+
- MIT-LICENSE.txt
|
86
|
+
- Rakefile
|
87
|
+
- README.textile
|
88
|
+
- tests/org/osflash/signals/AllTests.as
|
89
|
+
- tests/org/osflash/signals/AllTestsRunner.as
|
90
|
+
- tests/org/osflash/signals/AmbiguousRelationshipTest.as
|
91
|
+
- tests/org/osflash/signals/DeluxeSignalAmbiguousRelationshipTest.as
|
92
|
+
- tests/org/osflash/signals/DeluxeSignalDispatchExtraArgsTest.as
|
93
|
+
- tests/org/osflash/signals/DeluxeSignalDispatchNoArgsTest.as
|
94
|
+
- tests/org/osflash/signals/DeluxeSignalDispatchNonEventTest.as
|
95
|
+
- tests/org/osflash/signals/DeluxeSignalSplitInterfacesTest.as
|
96
|
+
- tests/org/osflash/signals/DeluxeSignalTest.as
|
97
|
+
- tests/org/osflash/signals/DeluxeSignalWithBubblingEventTest.as
|
98
|
+
- tests/org/osflash/signals/DeluxeSignalWithCustomEventTest.as
|
99
|
+
- tests/org/osflash/signals/DeluxeSignalWithGenericEventTest.as
|
100
|
+
- tests/org/osflash/signals/GenericEventTest.as
|
101
|
+
- tests/org/osflash/signals/natives/AmbiguousRelationshipInNativeSignalTest.as
|
102
|
+
- tests/org/osflash/signals/natives/NativeMappedSignalBoundaryUseTest.as
|
103
|
+
- tests/org/osflash/signals/natives/NativeMappedSignalDefaultsTest.as
|
104
|
+
- tests/org/osflash/signals/natives/NativeMappedSignalFunctionArgTest.as
|
105
|
+
- tests/org/osflash/signals/natives/NativeMappedSignalFunctionNoArgsTest.as
|
106
|
+
- tests/org/osflash/signals/natives/NativeMappedSignalObjectArgTest.as
|
107
|
+
- tests/org/osflash/signals/natives/NativeRelaySignalTest.as
|
108
|
+
- tests/org/osflash/signals/natives/NativeSignalTest.as
|
109
|
+
- tests/org/osflash/signals/PriorityListenersTest.as
|
110
|
+
- tests/org/osflash/signals/RedispatchedEventTest.as
|
111
|
+
- tests/org/osflash/signals/SignalDispatchArgsTest.as
|
112
|
+
- tests/org/osflash/signals/SignalDispatchNoArgsTest.as
|
113
|
+
- tests/org/osflash/signals/SignalDispatchNonEventTest.as
|
114
|
+
- tests/org/osflash/signals/SignalSplitInterfacesTest.as
|
115
|
+
- tests/org/osflash/signals/SignalTest.as
|
116
|
+
- tests/org/osflash/signals/SignalWithCustomEventTest.as
|
117
|
+
has_rdoc: true
|
118
|
+
homepage: http://www.github.com/amoslanka/sprout-as3-signals
|
119
|
+
licenses: []
|
120
|
+
|
121
|
+
post_install_message:
|
122
|
+
rdoc_options: []
|
123
|
+
|
124
|
+
require_paths:
|
125
|
+
- lib
|
126
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
127
|
+
none: false
|
128
|
+
requirements:
|
129
|
+
- - ">="
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
hash: 3
|
132
|
+
segments:
|
133
|
+
- 0
|
134
|
+
version: "0"
|
135
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
136
|
+
none: false
|
137
|
+
requirements:
|
138
|
+
- - ">="
|
139
|
+
- !ruby/object:Gem::Version
|
140
|
+
hash: 3
|
141
|
+
segments:
|
142
|
+
- 0
|
143
|
+
version: "0"
|
144
|
+
requirements: []
|
145
|
+
|
146
|
+
rubyforge_project:
|
147
|
+
rubygems_version: 1.3.7
|
148
|
+
signing_key:
|
149
|
+
specification_version: 3
|
150
|
+
summary: AS3-Signals ActionScript 3 source wrapped in a Sprout::Specification for implementation into a sprout project and Gem::Specification for distribution as a gem.
|
151
|
+
test_files: []
|
152
|
+
|