more tests

This commit is contained in:
Dima Granetchi
2014-11-13 14:26:53 +02:00
parent f2b9057cd5
commit 60cbdf0e6a
3 changed files with 73 additions and 19 deletions
+25 -12
View File
@@ -21,7 +21,7 @@ class BaseTest extends BuddySuite {
callNum = 0; callNum = 0;
}); });
it ("bindx should bind/unbind properties (lazySignal=true)", { it ("bindx should bind/unbind fields (lazySignal=true)", {
var strFrom = b.str = "a"; var strFrom = b.str = "a";
var callNum2 = 0; var callNum2 = 0;
@@ -51,7 +51,7 @@ class BaseTest extends BuddySuite {
callNum2.should.be(1); callNum2.should.be(1);
}); });
it ("bindx should bind/unbind properties (lazySignal=false)", { it ("bindx should bind/unbind fields (lazySignal=false)", {
var strFrom = b.str2 = "a"; var strFrom = b.str2 = "a";
var callNum2 = 0; var callNum2 = 0;
@@ -137,6 +137,9 @@ class BaseTest extends BuddySuite {
callNum2.should.be(1); callNum2.should.be(1);
}); });
it("bindx should bind 2 objects (lazySignal=true)");
it("bindx should bind 2 objects (lazySignal=false)");
it("bindx should bind and notify methods (lazySignal=true)", { it("bindx should bind and notify methods (lazySignal=true)", {
var listener = function () callNum++; var listener = function () callNum++;
bind(b.bind, listener); bind(b.bind, listener);
@@ -217,16 +220,21 @@ class BaseTest extends BuddySuite {
it("bindx should unbind all bindings (signal exists) (lazySignal=true/false)", { it("bindx should unbind all bindings (signal exists) (lazySignal=true/false)", {
bind(b.str, function (_, _) callNum++); // create binding signal bind(b.str, function (_, _) callNum++); // create binding signal
bind(b.str2, function (_, _) callNum++); // create binding signal bind(b.str2, function (_, _) callNum++);
bind(b.bind, function () callNum++); bind(b.bind, function () callNum++);
bind(b.bind2, function () callNum++); bind(b.bind2, function () callNum++);
Bind.unbindAll(b); Bind.unbindAll(b);
b.str = b.str + "1"; try {
b.str2 = b.str2 + "1"; b.str = b.str + "1";
Bind.notify(b.bind); b.str2 = b.str2 + "1";
Bind.notify(b.bind2); Bind.notify(b.bind);
Bind.notify(b.bind2);
}
catch (e:Dynamic) {
fail();
}
callNum.should.be(0); callNum.should.be(0);
}); });
@@ -234,12 +242,17 @@ class BaseTest extends BuddySuite {
it("bindx should unbind all bindings (signal expected) (lazySignal=true/false)", { it("bindx should unbind all bindings (signal expected) (lazySignal=true/false)", {
Bind.unbindAll(b); Bind.unbindAll(b);
b.str = b.str + "1"; try {
b.str2 = b.str2 + "1"; b.str = b.str + "1";
Bind.notify(b.bind); b.str2 = b.str2 + "1";
Bind.notify(b.bind2); Bind.notify(b.bind);
Bind.notify(b.bind2);
}
catch (e:Dynamic) {
fail();
}
callNum.should.be(0); true.should.be(true);
}); });
}); });
} }
+18
View File
@@ -0,0 +1,18 @@
package ;
import bindx.Bind;
import bindx.Bind.bind in bind;
import buddy.*;
using buddy.Should;
class SignalTest extends BuddySuite {
public function new() {
super();
describe("BindSignal functionality tests", {
it("signals should dispatch data");
});
}
}
+30 -7
View File
@@ -1,13 +1,24 @@
package ; package ;
import bindx.Bind; import bindx.Bind;
import bindx.Bind.bind in bind;
import buddy.*;
class TestProperty extends haxe.unit.TestCase { using buddy.Should;
class TestProperty extends BuddySuite {
public function new() { public function new() {
super(); super();
describe("Bindx modify field setter", {
it("bindx should bind/unbind fields with setter (lazySignal=true)");
it("bindx should bind/unbind fields with setter (lazySignal=false)");
it("bindx should bind 2 objects (custom setter) (lazySignal=true)");
it("bindx should bind 2 objects (custom setter) (lazySignal=false)");
});
} }
function test1() { /*function test1() {
var p = new BindableProperty(); var p = new BindableProperty();
p.s = "1"; p.s = "1";
var callNum = 0; var callNum = 0;
@@ -40,20 +51,32 @@ class TestProperty extends haxe.unit.TestCase {
p.s = "123"; p.s = "123";
assertEquals(t.a, p.s); assertEquals(t.a, p.s);
} }
*/
} }
class BindableProperty implements bindx.IBindable { class BindableProperty implements bindx.IBindable {
public function new() { public function new() {
} }
@:bindable @:bindable(lazySignal=true)
public var s(default, set):String; public var str(default, set):String;
function set_s(v) { function set_str(v) {
if (v == null) { if (v == null) {
return s = ""; return str = "";
} }
s = v; str = v;
return v;
}
@:bindable(lazySignal=false)
public var str2(default, set):String;
function set_str2(v) {
if (v == null) {
return str2 = "";
}
str2 = v;
return v; return v;
} }
} }