summaryrefslogtreecommitdiffstats
path: root/install/ui/test/ipa_tests.js
diff options
context:
space:
mode:
Diffstat (limited to 'install/ui/test/ipa_tests.js')
-rw-r--r--install/ui/test/ipa_tests.js32
1 files changed, 32 insertions, 0 deletions
diff --git a/install/ui/test/ipa_tests.js b/install/ui/test/ipa_tests.js
index 079b022b3..0a4d657f8 100644
--- a/install/ui/test/ipa_tests.js
+++ b/install/ui/test/ipa_tests.js
@@ -312,3 +312,35 @@ test("Testing unsuccessful IPA.command().", function() {
$.ajax = orig;
});
+
+test("Testing observer.", function() {
+ expect(6);
+ var obj = {};
+ var param1_value = 'p1';
+ var param2_value = 'p2';
+
+ obj.event = IPA.observer();
+
+ obj.event.attach(function(param1, param2) {
+ ok(true, "Proper function 1 callback");
+ });
+
+ var first = true;
+
+ var func = function(param1, param2) {
+ if(first) {
+ ok(true, "Proper function 2 callback");
+ equals(param1, param1_value, "Testing Parameter 1");
+ equals(param2, param2_value, "Testing Parameter 2");
+ equals(this, obj, "Testing Context");
+ first = false;
+ } else {
+ ok(false, "Fail function 2 callback");
+ }
+ }
+
+ obj.event.attach(func);
+ obj.event.notify([param1_value, param2_value], obj);
+ obj.event.detach(func);
+ obj.event.notify([param1_value, param2_value], obj);
+});