Skip to content

Commit df246f4

Browse files
committed
add unit tests for valueClasses of MonoSignal class
1 parent ad2210e commit df246f4

File tree

1 file changed

+67
-0
lines changed

1 file changed

+67
-0
lines changed
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
import "../../../entry";
2+
3+
import { assert } from "chai";
4+
5+
import { MonoSignal } from "../../../../src/org/osflash/signals/MonoSignal";
6+
7+
describe("MonoSignalValueClassesTest", () => {
8+
9+
let signal: MonoSignal;
10+
11+
beforeEach(() => {
12+
signal = new MonoSignal(Number, String, Boolean);
13+
});
14+
15+
afterEach(() => {
16+
signal.removeAll();
17+
signal = null;
18+
});
19+
20+
it("get_value_classes_should_return_same_value_classes_used_in_constructor()", () => {
21+
assert.deepEqual(signal.valueClasses, [Number, String, Boolean]);
22+
});
23+
24+
it("set_value_classes_should_accept_only_class_objects()", () => {
25+
signal.valueClasses = [Number, String, Boolean];
26+
});
27+
28+
it("set_value_classes_throws_error_when_objects_are_passed()", () => {
29+
assert.throws(() => {
30+
signal.valueClasses = [0, "", false];
31+
}, Error);
32+
});
33+
34+
it("dispatch_less_value_objects_throws_error_when_number_of_arguments_are_less_than_number_of_value_classes_1()", () => {
35+
assert.throws(() => {
36+
signal.dispatch(0);
37+
}, Error);
38+
});
39+
40+
it("dispatch_less_value_objects_throws_error_when_number_of_arguments_are_less_than_number_of_value_classes_2()", () => {
41+
assert.throws(() => {
42+
signal.dispatch(0, "");
43+
}, Error);
44+
});
45+
46+
it("dispatch_value_object_with_different_type_throws_error_1()", () => {
47+
assert.throws(() => {
48+
signal.dispatch(0, 0, 0);
49+
}, Error);
50+
});
51+
52+
it("dispatch_value_object_with_different_type_throws_error_2()", () => {
53+
assert.throws(() => {
54+
signal.dispatch("", "", "");
55+
}, Error);
56+
});
57+
58+
it("dispatch_value_object_with_different_type_throws_error_3()", () => {
59+
assert.throws(() => {
60+
signal.dispatch(true, true, true);
61+
}, Error);
62+
});
63+
64+
it("dispatch_value_object_with_correct_type_just_works()", () => {
65+
signal.dispatch(0, "hello", true);
66+
});
67+
});

0 commit comments

Comments
 (0)