فهرست منبع

Use converse.emit to dispatch call button event

Pete Nicholls 11 سال پیش
والد
کامیت
6002e0fdf9
2فایلهای تغییر یافته به همراه4 افزوده شده و 13 حذف شده
  1. 1 1
      converse.js
  2. 3 12
      spec/chatbox.js

+ 1 - 1
converse.js

@@ -1171,7 +1171,7 @@
             toggleCall: function (ev) {
                 ev.stopPropagation();
 
-                $('#conversejs').trigger('converse:callButtonClicked', {
+                converse.emit('onCallButtonClicked', {
                     connection: converse.connection
                 });
             },

+ 3 - 12
spec/chatbox.js

@@ -197,6 +197,8 @@
                 }, converse));
 
                 it("contains a button for starting a call", $.proxy(function () {
+                    spyOn(converse, 'emit');
+
                     var contact_jid = mock.cur_names[2].replace(' ','.').toLowerCase() + '@localhost';
                     utils.openChatBoxFor(contact_jid);
                     var chatbox = this.chatboxes.get(contact_jid);
@@ -206,20 +208,9 @@
 
                     expect(callButton.length).toBe(1);
 
-                    var callEventTriggered = false;
-
-                    $(document).on('converse:callButtonClicked', function() {
-                        callEventTriggered = true;
-                    });
-
                     runs(function () {
                         callButton.click();
-                    });
-
-                    waits(50);
-
-                    runs(function () {
-                        expect(callEventTriggered).toBe(true);
+                        expect(converse.emit).toHaveBeenCalledWith('onCallButtonClicked', jasmine.any(Object));
                     });
                 }, converse));
             }, converse));