Prechádzať zdrojové kódy

Merge remote-tracking branch 'origin/master'

Weblate 7 rokov pred
rodič
commit
6a851b5d86
3 zmenil súbory, kde vykonal 47 pridanie a 29 odobranie
  1. 43 16
      spec/chatbox.js
  2. 3 3
      src/converse-chatview.js
  3. 1 10
      src/converse-mam.js

+ 43 - 16
spec/chatbox.js

@@ -20,6 +20,29 @@
     return describe("Chatboxes", function() {
         describe("A Chatbox", function () {
 
+            it("has a /help command to show the available commands",
+                mock.initConverseWithPromises(
+                    null, ['rosterGroupsFetched'], {},
+                    function (done, _converse) {
+
+                test_utils.createContacts(_converse, 'current');
+                test_utils.openControlBox();
+                test_utils.openContactsPanel(_converse);
+
+                var contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                test_utils.openChatBoxFor(_converse, contact_jid);
+                var view = _converse.chatboxviews.get(contact_jid);
+                test_utils.sendMessage(view, '/help');
+
+                const info_messages = Array.prototype.slice.call(view.el.querySelectorAll('.chat-info:not(.chat-date)'), 0);
+                expect(info_messages.length).toBe(3);
+                expect(info_messages.pop().textContent).toBe('/help: Show this menu');
+                expect(info_messages.pop().textContent).toBe('/me: Write in the third person');
+                expect(info_messages.pop().textContent).toBe('/clear: Remove messages');
+                done();
+            }));
+
+
             it("supports the /me command",
                 mock.initConverseWithPromises(
                     null, ['rosterGroupsFetched'], {},
@@ -938,6 +961,7 @@
                         null, ['rosterGroupsFetched'], {},
                         function (done, _converse) {
 
+
                     test_utils.createContacts(_converse, 'current');
                     test_utils.openControlBox();
                     test_utils.openContactsPanel(_converse);
@@ -953,17 +977,17 @@
                         var sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
 
                         /*  <message id='aeb213' to='juliet@capulet.lit/chamber'>
-                            *    <forwarded xmlns='urn:xmpp:forward:0'>
-                            *      <delay xmlns='urn:xmpp:delay' stamp='2010-07-10T23:08:25Z'/>
-                            *      <message xmlns='jabber:client'
-                            *          to='juliet@capulet.lit/balcony'
-                            *          from='romeo@montague.lit/orchard'
-                            *          type='chat'>
-                            *          <body>Call me but love, and I'll be new baptized; Henceforth I never will be Romeo.</body>
-                            *      </message>
-                            *    </forwarded>
-                            *  </message>
-                            */
+                         *    <forwarded xmlns='urn:xmpp:forward:0'>
+                         *      <delay xmlns='urn:xmpp:delay' stamp='2010-07-10T23:08:25Z'/>
+                         *      <message xmlns='jabber:client'
+                         *          to='juliet@capulet.lit/balcony'
+                         *          from='romeo@montague.lit/orchard'
+                         *          type='chat'>
+                         *          <body>Call me but love, and I'll be new baptized; Henceforth I never will be Romeo.</body>
+                         *      </message>
+                         *    </forwarded>
+                         *  </message>
+                         */
                         msg = $msg({'id': 'aeb213', 'to': _converse.bare_jid})
                             .c('forwarded', {'xmlns': 'urn:xmpp:forward:0'})
                                 .c('delay', {'xmlns': 'urn:xmpp:delay', 'stamp':'2018-01-02T13:08:25Z'}).up()
@@ -978,7 +1002,7 @@
 
                         msg = $msg({'id': 'aeb214', 'to': _converse.bare_jid})
                             .c('forwarded', {'xmlns': 'urn:xmpp:forward:0'})
-                                .c('delay', {'xmlns': 'urn:xmpp:delay', 'stamp':'2017-12-31T23:08:25Z'}).up()
+                                .c('delay', {'xmlns': 'urn:xmpp:delay', 'stamp':'2017-12-31T22:08:25Z'}).up()
                                 .c('message', {
                                     'xmlns': 'jabber:client',
                                     'to': _converse.bare_jid,
@@ -1026,7 +1050,7 @@
 
                         msg = $msg({'id': 'aeb218', 'to': _converse.bare_jid})
                             .c('forwarded', {'xmlns': 'urn:xmpp:forward:0'})
-                                .c('delay', {'xmlns': 'urn:xmpp:delay', 'stamp':'2018-01-02T23:28:23Z'}).up()
+                                .c('delay', {'xmlns': 'urn:xmpp:delay', 'stamp':'2018-01-02T22:28:23Z'}).up()
                                 .c('message', {
                                     'xmlns': 'jabber:client',
                                     'to': _converse.bare_jid,
@@ -1067,14 +1091,16 @@
                         var $time = $chat_content.find('time');
                         expect($time.length).toEqual(4);
                         $time = $chat_content.find('time:first');
-                        expect($time.data('isodate')).toEqual('2017-12-31T00:00:00+00:00');
+                        expect($time.data('isodate')).toEqual(moment('2017-12-31T00:00:00').format());
+                        expect($time.text()).toEqual('Sunday Dec 31st 2017')
 
                         expect($time[0].nextElementSibling.querySelector('.chat-msg-content').textContent).toBe('Older message');
                         var $el = $chat_content.find('.chat-message:first').find('.chat-msg-content')
                         expect($el.text()).toEqual('Older message');
 
                         $time = $chat_content.find('time:eq(1)');
-                        expect($time.data('isodate')).toEqual('2018-01-01T00:00:00+00:00');
+                        expect($time.data('isodate')).toEqual(moment('2018-01-01T00:00:00').format());
+                        expect($time.text()).toEqual("Monday Jan 1st 2018");
                         expect($time[0].nextElementSibling.querySelector('.chat-msg-content').textContent).toBe('Inbetween message');
                         $el = $chat_content.find('.chat-message:eq(1)');
                         expect($el.find('.chat-msg-content').text()).toEqual('Inbetween message');
@@ -1083,7 +1109,8 @@
                         expect($el.find('.chat-msg-content').text()).toEqual('another inbetween message');
 
                         $time = $chat_content.find('time:nth(2)');
-                        expect($time.data('isodate')).toEqual('2018-01-02T00:00:00+00:00');
+                        expect($time.data('isodate')).toEqual(moment('2018-01-02T00:00:00').format());
+                        expect($time.text()).toEqual("Tuesday Jan 2nd 2018");
                         expect($time[0].nextElementSibling.querySelector('.chat-msg-content').textContent).toBe('An earlier message on the next day');
                         $el = $chat_content.find('.chat-message:eq(3)');
                         expect($el.find('.chat-msg-content').text()).toEqual('An earlier message on the next day');

+ 3 - 3
src/converse-chatview.js

@@ -738,9 +738,9 @@
                         }
                         else if (match[1] === "help") {
                             const msgs = [
-                                `<strong>/help</strong>:${__('Show this menu')}`,
-                                `<strong>/me</strong>:${__('Write in the third person')}`,
-                                `<strong>/clear</strong>:${__('Remove messages')}`
+                                `<strong>/clear</strong>: ${__('Remove messages')}`,
+                                `<strong>/me</strong>: ${__('Write in the third person')}`,
+                                `<strong>/help</strong>: ${__('Show this menu')}`
                                 ];
                             this.showHelpMessages(msgs);
                             return;

+ 1 - 10
src/converse-mam.js

@@ -73,7 +73,6 @@
                      */
                     if (this.disable_mam) { return; }
                     const { _converse } = this.__super__;
-                    this.addSpinner(true);
                     _converse.api.disco.supports(Strophe.NS.MAM, _converse.bare_jid).then(
                         (result) => { // Success
                             if (result.supported) {
@@ -92,12 +91,9 @@
                                         });
                                     }
                                 }
-                            } else {
-                                this.clearSpinner();
                             }
                         },
                         () => { // Error
-                            this.clearSpinner();
                             _converse.log(
                                 "Error or timeout while checking for MAM support",
                                 Strophe.LogLevel.ERROR
@@ -115,19 +111,14 @@
                         return;
                     }
                     const { _converse } = this.__super__;
-                    this.addSpinner();
-
                     _converse.api.disco.supports(Strophe.NS.MAM, _converse.bare_jid).then(
                         (result) => { // Success
                             if (result.supported) {
                                 this.fetchArchivedMessages();
-                            } else {
-                                this.clearSpinner();
                             }
                             this.model.save({'mam_initialized': true});
                         },
                         () => { // Error
-                            this.clearSpinner();
                             _converse.log(
                                 "Error or timeout while checking for MAM support",
                                 Strophe.LogLevel.ERROR
@@ -253,9 +244,9 @@
                      * Then, upon receiving them, call onChatRoomMessage
                      * so that they are displayed inside it.
                      */
-                    this.addSpinner();
                     const that = this;
                     const { _converse } = this.__super__;
+                    this.addSpinner();
                     _converse.api.archive.query(
                         _.extend({
                             'groupchat': true,