signal tests
This commit is contained in:
+75
-3
@@ -1,6 +1,6 @@
|
|||||||
package ;
|
package ;
|
||||||
|
|
||||||
import bindx.Bind;
|
import bindx.BindSignal;
|
||||||
import buddy.*;
|
import buddy.*;
|
||||||
|
|
||||||
using buddy.Should;
|
using buddy.Should;
|
||||||
@@ -10,8 +10,80 @@ class SignalTest extends BuddySuite {
|
|||||||
public function new() {
|
public function new() {
|
||||||
super();
|
super();
|
||||||
|
|
||||||
describe("BindSignal functionality tests", {
|
describe("FieldSignal functionality tests", {
|
||||||
it("signals should dispatch data");
|
|
||||||
|
var fs:FieldSignal<String>;
|
||||||
|
var callNum:Int;
|
||||||
|
|
||||||
|
before({
|
||||||
|
fs = new FieldSignal<String>();
|
||||||
|
callNum = 0;
|
||||||
|
});
|
||||||
|
|
||||||
|
it("signal listeners should listen signal", {
|
||||||
|
var f = "1";
|
||||||
|
var t = "2";
|
||||||
|
function listener(from:String, to:String) {
|
||||||
|
from.should.be(f);
|
||||||
|
to.should.be(t);
|
||||||
|
callNum ++;
|
||||||
|
fs.remove(listener);
|
||||||
|
};
|
||||||
|
var listener2 = function (from:String, to:String) {
|
||||||
|
from.should.be(f);
|
||||||
|
to.should.be(t);
|
||||||
|
callNum ++;
|
||||||
|
};
|
||||||
|
fs.add(listener);
|
||||||
|
fs.add(listener);
|
||||||
|
fs.add(listener2);
|
||||||
|
|
||||||
|
fs.dispatch(f, t); // listener self-remove
|
||||||
|
callNum.should.be(2);
|
||||||
|
|
||||||
|
fs.dispatch(f, t);
|
||||||
|
callNum.should.be(3);
|
||||||
|
|
||||||
|
fs.removeAll();
|
||||||
|
fs.dispatch(t, f);
|
||||||
|
callNum.should.be(3);
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
describe("MethodSignal functionality tests", {
|
||||||
|
|
||||||
|
var ms:MethodSignal;
|
||||||
|
var callNum:Int;
|
||||||
|
|
||||||
|
before({
|
||||||
|
ms = new MethodSignal();
|
||||||
|
callNum = 0;
|
||||||
|
});
|
||||||
|
|
||||||
|
it("signal listeners should listen signal", {
|
||||||
|
function listener() {
|
||||||
|
callNum ++;
|
||||||
|
ms.remove(listener);
|
||||||
|
};
|
||||||
|
var listener2 = function () {
|
||||||
|
callNum ++;
|
||||||
|
};
|
||||||
|
ms.add(listener);
|
||||||
|
ms.add(listener);
|
||||||
|
ms.add(listener2);
|
||||||
|
|
||||||
|
ms.dispatch(); // listener self-remove
|
||||||
|
callNum.should.be(2);
|
||||||
|
|
||||||
|
ms.dispatch();
|
||||||
|
callNum.should.be(3);
|
||||||
|
|
||||||
|
ms.removeAll();
|
||||||
|
ms.dispatch();
|
||||||
|
callNum.should.be(3);
|
||||||
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user