Browse Source

Use shakespearean character names in tests

JC Brand 6 years ago
parent
commit
737e27c726

+ 8 - 8
mockup/mockup.js

@@ -13,15 +13,15 @@
             });
 
             it("Show a chat room", function () {
-                test_utils.openChatRoom('lounge', 'localhost', 'dummy');
-                var view = converse.chatboxviews.get('lounge@localhost');
+                test_utils.openChatRoom('lounge', 'mongague.lit', 'romeo');
+                var view = converse.chatboxviews.get('lounge@mongague.lit');
                 if (!view.$el.find('.chat-area').length) { view.renderChatArea(); }
                 var text = 'This is a sent message';
                 view.$el.find('.chat-textarea').text(text);
                 view.$el.find('textarea.chat-textarea').trigger($.Event('keypress', {keyCode: 13}));
                 var message = $msg({
-                    from: 'lounge@localhost/dummy',
-                    to: 'dummy@localhost.com',
+                    from: 'lounge@mongague.lit/romeo',
+                    to: 'romeo@mongague.lit.com',
                     type: 'groupchat',
                     id: view.model.messages.at(0).get('msgid')
                 }).c('body').t(text);
@@ -30,9 +30,9 @@
                 var nick = mock.chatroom_names[0];
                 text = 'This is a received message';
                 message = $msg({
-                    from: 'lounge@localhost/'+nick,
+                    from: 'lounge@mongague.lit/'+nick,
                     id: '1',
-                    to: 'dummy@localhost',
+                    to: 'romeo@mongague.lit',
                     type: 'groupchat'
                 }).c('body').t(text);
                 view.onChatRoomMessage(message.nodeTree);
@@ -49,7 +49,7 @@
                         $msg({
                             'type': 'headline',
                             'from': 'notify.example.com',
-                            'to': 'dummy@localhost',
+                            'to': 'romeo@mongague.lit',
                             'xml:lang': 'en'
                         })
                         .c('subject').t('MAIL').up()
@@ -59,7 +59,7 @@
             });
 
             xit("Show a private chat box", function () {
-                var contact_jid = mock.cur_names[2].replace(/ /g,'.').toLowerCase() + '@localhost';
+                var contact_jid = mock.cur_names[2].replace(/ /g,'.').toLowerCase() + '@mongague.lit';
                 var chatbox = test_utils.openChatBoxFor(contact_jid);
                 var view = converse.chatboxviews.get(contact_jid);
                 var message = 'This message is sent from this chatbox';

+ 21 - 21
spec/autocomplete.js

@@ -20,19 +20,19 @@
                 null, ['rosterGroupsFetched'], {},
                     async function (done, _converse) {
 
-            await test_utils.openAndEnterChatRoom(_converse, 'lounge', 'localhost', 'tom');
-            const view = _converse.chatboxviews.get('lounge@localhost');
+            await test_utils.openAndEnterChatRoom(_converse, 'lounge', 'montague.lit', 'tom');
+            const view = _converse.chatboxviews.get('lounge@montague.lit');
 
             ['dick', 'harry'].forEach((nick) => {
                 _converse.connection._dataRecv(test_utils.createRequest(
                     $pres({
-                        'to': 'tom@localhost/resource',
-                        'from': `lounge@localhost/${nick}`
+                        'to': 'tom@montague.lit/resource',
+                        'from': `lounge@montague.lit/${nick}`
                     })
                     .c('x', {xmlns: Strophe.NS.MUC_USER})
                     .c('item', {
                         'affiliation': 'none',
-                        'jid': `${nick}@localhost/resource`,
+                        'jid': `${nick}@montague.lit/resource`,
                         'role': 'participant'
                     })));
             });
@@ -62,17 +62,17 @@
                 null, ['rosterGroupsFetched'], {},
                     async function (done, _converse) {
 
-            await test_utils.openAndEnterChatRoom(_converse, 'lounge', 'localhost', 'dummy');
-            const view = _converse.chatboxviews.get('lounge@localhost');
+            await test_utils.openAndEnterChatRoom(_converse, 'lounge', 'montague.lit', 'romeo');
+            const view = _converse.chatboxviews.get('lounge@montague.lit');
             expect(view.model.occupants.length).toBe(1);
             let presence = $pres({
-                    'to': 'dummy@localhost/resource',
-                    'from': 'lounge@localhost/some1'
+                    'to': 'romeo@montague.lit/orchard',
+                    'from': 'lounge@montague.lit/some1'
                 })
                 .c('x', {xmlns: Strophe.NS.MUC_USER})
                 .c('item', {
                     'affiliation': 'none',
-                    'jid': 'some1@localhost/resource',
+                    'jid': 'some1@montague.lit/resource',
                     'role': 'participant'
                 });
             _converse.connection._dataRecv(test_utils.createRequest(presence));
@@ -109,13 +109,13 @@
             expect(view.el.querySelector('.suggestion-box__results').hidden).toBeTruthy();
 
             presence = $pres({
-                    'to': 'dummy@localhost/resource',
-                    'from': 'lounge@localhost/some2'
+                    'to': 'romeo@montague.lit/orchard',
+                    'from': 'lounge@montague.lit/some2'
                 })
                 .c('x', {xmlns: Strophe.NS.MUC_USER})
                 .c('item', {
                     'affiliation': 'none',
-                    'jid': 'some2@localhost/resource',
+                    'jid': 'some2@montague.lit/resource',
                     'role': 'participant'
                 });
             _converse.connection._dataRecv(test_utils.createRequest(presence));
@@ -148,13 +148,13 @@
 
             // Test that pressing tab twice selects
             presence = $pres({
-                    'to': 'dummy@localhost/resource',
-                    'from': 'lounge@localhost/z3r0'
+                    'to': 'romeo@montague.lit/orchard',
+                    'from': 'lounge@montague.lit/z3r0'
                 })
                 .c('x', {xmlns: Strophe.NS.MUC_USER})
                 .c('item', {
                     'affiliation': 'none',
-                    'jid': 'z3r0@localhost/resource',
+                    'jid': 'z3r0@montague.lit/resource',
                     'role': 'participant'
                 });
             _converse.connection._dataRecv(test_utils.createRequest(presence));
@@ -173,17 +173,17 @@
                 null, ['rosterGroupsFetched'], {},
                     async function (done, _converse) {
 
-            await test_utils.openAndEnterChatRoom(_converse, 'lounge', 'localhost', 'dummy');
-            const view = _converse.chatboxviews.get('lounge@localhost');
+            await test_utils.openAndEnterChatRoom(_converse, 'lounge', 'montague.lit', 'romeo');
+            const view = _converse.chatboxviews.get('lounge@montague.lit');
             expect(view.model.occupants.length).toBe(1);
             const presence = $pres({
-                    'to': 'dummy@localhost/resource',
-                    'from': 'lounge@localhost/some1'
+                    'to': 'romeo@montague.lit/orchard',
+                    'from': 'lounge@montague.lit/some1'
                 })
                 .c('x', {xmlns: Strophe.NS.MUC_USER})
                 .c('item', {
                     'affiliation': 'none',
-                    'jid': 'some1@localhost/resource',
+                    'jid': 'some1@montague.lit/resource',
                     'role': 'participant'
                 });
             _converse.connection._dataRecv(test_utils.createRequest(presence));

+ 10 - 10
spec/bookmarks.js

@@ -96,7 +96,7 @@
 
             await test_utils.waitUntil(() => sent_stanza);
             expect(sent_stanza.toLocaleString()).toBe(
-                `<iq from="dummy@localhost/resource" id="${IQ_id}" type="set" xmlns="jabber:client">`+
+                `<iq from="romeo@montague.lit/orchard" id="${IQ_id}" type="set" xmlns="jabber:client">`+
                     `<pubsub xmlns="http://jabber.org/protocol/pubsub">`+
                         `<publish node="storage:bookmarks">`+
                             `<item id="current">`+
@@ -154,7 +154,7 @@
                 ['http://jabber.org/protocol/pubsub#publish-options']
             );
             await test_utils.waitUntil(() => _converse.bookmarks);
-            let jid = 'lounge@localhost';
+            let jid = 'lounge@montague.lit';
             _converse.bookmarks.create({
                 'jid': jid,
                 'autojoin': false,
@@ -222,8 +222,8 @@
                     [{'category': 'pubsub', 'type': 'pep'}],
                     ['http://jabber.org/protocol/pubsub#publish-options']
                 );
-                await _converse.api.rooms.open(`lounge@localhost`);
-                const view = _converse.chatboxviews.get('lounge@localhost');
+                await _converse.api.rooms.open(`lounge@montague.lit`);
+                const view = _converse.chatboxviews.get('lounge@montague.lit');
                 let bookmark_icon = await test_utils.waitUntil(() => view.el.querySelector('.toggle-bookmark'));
                 expect(_.includes(bookmark_icon.classList, 'button-on')).toBeFalsy();
                 _converse.bookmarks.create({
@@ -289,7 +289,7 @@
                 // conferences to bookmark (since we removed the one and
                 // only bookmark).
                 expect(sent_stanza.toLocaleString()).toBe(
-                    `<iq from="dummy@localhost/resource" id="${IQ_id}" type="set" xmlns="jabber:client">`+
+                    `<iq from="romeo@montague.lit/orchard" id="${IQ_id}" type="set" xmlns="jabber:client">`+
                         `<pubsub xmlns="http://jabber.org/protocol/pubsub">`+
                             `<publish node="storage:bookmarks">`+
                                 `<item id="current">`+
@@ -389,8 +389,8 @@
              * </message>
              */
             var stanza = $msg({
-                'from': 'dummy@localhost',
-                'to': 'dummy@localhost/resource',
+                'from': 'romeo@montague.lit',
+                'to': 'romeo@montague.lit/orchard',
                 'type': 'headline',
                 'id': 'rnfoo1'
             }).c('event', {'xmlns': 'http://jabber.org/protocol/pubsub#event'})
@@ -445,7 +445,7 @@
             );
 
             expect(Strophe.serialize(call.args[0])).toBe(
-                `<iq from="dummy@localhost/resource" id="${IQ_id}" type="get" xmlns="jabber:client">`+
+                `<iq from="romeo@montague.lit/orchard" id="${IQ_id}" type="get" xmlns="jabber:client">`+
                 '<pubsub xmlns="http://jabber.org/protocol/pubsub">'+
                     '<items node="storage:bookmarks"/>'+
                 '</pubsub>'+
@@ -528,7 +528,7 @@
                     ).pop()
                 );
                 expect(Strophe.serialize(call.args[0])).toBe(
-                    `<iq from="dummy@localhost/resource" id="${IQ_id}" type="get" xmlns="jabber:client">`+
+                    `<iq from="romeo@montague.lit/orchard" id="${IQ_id}" type="get" xmlns="jabber:client">`+
                     '<pubsub xmlns="http://jabber.org/protocol/pubsub">'+
                         '<items node="storage:bookmarks"/>'+
                     '</pubsub>'+
@@ -616,7 +616,7 @@
                     ).pop()
                 );
                 expect(Strophe.serialize(call.args[0])).toBe(
-                    `<iq from="dummy@localhost/resource" id="${IQ_id}" type="get" xmlns="jabber:client">`+
+                    `<iq from="romeo@montague.lit/orchard" id="${IQ_id}" type="get" xmlns="jabber:client">`+
                     '<pubsub xmlns="http://jabber.org/protocol/pubsub">'+
                         '<items node="storage:bookmarks"/>'+
                     '</pubsub>'+

+ 57 - 57
spec/chatbox.js

@@ -25,7 +25,7 @@
                 await test_utils.waitForRoster(_converse, 'current', 1);
                 test_utils.openControlBox();
 
-                const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 await test_utils.openChatBoxFor(_converse, contact_jid);
                 const view = _converse.chatboxviews.get(contact_jid);
                 test_utils.sendMessage(view, '/help');
@@ -55,11 +55,11 @@
                     async function (done, _converse) {
 
                 await test_utils.waitForRoster(_converse, 'current');
-                await test_utils.waitUntilDiscoConfirmed(_converse, 'localhost', [], ['vcard-temp']);
+                await test_utils.waitUntilDiscoConfirmed(_converse, 'montague.lit', [], ['vcard-temp']);
                 await test_utils.waitUntil(() => _converse.xmppstatus.vcard.get('fullname'));
                 await test_utils.openControlBox();
                 expect(_converse.chatboxes.length).toEqual(1);
-                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 let message = '/me is tired';
                 const msg = $msg({
                         from: sender_jid,
@@ -73,12 +73,12 @@
                 const view = _converse.chatboxviews.get(sender_jid);
                 await new Promise((resolve, reject) => view.once('messageInserted', resolve));
                 expect(view.el.querySelectorAll('.chat-msg--action').length).toBe(1);
-                expect(_.includes(view.el.querySelector('.chat-msg__author').textContent, '**Max Frankfurter')).toBeTruthy();
+                expect(_.includes(view.el.querySelector('.chat-msg__author').textContent, '**Mercutio')).toBeTruthy();
                 expect(view.el.querySelector('.chat-msg__text').textContent).toBe('is tired');
                 message = '/me is as well';
                 await test_utils.sendMessage(view, message);
                 expect(view.el.querySelectorAll('.chat-msg--action').length).toBe(2);
-                await test_utils.waitUntil(() => sizzle('.chat-msg__author:last', view.el).pop().textContent.trim() === '**Max Mustermann');
+                await test_utils.waitUntil(() => sizzle('.chat-msg__author:last', view.el).pop().textContent.trim() === '**Romeo Montague');
                 const last_el = sizzle('.chat-msg__text:last', view.el).pop();
                 expect(last_el.textContent).toBe('is as well');
                 expect(u.hasClass('chat-msg--followup', last_el)).toBe(false);
@@ -115,7 +115,7 @@
                 const online_contacts = _converse.rosterview.el.querySelectorAll('.roster-group .current-xmpp-contact a.open-chat');
                 expect(online_contacts.length).toBe(15);
                 let el = online_contacts[0];
-                const jid = el.textContent.trim().replace(/ /g,'.').toLowerCase() + '@localhost';
+                const jid = el.textContent.trim().replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 el.click();
                 await test_utils.waitUntil(() => _converse.chatboxes.length == 2);
                 const chatboxview = _converse.chatboxviews.get(jid);
@@ -126,7 +126,7 @@
                 online_contacts[1].click();
                 await test_utils.waitUntil(() => _converse.chatboxes.length == 3);
                 el = online_contacts[1];
-                const new_jid = el.textContent.trim().replace(/ /g,'.').toLowerCase() + '@localhost';
+                const new_jid = el.textContent.trim().replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 const new_chatboxview = _converse.chatboxviews.get(new_jid);
                 expect(_converse.chatboxviews.trimChats).toHaveBeenCalled();
                 // Check that new chat boxes are created to the left of the
@@ -140,11 +140,11 @@
                 async function (done, _converse) {
 
                 _converse.api.trigger('rosterContactsFetched');
-                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 const stanza = u.toStanza(`
                     <message from="${sender_jid}"
                              type="chat"
-                             to="dummy@localhost/resource">
+                             to="romeo@montague.lit/orchard">
                         <body>Hey\nHave you heard the news?</body>
                     </message>`);
 
@@ -161,11 +161,11 @@
                 async function (done, _converse) {
 
                 await test_utils.waitForRoster(_converse, 'current', 1);
-                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 const stanza = u.toStanza(`
                     <message from="${sender_jid}"
                              type="chat"
-                             to="dummy@localhost/resource">
+                             to="romeo@montague.lit/orchard">
                         <composing xmlns="http://jabber.org/protocol/chatstates"/>
                     </message>`);
                 const message_promise = new Promise(resolve => _converse.api.listen.on('message', resolve))
@@ -209,7 +209,7 @@
 
                 for (i=0; i<online_contacts.length; i++) {
                     const el = online_contacts[i];
-                    jid = _.trim(el.textContent.trim()).replace(/ /g,'.').toLowerCase() + '@localhost';
+                    jid = _.trim(el.textContent.trim()).replace(/ /g,'.').toLowerCase() + '@montague.lit';
                     chatboxview = _converse.chatboxviews.get(jid);
                     spyOn(chatboxview, 'minimize').and.callThrough();
                     chatboxview.model.set({'minimized': true});
@@ -237,7 +237,7 @@
                     async function (done, _converse) {
 
                 await test_utils.waitForRoster(_converse, 'current');
-                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 const chat = await _converse.api.chats.create(sender_jid, {'minimized': true});
                 await test_utils.waitUntil(() => _converse.chatboxes.length > 1);
                 const chatBoxView = _converse.chatboxviews.get(sender_jid);
@@ -257,14 +257,14 @@
                 await test_utils.waitForRoster(_converse, 'current');
                 test_utils.openControlBox();
 
-                const contact_jid = mock.cur_names[2].replace(/ /g,'.').toLowerCase() + '@localhost';
+                const contact_jid = mock.cur_names[2].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 // openControlBox was called earlier, so the controlbox is
                 // visible, but no other chat boxes have been created.
                 expect(_converse.chatboxes.length).toEqual(1);
 
                 const view = await test_utils.openChatBoxFor(_converse, contact_jid);
                 const el = sizzle('a.open-chat:contains("'+view.model.getDisplayName()+'")', _converse.rosterview.el).pop();
-                const jid = el.textContent.replace(/ /g,'.').toLowerCase() + '@localhost';
+                const jid = el.textContent.replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 spyOn(_converse.api, "trigger");
                 el.click();
                 await test_utils.waitUntil(() => _converse.api.trigger.calls.count(), 500);
@@ -317,7 +317,7 @@
                 await test_utils.waitForRoster(_converse, 'current');
                 test_utils.openControlBox();
 
-                const contact_jid = mock.cur_names[7].replace(/ /g,'.').toLowerCase() + '@localhost';
+                const contact_jid = mock.cur_names[7].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 await test_utils.waitUntil(() => _converse.rosterview.el.querySelectorAll('.roster-group').length);
                 await test_utils.openChatBoxFor(_converse, contact_jid);
                 const controlview = _converse.chatboxviews.get('controlbox'), // The controlbox is currently open
@@ -352,7 +352,7 @@
                 await test_utils.waitForRoster(_converse, 'current');
                 test_utils.openControlBox();
 
-                const contact_jid = mock.cur_names[7].replace(/ /g,'.').toLowerCase() + '@localhost';
+                const contact_jid = mock.cur_names[7].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 await test_utils.waitUntil(() => _converse.rosterview.el.querySelectorAll('.roster-group').length);
                 await test_utils.openChatBoxFor(_converse, contact_jid);
                 const trimmed_chatboxes = _converse.minimized_chats;
@@ -433,7 +433,7 @@
 
                     await test_utils.waitForRoster(_converse, 'current', 3);
                     test_utils.openControlBox();
-                    const contact_jid = mock.cur_names[2].replace(/ /g,'.').toLowerCase() + '@localhost';
+                    const contact_jid = mock.cur_names[2].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                     await test_utils.openChatBoxFor(_converse, contact_jid);
                     const chatbox = _converse.chatboxes.get(contact_jid);
                     const view = _converse.chatboxviews.get(contact_jid);
@@ -453,7 +453,7 @@
                     await test_utils.waitForRoster(_converse, 'current');
                     test_utils.openControlBox();
 
-                    const contact_jid = mock.cur_names[2].replace(/ /g,'.').toLowerCase() + '@localhost';
+                    const contact_jid = mock.cur_names[2].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                     await test_utils.openChatBoxFor(_converse, contact_jid);
                     const view = _converse.chatboxviews.get(contact_jid);
                     const toolbar = view.el.querySelector('ul.chat-toolbar');
@@ -484,7 +484,7 @@
                     test_utils.openControlBox();
 
                     let toolbar, call_button;
-                    const contact_jid = mock.cur_names[2].replace(/ /g,'.').toLowerCase() + '@localhost';
+                    const contact_jid = mock.cur_names[2].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                     spyOn(_converse.api, "trigger");
                     // First check that the button doesn't show if it's not enabled
                     // via "visible_toolbar_buttons"
@@ -518,12 +518,12 @@
                     await test_utils.waitForRoster(_converse, 'current');
                     test_utils.openControlBox();
 
-                    const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                    const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                     await test_utils.openChatBoxFor(_converse, sender_jid);
                     let stanza = u.toStanza(
                         `<message from="${sender_jid}"
                                  type="chat"
-                                 to="dummy@localhost/resource">
+                                 to="romeo@montague.lit/orchard">
                             <composing xmlns="http://jabber.org/protocol/chatstates"/>
                             <no-store xmlns="urn:xmpp:hints"/>
                             <no-permanent-store xmlns="urn:xmpp:hints"/>
@@ -533,7 +533,7 @@
                     stanza = u.toStanza(
                         `<message from="${sender_jid}"
                                  type="chat"
-                                 to="dummy@localhost/resource">
+                                 to="romeo@montague.lit/orchard">
                             <paused xmlns="http://jabber.org/protocol/chatstates"/>
                             <no-store xmlns="urn:xmpp:hints"/>
                             <no-permanent-store xmlns="urn:xmpp:hints"/>
@@ -551,7 +551,7 @@
                     test_utils.openControlBox();
 
                     spyOn(_converse.api, "trigger");
-                    const sender_jid = mock.cur_names[1].replace(/ /g,'.').toLowerCase() + '@localhost';
+                    const sender_jid = mock.cur_names[1].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                     // <composing> state
                     const msg = $msg({
                             'from': sender_jid,
@@ -573,7 +573,7 @@
                             async function (done, _converse) {
 
                         await test_utils.waitForRoster(_converse, 'current');
-                        const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                        const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                         test_utils.openControlBox();
                         test_utils.waitUntil(() => _converse.rosterview.el.querySelectorAll('.roster-group').length);
                         spyOn(_converse.connection, 'send');
@@ -596,7 +596,7 @@
 
                         await test_utils.waitForRoster(_converse, 'current', 1);
                         test_utils.openControlBox();
-                        const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                        const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
 
                         await test_utils.waitUntil(() => _converse.rosterview.el.querySelectorAll('.roster-group').length);
                         await test_utils.openChatBoxFor(_converse, contact_jid);
@@ -630,7 +630,7 @@
 
                         await test_utils.waitForRoster(_converse, 'current');
                         test_utils.openControlBox();
-                        const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                        const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
 
                         await test_utils.waitUntil(() => _converse.rosterview.el.querySelectorAll('.roster-group').length);
                         await test_utils.openChatBoxFor(_converse, contact_jid);
@@ -672,7 +672,7 @@
 
                         // See XEP-0085 https://xmpp.org/extensions/xep-0085.html#definitions
                         spyOn(_converse.api, "trigger");
-                        const sender_jid = mock.cur_names[1].replace(/ /g,'.').toLowerCase() + '@localhost';
+                        const sender_jid = mock.cur_names[1].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                         await test_utils.waitUntil(() => _converse.rosterview.el.querySelectorAll('.roster-group').length);
                         await test_utils.openChatBoxFor(_converse, sender_jid);
 
@@ -713,12 +713,12 @@
                             async function (done, _converse) {
 
                         let contact, sent_stanza, IQ_id, stanza;
-                        await test_utils.waitUntilDiscoConfirmed(_converse, 'localhost', [], ['vcard-temp']);
+                        await test_utils.waitUntilDiscoConfirmed(_converse, 'montague.lit', [], ['vcard-temp']);
                         await test_utils.waitUntil(() => _converse.xmppstatus.vcard.get('fullname'));
                         await test_utils.waitForRoster(_converse, 'current');
                         // Send a message from a different resource
                         spyOn(_converse, 'log');
-                        const recipient_jid = mock.cur_names[5].replace(/ /g,'.').toLowerCase() + '@localhost';
+                        const recipient_jid = mock.cur_names[5].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                         const view = await test_utils.openChatBoxFor(_converse, recipient_jid);
                         const msg = $msg({
                                 'from': _converse.bare_jid,
@@ -759,7 +759,7 @@
                             async function (done, _converse) {
 
                         await test_utils.waitForRoster(_converse, 'current');
-                        const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                        const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                         test_utils.openControlBox();
                         await test_utils.waitUntil(() => _converse.rosterview.el.querySelectorAll('.roster-group li').length, 700);
                         _converse.TIMEOUTS.PAUSED = 200; // Make the timeout shorter so that we can test
@@ -818,7 +818,7 @@
                         // TODO: only show paused state if the previous state was composing
                         // See XEP-0085 https://xmpp.org/extensions/xep-0085.html#definitions
                         spyOn(_converse.api, "trigger").and.callThrough();
-                        const sender_jid = mock.cur_names[1].replace(/ /g,'.').toLowerCase() + '@localhost';
+                        const sender_jid = mock.cur_names[1].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                         const view = await test_utils.openChatBoxFor(_converse, sender_jid);
                         // <paused> state
                         const msg = $msg({
@@ -841,12 +841,12 @@
                             async function (done, _converse) {
 
                         let contact, sent_stanza, IQ_id, stanza;
-                        await test_utils.waitUntilDiscoConfirmed(_converse, 'localhost', [], ['vcard-temp']);
+                        await test_utils.waitUntilDiscoConfirmed(_converse, 'montague.lit', [], ['vcard-temp']);
                         await test_utils.waitUntil(() => _converse.xmppstatus.vcard.get('fullname'));
                         await test_utils.waitForRoster(_converse, 'current');
                         // Send a message from a different resource
                         spyOn(_converse, 'log');
-                        const recipient_jid = mock.cur_names[5].replace(/ /g,'.').toLowerCase() + '@localhost';
+                        const recipient_jid = mock.cur_names[5].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                         const view = await test_utils.openChatBoxFor(_converse, recipient_jid);
                         const msg = $msg({
                                 'from': _converse.bare_jid,
@@ -891,7 +891,7 @@
                         _converse.TIMEOUTS.INACTIVE = 200;
 
                         await test_utils.waitForRoster(_converse, 'current');
-                        const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                        const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                         test_utils.openControlBox();
                         await test_utils.waitUntil(() => _converse.rosterview.el.querySelectorAll('.roster-group').length, 1000);
                         await test_utils.openChatBoxFor(_converse, contact_jid);
@@ -939,7 +939,7 @@
                         await test_utils.waitForRoster(_converse, 'current');
                         test_utils.openControlBox();
 
-                        const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                        const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                         await test_utils.openChatBoxFor(_converse, contact_jid);
                         const view = _converse.chatboxviews.get(contact_jid);
                         spyOn(_converse.connection, 'send');
@@ -958,7 +958,7 @@
                             async function (done, _converse) {
 
                         await test_utils.waitForRoster(_converse, 'current');
-                        const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                        const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                         test_utils.openControlBox();
                         await test_utils.waitUntil(() => _converse.rosterview.el.querySelectorAll('.roster-group').length);
                         const view = await test_utils.openChatBoxFor(_converse, contact_jid);
@@ -984,7 +984,7 @@
 
                         await test_utils.waitForRoster(_converse, 'current');
                         test_utils.openControlBox();
-                        const sender_jid = mock.cur_names[1].replace(/ /g,'.').toLowerCase() + '@localhost';
+                        const sender_jid = mock.cur_names[1].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                         // See XEP-0085 https://xmpp.org/extensions/xep-0085.html#definitions
                         spyOn(_converse.api, "trigger");
                         await test_utils.openChatBoxFor(_converse, sender_jid);
@@ -1028,7 +1028,7 @@
                         test_utils.openControlBox();
 
                         spyOn(_converse.api, "trigger");
-                        const sender_jid = mock.cur_names[1].replace(/ /g,'.').toLowerCase() + '@localhost';
+                        const sender_jid = mock.cur_names[1].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                         // <paused> state
                         const msg = $msg({
                                 from: sender_jid,
@@ -1057,7 +1057,7 @@
 
                 await test_utils.waitForRoster(_converse, 'current');
                 test_utils.openControlBox();
-                const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
 
                 spyOn(_converse.api, "trigger");
                 await test_utils.openChatBoxFor(_converse, contact_jid);
@@ -1103,7 +1103,7 @@
 
                 expect(_converse.msg_counter).toBe(0);
 
-                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 const view = await test_utils.openChatBoxFor(_converse, sender_jid)
 
                 const previous_state = _converse.windowState;
@@ -1158,7 +1158,7 @@
                 spyOn(_converse, 'incrementMsgCounter').and.callThrough();
                 _converse.saveWindowState(null, 'focus');
                 const message = 'This message will not increment the message counter';
-                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost',
+                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit',
                     msg = $msg({
                         from: sender_jid,
                         to: _converse.connection.jid,
@@ -1181,7 +1181,7 @@
                 // initial state
                 expect(_converse.msg_counter).toBe(0);
                 const message = 'This message will always increment the message counter from zero',
-                    sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost',
+                    sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit',
                     msgFactory = function () {
                         return $msg({
                             from: sender_jid,
@@ -1228,7 +1228,7 @@
                     async function (done, _converse) {
 
                 await test_utils.waitForRoster(_converse, 'current');
-                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost',
+                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit',
                       msg = test_utils.createChatMessage(_converse, sender_jid, 'This message will be unread');
 
                 const view = await test_utils.openChatBoxFor(_converse, sender_jid)
@@ -1246,7 +1246,7 @@
 
                 await test_utils.waitForRoster(_converse, 'current');
 
-                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost',
+                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit',
                       msg = test_utils.createChatMessage(_converse, sender_jid, 'This message will be read');
 
                 await test_utils.openChatBoxFor(_converse, sender_jid);
@@ -1262,7 +1262,7 @@
 
                 await test_utils.waitForRoster(_converse, 'current');
 
-                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 const msgFactory = function () {
                     return test_utils.createChatMessage(_converse, sender_jid, 'This message will be unread');
                 };
@@ -1281,7 +1281,7 @@
                     async function (done, _converse) {
 
                 await test_utils.waitForRoster(_converse, 'current', 1);
-                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 const msgFactory = () => test_utils.createChatMessage(_converse, sender_jid, 'This message will be unread');
                 await test_utils.openChatBoxFor(_converse, sender_jid);
                 const chatbox = _converse.chatboxes.get(sender_jid);
@@ -1299,7 +1299,7 @@
                     async function (done, _converse) {
 
                 await test_utils.waitForRoster(_converse, 'current', 1);
-                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 const msgFactory = () => test_utils.createChatMessage(_converse, sender_jid, 'This message will be unread');
                 await test_utils.openChatBoxFor(_converse, sender_jid);
                 const chatbox = _converse.chatboxes.get(sender_jid);
@@ -1318,7 +1318,7 @@
                     async function (done, _converse) {
 
                 await test_utils.waitForRoster(_converse, 'current', 1);
-                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 const msgFactory = () => test_utils.createChatMessage(_converse, sender_jid, 'This message will be unread');
                 await test_utils.openChatBoxFor(_converse, sender_jid);
                 const chatbox = _converse.chatboxes.get(sender_jid);
@@ -1342,7 +1342,7 @@
 
                 await test_utils.waitForRoster(_converse, 'current', 1);
                 let msg, indicator_el;
-                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 await test_utils.waitUntil(() => _converse.rosterview.el.querySelectorAll('.roster-group').length, 500);
                 await test_utils.openChatBoxFor(_converse, sender_jid);
                 const chatbox = _converse.chatboxes.get(sender_jid);
@@ -1367,7 +1367,7 @@
                     async function (done, _converse) {
 
                 await test_utils.waitForRoster(_converse, 'current', 1);
-                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
 
                 let indicator_el, msg;
                 await test_utils.waitUntil(() => _converse.rosterview.el.querySelectorAll('.roster-group').length, 500);
@@ -1397,7 +1397,7 @@
                     async function (done, _converse) {
 
                 await test_utils.waitForRoster(_converse, 'current', 1);
-                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 const msgFactory = () => test_utils.createChatMessage(_converse, sender_jid, 'This message will be received as unread, but eventually will be read');
                 await test_utils.waitUntil(() => _converse.rosterview.el.querySelectorAll('.roster-group').length, 500);
                 await test_utils.openChatBoxFor(_converse, sender_jid);
@@ -1423,7 +1423,7 @@
                     async function (done, _converse) {
 
                 await test_utils.waitForRoster(_converse, 'current', 1);
-                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 await test_utils.waitUntil(() => _converse.rosterview.el.querySelectorAll('.roster-group').length, 500);
                 await test_utils.openChatBoxFor(_converse, sender_jid);
                 const chatbox = _converse.chatboxes.get(sender_jid);
@@ -1447,7 +1447,7 @@
                     async function (done, _converse) {
 
                 await test_utils.waitForRoster(_converse, 'current', 1);
-                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 await test_utils.waitUntil(() => _converse.rosterview.el.querySelectorAll('.roster-group').length, 500);
                 await test_utils.openChatBoxFor(_converse, sender_jid);
                 const chatbox = _converse.chatboxes.get(sender_jid);
@@ -1474,7 +1474,7 @@
                     async function (done, _converse) {
 
                 await test_utils.waitForRoster(_converse, 'current', 1);
-                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 await test_utils.openChatBoxFor(_converse, sender_jid);
                 const msgFactory = function () {
                     return test_utils.createChatMessage(_converse, sender_jid, 'This message will be received as unread, but eventually will be read');
@@ -1502,7 +1502,7 @@
                     async function (done, _converse) {
 
                 await test_utils.waitForRoster(_converse, 'current', 1);
-                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 const view = await test_utils.openChatBoxFor(_converse, sender_jid)
                 const msgFactory = function () {
                     return test_utils.createChatMessage(_converse, sender_jid,
@@ -1530,7 +1530,7 @@
 
                 const base_url = document.URL.split(window.location.pathname)[0],
                       message = "geo:37.786971,-122.399677",
-                      contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                      contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
 
                 await test_utils.openChatBoxFor(_converse, contact_jid);
                 const view = _converse.chatboxviews.get(contact_jid);

+ 12 - 12
spec/controlbox.js

@@ -48,13 +48,13 @@
                 test_utils.openControlBox();
                 // Adding two contacts one with Capital initials and one with small initials of same JID (Case sensitive check)
                 _converse.roster.create({
-                    jid: mock.pend_names[0].replace(/ /g,'.').toLowerCase() + '@localhost',
+                    jid: mock.pend_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit',
                     subscription: 'none',
                     ask: 'subscribe',
                     fullname: mock.pend_names[0]
                 });
                 _converse.roster.create({
-                    jid: mock.pend_names[0].replace(/ /g,'.') + '@localhost',
+                    jid: mock.pend_names[0].replace(/ /g,'.') + '@montague.lit',
                     subscription: 'none',
                     ask: 'subscribe',
                     fullname: mock.pend_names[0]
@@ -74,7 +74,7 @@
                 test_utils.createContacts(_converse, 'all').openControlBox();
                 _converse.api.trigger('rosterContactsFetched');
 
-                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 await test_utils.openChatBoxFor(_converse, sender_jid);
                 await test_utils.waitUntil(() => _converse.chatboxes.length);
                 const chatview = _converse.chatboxviews.get(sender_jid);
@@ -208,13 +208,13 @@
             input_jid.value = 'someone@';
             const evt = new Event('input');
             input_jid.dispatchEvent(evt);
-            expect(modal.el.querySelector('.suggestion-box li').textContent).toBe('someone@localhost');
-            input_jid.value = 'someone@localhost';
+            expect(modal.el.querySelector('.suggestion-box li').textContent).toBe('someone@montague.lit');
+            input_jid.value = 'someone@montague.lit';
             input_name.value = 'Someone';
             modal.el.querySelector('button[type="submit"]').click();
             expect(sent_stanza.toLocaleString()).toEqual(
             `<iq id="${IQ_id}" type="set" xmlns="jabber:client">`+
-                `<query xmlns="jabber:iq:roster"><item jid="someone@localhost" name="Someone"/></query>`+
+                `<query xmlns="jabber:iq:roster"><item jid="someone@montague.lit" name="Someone"/></query>`+
             `</iq>`);
             done();
         }));
@@ -236,7 +236,7 @@
             expect(!_.isNull(modal.el.querySelector('form.add-xmpp-contact'))).toBeTruthy();
             const input_jid = modal.el.querySelector('input[name="jid"]');
             const input_name = modal.el.querySelector('input[name="name"]');
-            input_jid.value = 'someone@localhost';
+            input_jid.value = 'someone@montague.lit';
             modal.el.querySelector('button[type="submit"]').click();
 
             const IQ_stanzas = _converse.connection.IQ_stanzas;
@@ -245,7 +245,7 @@
             );
             expect(Strophe.serialize(sent_stanza)).toEqual(
                 `<iq id="${sent_stanza.getAttribute('id')}" type="set" xmlns="jabber:client">`+
-                    `<query xmlns="jabber:iq:roster"><item jid="someone@localhost"/></query>`+
+                    `<query xmlns="jabber:iq:roster"><item jid="someone@montague.lit"/></query>`+
                 `</iq>`
             );
             done();
@@ -324,10 +324,10 @@
                 'send': function () {
                     const value = modal.el.querySelector('input[name="name"]').value;
                     if (value === 'existing') {
-                        const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                        const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                         xhr.responseText = JSON.stringify([{"jid": contact_jid, "fullname": mock.cur_names[0]}]);
-                    } else if (value === 'dummy') {
-                        xhr.responseText = JSON.stringify([{"jid": "dummy@localhost", "fullname": "Max Mustermann"}]);
+                    } else if (value === 'romeo') {
+                        xhr.responseText = JSON.stringify([{"jid": "romeo@montague.lit", "fullname": "Romeo Montague"}]);
                     } else if (value === 'ambiguous') {
                         xhr.responseText = JSON.stringify([
                             {"jid": "marty@mcfly.net", "fullname": "Marty McFly"},
@@ -374,7 +374,7 @@
             expect(feedback_el.textContent).toBe('Sorry, could not find a contact with that name');
             feedback_el.textContent = '';
 
-            input_el.value = 'dummy';
+            input_el.value = 'romeo';
             modal.el.querySelector('button[type="submit"]').click();
             feedback_el = modal.el.querySelector('.invalid-feedback');
             expect(feedback_el.textContent).toBe('You cannot add yourself as a contact');

+ 9 - 9
spec/converse.js

@@ -254,16 +254,16 @@
                 let contact = await _converse.api.contacts.get('non-existing@jabber.org');
                 expect(contact).toBeFalsy();
                 // Check when a single jid is given
-                const jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                const jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 contact = await _converse.api.contacts.get(jid);
-                expect(contact.get('fullname')).toBe(mock.cur_names[0]);
+                expect(contact.getDisplayName()).toBe(mock.cur_names[0]);
                 expect(contact.get('jid')).toBe(jid);
                 // You can retrieve multiple contacts by passing in an array
-                const jid2 = mock.cur_names[1].replace(/ /g,'.').toLowerCase() + '@localhost';
+                const jid2 = mock.cur_names[1].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 let list = await _converse.api.contacts.get([jid, jid2]);
                 expect(Array.isArray(list)).toBeTruthy();
-                expect(list[0].get('fullname')).toBe(mock.cur_names[0]);
-                expect(list[1].get('fullname')).toBe(mock.cur_names[1]);
+                expect(list[0].getDisplayName()).toBe(mock.cur_names[0]);
+                expect(list[1].getDisplayName()).toBe(mock.cur_names[1]);
                 // Check that all JIDs are returned if you call without any parameters
                 list = await _converse.api.contacts.get();
                 expect(list.length).toBe(mock.cur_names.length);
@@ -294,8 +294,8 @@
 
                 // Test on chat that doesn't exist.
                 expect(_converse.api.chats.get('non-existing@jabber.org')).toBeFalsy();
-                const jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
-                const jid2 = mock.cur_names[1].replace(/ /g,'.').toLowerCase() + '@localhost';
+                const jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
+                const jid2 = mock.cur_names[1].replace(/ /g,'.').toLowerCase() + '@montague.lit';
 
                 // Test on chat that's not open
                 let box = _converse.api.chats.get(jid);
@@ -327,8 +327,8 @@
                 test_utils.createContacts(_converse, 'current', 2);
                 _converse.api.trigger('rosterContactsFetched');
 
-                const jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
-                const jid2 = mock.cur_names[1].replace(/ /g,'.').toLowerCase() + '@localhost';
+                const jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
+                const jid2 = mock.cur_names[1].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 // Test on chat that doesn't exist.
                 expect(_converse.api.chats.get('non-existing@jabber.org')).toBeFalsy();
 

+ 15 - 15
spec/disco.js

@@ -22,7 +22,7 @@
                 const IQ_ids =  _converse.connection.IQ_ids;
                 test_utils.waitUntil(function () {
                     return _.filter(IQ_stanzas, function (iq) {
-                        return iq.querySelector('iq[to="localhost"] query[xmlns="http://jabber.org/protocol/disco#info"]');
+                        return iq.querySelector('iq[to="montague.lit"] query[xmlns="http://jabber.org/protocol/disco#info"]');
                     }).length > 0;
                 }, 300).then(function () {
                     /* <iq type='result'
@@ -52,13 +52,13 @@
                      *  </iq>
                      */
                     var stanza = _.find(IQ_stanzas, function (iq) {
-                        return iq.querySelector('iq[to="localhost"] query[xmlns="http://jabber.org/protocol/disco#info"]');
+                        return iq.querySelector('iq[to="montague.lit"] query[xmlns="http://jabber.org/protocol/disco#info"]');
                     });
                     var info_IQ_id = IQ_ids[IQ_stanzas.indexOf(stanza)];
                     stanza = $iq({
                         'type': 'result',
-                        'from': 'localhost',
-                        'to': 'dummy@localhost/resource',
+                        'from': 'montague.lit',
+                        'to': 'romeo@montague.lit/orchard',
                         'id': info_IQ_id
                     }).c('query', {'xmlns': 'http://jabber.org/protocol/disco#info'})
                         .c('identity', {
@@ -88,12 +88,12 @@
                         expect(entities.length).toBe(2); // We have an extra entity, which is the user's JID
                         expect(entities.get(_converse.domain).features.length).toBe(5);
                         expect(entities.get(_converse.domain).identities.length).toBe(3);
-                        expect(entities.get('localhost').features.where({'var': 'jabber:iq:version'}).length).toBe(1);
-                        expect(entities.get('localhost').features.where({'var': 'jabber:iq:time'}).length).toBe(1);
-                        expect(entities.get('localhost').features.where({'var': 'jabber:iq:register'}).length).toBe(1);
-                        expect(entities.get('localhost').features.where(
+                        expect(entities.get('montague.lit').features.where({'var': 'jabber:iq:version'}).length).toBe(1);
+                        expect(entities.get('montague.lit').features.where({'var': 'jabber:iq:time'}).length).toBe(1);
+                        expect(entities.get('montague.lit').features.where({'var': 'jabber:iq:register'}).length).toBe(1);
+                        expect(entities.get('montague.lit').features.where(
                             {'var': 'http://jabber.org/protocol/disco#items'}).length).toBe(1);
-                        expect(entities.get('localhost').features.where(
+                        expect(entities.get('montague.lit').features.where(
                             {'var': 'http://jabber.org/protocol/disco#info'}).length).toBe(1);
 
 
@@ -131,13 +131,13 @@
                              * </iq>
                              */
                             var stanza = _.find(IQ_stanzas, function (iq) {
-                                return iq.querySelector('iq[to="localhost"] query[xmlns="http://jabber.org/protocol/disco#items"]');
+                                return iq.querySelector('iq[to="montague.lit"] query[xmlns="http://jabber.org/protocol/disco#items"]');
                             });
                             var items_IQ_id = IQ_ids[IQ_stanzas.indexOf(stanza)];
                             stanza = $iq({
                                 'type': 'result',
-                                'from': 'localhost',
-                                'to': 'dummy@localhost/resource',
+                                'from': 'montague.lit',
+                                'to': 'romeo@montague.lit/orchard',
                                 'id': items_IQ_id
                             }).c('query', {'xmlns': 'http://jabber.org/protocol/disco#items'})
                                 .c('item', {
@@ -151,14 +151,14 @@
                                     'name': 'Gateway to Marlowe IM'}).up()
 
                                 .c('item', {
-                                    'jid': 'localhost',
+                                    'jid': 'montague.lit',
                                     'node': 'books',
                                     'name': 'Books by and about Shakespeare'}).up()
                                 .c('item', {
-                                    'node': 'localhost',
+                                    'node': 'montague.lit',
                                     'name': 'Wear your literary taste with pride'}).up()
                                 .c('item', {
-                                    'jid': 'localhost',
+                                    'jid': 'montague.lit',
                                     'node': 'music',
                                     'name': 'Music from the time of Shakespeare'
                                 });

+ 4 - 4
spec/headline.js

@@ -16,7 +16,7 @@
             /* XMPP spam message:
              *
              *  <message xmlns="jabber:client"
-             *          to="dummy@localhost"
+             *          to="romeo@montague.lit"
              *          type="chat"
              *          from="gapowa20102106@rds-rostov.ru/Adium">
              *      <nick xmlns="http://jabber.org/protocol/nick">-wwdmz</nick>
@@ -26,7 +26,7 @@
             sinon.spy(utils, 'isHeadlineMessage');
             const stanza = $msg({
                     'xmlns': 'jabber:client',
-                    'to': 'dummy@localhost',
+                    'to': 'romeo@montague.lit',
                     'type': 'chat',
                     'from': 'gapowa20102106@rds-rostov.ru/Adium',
                 })
@@ -59,7 +59,7 @@
             const stanza = $msg({
                     'type': 'headline',
                     'from': 'notify.example.com',
-                    'to': 'dummy@localhost',
+                    'to': 'romeo@montague.lit',
                     'xml:lang': 'en'
                 })
                 .c('subject').t('SIEVE').up()
@@ -91,7 +91,7 @@
             var stanza = $msg({
                     'type': 'headline',
                     'from': 'andre5114@jabber.snc.ru/Spark',
-                    'to': 'dummy@localhost',
+                    'to': 'romeo@montague.lit',
                     'xml:lang': 'en'
                 })
                 .c('nick').t('gpocy').up()

+ 63 - 63
spec/http-file-upload.js

@@ -21,7 +21,7 @@
                 await test_utils.waitUntilDiscoConfirmed(_converse, _converse.bare_jid, [], []);
                 await test_utils.waitUntil(() => _.filter(
                     IQ_stanzas,
-                    iq => iq.querySelector('iq[to="localhost"] query[xmlns="http://jabber.org/protocol/disco#info"]')).length
+                    iq => iq.querySelector('iq[to="montague.lit"] query[xmlns="http://jabber.org/protocol/disco#info"]')).length
                 );
 
                 /* <iq type='result'
@@ -39,13 +39,13 @@
                  */
                 let stanza = _.find(IQ_stanzas, function (iq) {
                     return iq.querySelector(
-                        'iq[to="localhost"] query[xmlns="http://jabber.org/protocol/disco#info"]');
+                        'iq[to="montague.lit"] query[xmlns="http://jabber.org/protocol/disco#info"]');
                 });
                 const info_IQ_id = IQ_ids[IQ_stanzas.indexOf(stanza)];
                 stanza = $iq({
                     'type': 'result',
-                    'from': 'localhost',
-                    'to': 'dummy@localhost/resource',
+                    'from': 'montague.lit',
+                    'to': 'romeo@montague.lit/orchard',
                     'id': info_IQ_id
                 }).c('query', {'xmlns': 'http://jabber.org/protocol/disco#info'})
                     .c('identity', {
@@ -59,8 +59,8 @@
 
                 let entities = await _converse.api.disco.entities.get();
                 expect(entities.length).toBe(2);
-                expect(_.includes(entities.pluck('jid'), 'localhost')).toBe(true);
-                expect(_.includes(entities.pluck('jid'), 'dummy@localhost')).toBe(true);
+                expect(_.includes(entities.pluck('jid'), 'montague.lit')).toBe(true);
+                expect(_.includes(entities.pluck('jid'), 'romeo@montague.lit')).toBe(true);
 
                 expect(entities.get(_converse.domain).features.length).toBe(2);
                 expect(entities.get(_converse.domain).identities.length).toBe(1);
@@ -69,7 +69,7 @@
                 // so it will make a query for it.
                 await test_utils.waitUntil(() => _.filter(
                         IQ_stanzas,
-                        iq => iq.querySelector('iq[to="localhost"] query[xmlns="http://jabber.org/protocol/disco#items"]')
+                        iq => iq.querySelector('iq[to="montague.lit"] query[xmlns="http://jabber.org/protocol/disco#items"]')
                     ).length
                 );
                 /* <iq from='montague.tld'
@@ -83,29 +83,29 @@
                  *  </iq>
                  */
                 stanza = _.find(IQ_stanzas, function (iq) {
-                    return iq.querySelector('iq[to="localhost"] query[xmlns="http://jabber.org/protocol/disco#items"]');
+                    return iq.querySelector('iq[to="montague.lit"] query[xmlns="http://jabber.org/protocol/disco#items"]');
                 });
                 const items_IQ_id = IQ_ids[IQ_stanzas.indexOf(stanza)];
                 stanza = $iq({
                     'type': 'result',
-                    'from': 'localhost',
-                    'to': 'dummy@localhost/resource',
+                    'from': 'montague.lit',
+                    'to': 'romeo@montague.lit/orchard',
                     'id': items_IQ_id
                 }).c('query', {'xmlns': 'http://jabber.org/protocol/disco#items'})
                     .c('item', {
-                        'jid': 'upload.localhost',
+                        'jid': 'upload.montague.lit',
                         'name': 'HTTP File Upload'});
 
                 _converse.connection._dataRecv(test_utils.createRequest(stanza));
 
                 _converse.api.disco.entities.get().then(function (entities) {
                     expect(entities.length).toBe(2);
-                    expect(entities.get('localhost').items.length).toBe(1);
+                    expect(entities.get('montague.lit').items.length).toBe(1);
                     return test_utils.waitUntil(function () {
                         // Converse.js sees that the entity has a disco#info feature,
                         // so it will make a query for it.
                         return _.filter(IQ_stanzas, function (iq) {
-                            return iq.querySelector('iq[to="upload.localhost"] query[xmlns="http://jabber.org/protocol/disco#info"]');
+                            return iq.querySelector('iq[to="upload.montague.lit"] query[xmlns="http://jabber.org/protocol/disco#info"]');
                         }).length > 0;
                     }, 300);
                 });
@@ -113,13 +113,13 @@
                 stanza = await test_utils.waitUntil(() =>
                     _.filter(
                         IQ_stanzas,
-                        iq => iq.querySelector('iq[to="upload.localhost"] query[xmlns="http://jabber.org/protocol/disco#info"]')
+                        iq => iq.querySelector('iq[to="upload.montague.lit"] query[xmlns="http://jabber.org/protocol/disco#info"]')
                     ).pop()
                 );
                 const IQ_id = IQ_ids[IQ_stanzas.indexOf(stanza)];
 
                 expect(Strophe.serialize(stanza)).toBe(
-                    `<iq from="dummy@localhost/resource" id="`+IQ_id+`" to="upload.localhost" type="get" xmlns="jabber:client">`+
+                    `<iq from="romeo@montague.lit/orchard" id="`+IQ_id+`" to="upload.montague.lit" type="get" xmlns="jabber:client">`+
                         `<query xmlns="http://jabber.org/protocol/disco#info"/>`+
                     `</iq>`);
 
@@ -144,7 +144,7 @@
                  * </query>
                  * </iq>
                  */
-                stanza = $iq({'type': 'result', 'to': 'dummy@localhost/resource', 'id': IQ_id, 'from': 'upload.localhost'})
+                stanza = $iq({'type': 'result', 'to': 'romeo@montague.lit/orchard', 'id': IQ_id, 'from': 'upload.montague.lit'})
                     .c('query', {'xmlns': 'http://jabber.org/protocol/disco#info'})
                         .c('identity', {'category':'store', 'type':'file', 'name':'HTTP File Upload'}).up()
                         .c('feature', {'var':'urn:xmpp:http:upload:0'}).up()
@@ -156,12 +156,12 @@
                 _converse.connection._dataRecv(test_utils.createRequest(stanza));
 
                 entities = await _converse.api.disco.entities.get();
-                expect(entities.get('localhost').items.get('upload.localhost').identities.where({'category': 'store'}).length).toBe(1);
+                expect(entities.get('montague.lit').items.get('upload.montague.lit').identities.where({'category': 'store'}).length).toBe(1);
                 const supported = await _converse.api.disco.supports(Strophe.NS.HTTPUPLOAD, _converse.domain);
                 expect(supported).toBe(true);
                 const features = await _converse.api.disco.features.get(Strophe.NS.HTTPUPLOAD, _converse.domain);
                 expect(features.length).toBe(1);
-                expect(features[0].get('jid')).toBe('upload.localhost');
+                expect(features[0].get('jid')).toBe('upload.montague.lit');
                 expect(features[0].dataforms.where({'FORM_TYPE': {value: "urn:xmpp:http:upload:0", type: "hidden"}}).length).toBe(1);
                 done();
             }));
@@ -171,7 +171,7 @@
             describe("A file upload toolbar button", function () {
 
                 it("does not appear in private chats", mock.initConverse(async (done, _converse) => {
-                    var contact_jid = mock.cur_names[2].replace(/ /g,'.').toLowerCase() + '@localhost';
+                    var contact_jid = mock.cur_names[2].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                     test_utils.createContacts(_converse, 'current');
                     test_utils.openChatBoxFor(_converse, contact_jid);
 
@@ -190,15 +190,15 @@
                         null, ['rosterGroupsFetched'], {},
                         async (done, _converse) => {
 
-                    await test_utils.openAndEnterChatRoom(_converse, 'lounge', 'localhost', 'dummy');
+                    await test_utils.openAndEnterChatRoom(_converse, 'lounge', 'montague.lit', 'romeo');
                     test_utils.waitUntilDiscoConfirmed(
                         _converse, _converse.domain,
                         [{'category': 'server', 'type':'IM'}],
                         ['http://jabber.org/protocol/disco#items'], [], 'info');
 
-                    await test_utils.waitUntilDiscoConfirmed(_converse, _converse.domain, [], [], ['upload.localhost'], 'items');
-                    await test_utils.waitUntilDiscoConfirmed(_converse, 'upload.localhost', [], [Strophe.NS.HTTPUPLOAD], []);
-                    const view = _converse.chatboxviews.get('lounge@localhost');
+                    await test_utils.waitUntilDiscoConfirmed(_converse, _converse.domain, [], [], ['upload.montague.lit'], 'items');
+                    await test_utils.waitUntilDiscoConfirmed(_converse, 'upload.montague.lit', [], [Strophe.NS.HTTPUPLOAD], []);
+                    const view = _converse.chatboxviews.get('lounge@montague.lit');
                     expect(view.el.querySelector('.chat-toolbar .upload-file')).toBe(null);
                     done();
                 }));
@@ -216,11 +216,11 @@
                         [{'category': 'server', 'type':'IM'}],
                         ['http://jabber.org/protocol/disco#items'], [], 'info');
 
-                    await test_utils.waitUntilDiscoConfirmed(_converse, _converse.domain, [], [], ['upload.localhost'], 'items')
-                    await test_utils.waitUntilDiscoConfirmed(_converse, 'upload.localhost', [], [Strophe.NS.HTTPUPLOAD], []);
+                    await test_utils.waitUntilDiscoConfirmed(_converse, _converse.domain, [], [], ['upload.montague.lit'], 'items')
+                    await test_utils.waitUntilDiscoConfirmed(_converse, 'upload.montague.lit', [], [Strophe.NS.HTTPUPLOAD], []);
                     test_utils.createContacts(_converse, 'current', 3);
                     _converse.api.trigger('rosterContactsFetched');
-                    const contact_jid = mock.cur_names[2].replace(/ /g,'.').toLowerCase() + '@localhost';
+                    const contact_jid = mock.cur_names[2].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                     await test_utils.openChatBoxFor(_converse, contact_jid);
                     const view = _converse.chatboxviews.get(contact_jid);
                     test_utils.waitUntil(() => view.el.querySelector('.upload-file'));
@@ -237,11 +237,11 @@
                         [{'category': 'server', 'type':'IM'}],
                         ['http://jabber.org/protocol/disco#items'], [], 'info');
 
-                    await test_utils.waitUntilDiscoConfirmed(_converse, _converse.domain, [], [], ['upload.localhost'], 'items');
-                    await test_utils.waitUntilDiscoConfirmed(_converse, 'upload.localhost', [], [Strophe.NS.HTTPUPLOAD], []);
-                    await test_utils.openAndEnterChatRoom(_converse, 'lounge', 'localhost', 'dummy');
-                    await test_utils.waitUntil(() => _converse.chatboxviews.get('lounge@localhost').el.querySelector('.upload-file'));
-                    const view = _converse.chatboxviews.get('lounge@localhost');
+                    await test_utils.waitUntilDiscoConfirmed(_converse, _converse.domain, [], [], ['upload.montague.lit'], 'items');
+                    await test_utils.waitUntilDiscoConfirmed(_converse, 'upload.montague.lit', [], [Strophe.NS.HTTPUPLOAD], []);
+                    await test_utils.openAndEnterChatRoom(_converse, 'lounge', 'montague.lit', 'romeo');
+                    await test_utils.waitUntil(() => _converse.chatboxviews.get('lounge@montague.lit').el.querySelector('.upload-file'));
+                    const view = _converse.chatboxviews.get('lounge@montague.lit');
                     expect(view.el.querySelector('.chat-toolbar .upload-file')).not.toBe(null);
                     done();
                 }));
@@ -262,7 +262,7 @@
                         await test_utils.waitUntilDiscoConfirmed(_converse, 'upload.montague.tld', [], [Strophe.NS.HTTPUPLOAD], []);
                         test_utils.createContacts(_converse, 'current');
                         _converse.api.trigger('rosterContactsFetched');
-                        const contact_jid = mock.cur_names[2].replace(/ /g,'.').toLowerCase() + '@localhost';
+                        const contact_jid = mock.cur_names[2].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                         await test_utils.openChatBoxFor(_converse, contact_jid);
                         const view = _converse.chatboxviews.get(contact_jid);
                         const file = {
@@ -277,7 +277,7 @@
                         await test_utils.waitUntil(() => _.filter(IQ_stanzas, iq => iq.querySelector('iq[to="upload.montague.tld"] request')).length);
                         const iq = IQ_stanzas.pop();
                         expect(Strophe.serialize(iq)).toBe(
-                            `<iq from="dummy@localhost/resource" `+
+                            `<iq from="romeo@montague.lit/orchard" `+
                                 `id="${iq.getAttribute("id")}" `+
                                 `to="upload.montague.tld" `+
                                 `type="get" `+
@@ -294,7 +294,7 @@
                         const stanza = u.toStanza(`
                             <iq from="upload.montague.tld"
                                 id="${iq.getAttribute("id")}"
-                                to="dummy@localhost/resource"
+                                to="romeo@montague.lit/orchard"
                                 type="result">
                             <slot xmlns="urn:xmpp:http:upload:0">
                                 <put url="https://upload.montague.tld/4a771ac1-f0b2-4a4a-9700-f2a26fa2bb67/my-juliet.jpg">
@@ -328,9 +328,9 @@
 
                         await test_utils.waitUntil(() => sent_stanza, 1000);
                         expect(sent_stanza.toLocaleString()).toBe(
-                            `<message from="dummy@localhost/resource" `+
+                            `<message from="romeo@montague.lit/orchard" `+
                                 `id="${sent_stanza.nodeTree.getAttribute("id")}" `+
-                                `to="irini.vlastuin@localhost" `+
+                                `to="lady.montague@montague.lit" `+
                                 `type="chat" `+
                                 `xmlns="jabber:client">`+
                                     `<body>${message}</body>`+
@@ -365,13 +365,13 @@
 
                         await test_utils.waitUntilDiscoConfirmed(_converse, _converse.domain, [], [], ['upload.montague.tld'], 'items');
                         await test_utils.waitUntilDiscoConfirmed(_converse, 'upload.montague.tld', [], [Strophe.NS.HTTPUPLOAD], []);
-                        await test_utils.openAndEnterChatRoom(_converse, 'lounge', 'localhost', 'dummy');
+                        await test_utils.openAndEnterChatRoom(_converse, 'lounge', 'montague.lit', 'romeo');
 
                         // Wait until MAM query has been sent out
                         const sent_stanzas = _converse.connection.sent_stanzas;
                         await test_utils.waitUntil(() => sent_stanzas.filter(s => sizzle(`[xmlns="${Strophe.NS.MAM}"]`, s).length).pop());
 
-                        const view = _converse.chatboxviews.get('lounge@localhost');
+                        const view = _converse.chatboxviews.get('lounge@montague.lit');
                         const file = {
                             'type': 'image/jpeg',
                             'size': '23456' ,
@@ -384,7 +384,7 @@
                         await test_utils.waitUntil(() => _.filter(IQ_stanzas, iq => iq.querySelector('iq[to="upload.montague.tld"] request')).length);
                         const iq = IQ_stanzas.pop();
                         expect(Strophe.serialize(iq)).toBe(
-                            `<iq from="dummy@localhost/resource" `+
+                            `<iq from="romeo@montague.lit/orchard" `+
                                 `id="${iq.getAttribute("id")}" `+
                                 `to="upload.montague.tld" `+
                                 `type="get" `+
@@ -400,7 +400,7 @@
                         const stanza = u.toStanza(`
                             <iq from='upload.montague.tld'
                                 id="${iq.getAttribute('id')}"
-                                to='dummy@localhost/resource'
+                                to='romeo@montague.lit/orchard'
                                 type='result'>
                             <slot xmlns='urn:xmpp:http:upload:0'>
                                 <put url='https://upload.montague.tld/4a771ac1-f0b2-4a4a-9700-f2a26fa2bb67/my-juliet.jpg'>
@@ -435,9 +435,9 @@
                         await test_utils.waitUntil(() => sent_stanza, 1000);
                         expect(sent_stanza.toLocaleString()).toBe(
                             `<message `+
-                                `from="dummy@localhost/resource" `+
+                                `from="romeo@montague.lit/orchard" `+
                                 `id="${sent_stanza.nodeTree.getAttribute("id")}" `+
-                                `to="lounge@localhost" `+
+                                `to="lounge@montague.lit" `+
                                 `type="groupchat" `+
                                 `xmlns="jabber:client">`+
                                     `<body>${message}</body>`+
@@ -466,18 +466,18 @@
                         await test_utils.waitUntilDiscoConfirmed(_converse, _converse.bare_jid, [], []);
                         await test_utils.waitUntil(() => _.filter(
                             IQ_stanzas,
-                            iq => iq.querySelector('iq[to="localhost"] query[xmlns="http://jabber.org/protocol/disco#info"]')).length
+                            iq => iq.querySelector('iq[to="montague.lit"] query[xmlns="http://jabber.org/protocol/disco#info"]')).length
                         );
 
                         let stanza = _.find(IQ_stanzas, function (iq) {
                             return iq.querySelector(
-                                'iq[to="localhost"] query[xmlns="http://jabber.org/protocol/disco#info"]');
+                                'iq[to="montague.lit"] query[xmlns="http://jabber.org/protocol/disco#info"]');
                         });
                         const info_IQ_id = IQ_ids[IQ_stanzas.indexOf(stanza)];
                         stanza = $iq({
                             'type': 'result',
-                            'from': 'localhost',
-                            'to': 'dummy@localhost/resource',
+                            'from': 'montague.lit',
+                            'to': 'romeo@montague.lit/orchard',
                             'id': info_IQ_id
                         }).c('query', {'xmlns': 'http://jabber.org/protocol/disco#info'})
                             .c('identity', {
@@ -491,8 +491,8 @@
                         let entities = await _converse.api.disco.entities.get();
 
                         expect(entities.length).toBe(2);
-                        expect(_.includes(entities.pluck('jid'), 'localhost')).toBe(true);
-                        expect(_.includes(entities.pluck('jid'), 'dummy@localhost')).toBe(true);
+                        expect(_.includes(entities.pluck('jid'), 'montague.lit')).toBe(true);
+                        expect(_.includes(entities.pluck('jid'), 'romeo@montague.lit')).toBe(true);
 
                         expect(entities.get(_converse.domain).features.length).toBe(2);
                         expect(entities.get(_converse.domain).identities.length).toBe(1);
@@ -501,22 +501,22 @@
                             // Converse.js sees that the entity has a disco#items feature,
                             // so it will make a query for it.
                             return _.filter(IQ_stanzas, function (iq) {
-                                return iq.querySelector('iq[to="localhost"] query[xmlns="http://jabber.org/protocol/disco#items"]');
+                                return iq.querySelector('iq[to="montague.lit"] query[xmlns="http://jabber.org/protocol/disco#items"]');
                             }).length > 0;
                         }, 300);
 
                         stanza = _.find(IQ_stanzas, function (iq) {
-                            return iq.querySelector('iq[to="localhost"] query[xmlns="http://jabber.org/protocol/disco#items"]');
+                            return iq.querySelector('iq[to="montague.lit"] query[xmlns="http://jabber.org/protocol/disco#items"]');
                         });
                         var items_IQ_id = IQ_ids[IQ_stanzas.indexOf(stanza)];
                         stanza = $iq({
                             'type': 'result',
-                            'from': 'localhost',
-                            'to': 'dummy@localhost/resource',
+                            'from': 'montague.lit',
+                            'to': 'romeo@montague.lit/orchard',
                             'id': items_IQ_id
                         }).c('query', {'xmlns': 'http://jabber.org/protocol/disco#items'})
                             .c('item', {
-                                'jid': 'upload.localhost',
+                                'jid': 'upload.montague.lit',
                                 'name': 'HTTP File Upload'});
 
                         _converse.connection._dataRecv(test_utils.createRequest(stanza));
@@ -524,24 +524,24 @@
                         entities = await _converse.api.disco.entities.get()
 
                         expect(entities.length).toBe(2);
-                        expect(entities.get('localhost').items.length).toBe(1);
+                        expect(entities.get('montague.lit').items.length).toBe(1);
                         await test_utils.waitUntil(function () {
                             // Converse.js sees that the entity has a disco#info feature,
                             // so it will make a query for it.
                             return _.filter(IQ_stanzas, function (iq) {
-                                return iq.querySelector('iq[to="upload.localhost"] query[xmlns="http://jabber.org/protocol/disco#info"]');
+                                return iq.querySelector('iq[to="upload.montague.lit"] query[xmlns="http://jabber.org/protocol/disco#info"]');
                             }).length > 0;
                         }, 300);
 
-                        stanza = _.find(IQ_stanzas, iq => iq.querySelector('iq[to="upload.localhost"] query[xmlns="http://jabber.org/protocol/disco#info"]'));
+                        stanza = _.find(IQ_stanzas, iq => iq.querySelector('iq[to="upload.montague.lit"] query[xmlns="http://jabber.org/protocol/disco#info"]'));
                         const IQ_id = IQ_ids[IQ_stanzas.indexOf(stanza)];
                         expect(Strophe.serialize(stanza)).toBe(
-                            `<iq from="dummy@localhost/resource" id="${IQ_id}" to="upload.localhost" type="get" xmlns="jabber:client">`+
+                            `<iq from="romeo@montague.lit/orchard" id="${IQ_id}" to="upload.montague.lit" type="get" xmlns="jabber:client">`+
                                 `<query xmlns="http://jabber.org/protocol/disco#info"/>`+
                             `</iq>`);
 
                         // Upload service responds and reports a maximum file size of 5MiB
-                        stanza = $iq({'type': 'result', 'to': 'dummy@localhost/resource', 'id': IQ_id, 'from': 'upload.localhost'})
+                        stanza = $iq({'type': 'result', 'to': 'romeo@montague.lit/orchard', 'id': IQ_id, 'from': 'upload.montague.lit'})
                             .c('query', {'xmlns': 'http://jabber.org/protocol/disco#info'})
                                 .c('identity', {'category':'store', 'type':'file', 'name':'HTTP File Upload'}).up()
                                 .c('feature', {'var':'urn:xmpp:http:upload:0'}).up()
@@ -552,12 +552,12 @@
                                         .c('value').t('5242880');
                         _converse.connection._dataRecv(test_utils.createRequest(stanza));
                         entities = await _converse.api.disco.entities.get();
-                        expect(entities.get('localhost').items.get('upload.localhost').identities.where({'category': 'store'}).length).toBe(1);
+                        expect(entities.get('montague.lit').items.get('upload.montague.lit').identities.where({'category': 'store'}).length).toBe(1);
                         await _converse.api.disco.supports(Strophe.NS.HTTPUPLOAD, _converse.domain);
                         test_utils.createContacts(_converse, 'current');
                         _converse.api.trigger('rosterContactsFetched');
 
-                        const contact_jid = mock.cur_names[2].replace(/ /g,'.').toLowerCase() + '@localhost';
+                        const contact_jid = mock.cur_names[2].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                         await test_utils.openChatBoxFor(_converse, contact_jid);
                         const view = _converse.chatboxviews.get(contact_jid);
                         var file = {
@@ -595,7 +595,7 @@
                     await test_utils.waitUntilDiscoConfirmed(_converse, 'upload.montague.tld', [], [Strophe.NS.HTTPUPLOAD], []);
                     test_utils.createContacts(_converse, 'current');
                     _converse.api.trigger('rosterContactsFetched');
-                    const contact_jid = mock.cur_names[2].replace(/ /g,'.').toLowerCase() + '@localhost';
+                    const contact_jid = mock.cur_names[2].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                     await test_utils.openChatBoxFor(_converse, contact_jid);
                     const view = _converse.chatboxviews.get(contact_jid);
                     const file = {
@@ -609,7 +609,7 @@
                     await test_utils.waitUntil(() => _.filter(IQ_stanzas, iq => iq.querySelector('iq[to="upload.montague.tld"] request')).length)
                     const iq = IQ_stanzas.pop();
                     expect(Strophe.serialize(iq)).toBe(
-                        `<iq from="dummy@localhost/resource" `+
+                        `<iq from="romeo@montague.lit/orchard" `+
                             `id="${iq.getAttribute("id")}" `+
                             `to="upload.montague.tld" `+
                             `type="get" `+
@@ -626,7 +626,7 @@
                     const stanza = u.toStanza(`
                         <iq from="upload.montague.tld"
                             id="${iq.getAttribute("id")}"
-                            to="dummy@localhost/resource"
+                            to="romeo@montague.lit/orchard"
                             type="result">
                         <slot xmlns="urn:xmpp:http:upload:0">
                             <put url="https://upload.montague.tld/4a771ac1-f0b2-4a4a-9700-f2a26fa2bb67/my-juliet.jpg">

+ 2 - 2
spec/login.js

@@ -21,7 +21,7 @@
             expect(label.textContent).toBe('This is a trusted device');
             expect(checkbox.checked).toBe(true);
 
-            cbview.el.querySelector('input[name="jid"]').value = 'dummy@localhost';
+            cbview.el.querySelector('input[name="jid"]').value = 'romeo@montague.lit';
             cbview.el.querySelector('input[name="password"]').value = 'secret';
 
             spyOn(cbview.loginpanel, 'connect');
@@ -58,7 +58,7 @@
                 expect(label.textContent).toBe('This is a trusted device');
                 expect(checkbox.checked).toBe(false);
 
-                cbview.el.querySelector('input[name="jid"]').value = 'dummy@localhost';
+                cbview.el.querySelector('input[name="jid"]').value = 'romeo@montague.lit';
                 cbview.el.querySelector('input[name="password"]').value = 'secret';
 
                 spyOn(cbview.loginpanel, 'connect');

+ 10 - 10
spec/mam.js

@@ -24,11 +24,11 @@
                         null, ['discoInitialized'], {},
                         async function (done, _converse) {
 
-                    await test_utils.openAndEnterChatRoom(_converse, 'trek-radio', 'conference.lightwitch.org', 'dummy');
+                    await test_utils.openAndEnterChatRoom(_converse, 'trek-radio', 'conference.lightwitch.org', 'romeo');
 
                     const view = _converse.chatboxviews.get('trek-radio@conference.lightwitch.org');
                     let stanza = u.toStanza(
-                        `<message xmlns="jabber:client" to="dummy@localhost/resource" type="groupchat" from="trek-radio@conference.lightwitch.org/some1">
+                        `<message xmlns="jabber:client" to="romeo@montague.lit/orchard" type="groupchat" from="trek-radio@conference.lightwitch.org/some1">
                             <body>Hello</body>
                             <stanza-id xmlns="urn:xmpp:sid:0" id="45fbbf2a-1059-479d-9283-c8effaf05621" by="trek-radio@conference.lightwitch.org"/>
                         </message>`);
@@ -40,7 +40,7 @@
 
                     stanza = u.toStanza(
                         `<message xmlns="jabber:client"
-                                to="dummy@localhost/resource"
+                                to="romeo@montague.lit/orchard"
                                 from="trek-radio@conference.lightwitch.org">
                             <result xmlns="urn:xmpp:mam:2" queryid="82d9db27-6cf8-4787-8c2c-5a560263d823" id="45fbbf2a-1059-479d-9283-c8effaf05621">
                                 <forwarded xmlns="urn:xmpp:forward:0">
@@ -111,10 +111,10 @@
                         null, ['discoInitialized'], {},
                         async function (done, _converse) {
 
-                    await test_utils.openAndEnterChatRoom(_converse, 'discuss', 'conference.conversejs.org', 'dummy');
+                    await test_utils.openAndEnterChatRoom(_converse, 'discuss', 'conference.conversejs.org', 'romeo');
                     const view = _converse.chatboxviews.get('discuss@conference.conversejs.org');
                     let stanza = u.toStanza(
-                        `<message xmlns="jabber:client" to="dummy@localhost/resource" from="discuss@conference.conversejs.org">
+                        `<message xmlns="jabber:client" to="romeo@montague.lit/orchard" from="discuss@conference.conversejs.org">
                             <result xmlns="urn:xmpp:mam:2" queryid="06fea9ca-97c9-48c4-8583-009ff54ea2e8" id="7a9fde91-4387-4bf8-b5d3-978dab8f6bf3">
                                 <forwarded xmlns="urn:xmpp:forward:0">
                                     <delay xmlns="urn:xmpp:delay" stamp="2018-12-05T04:53:12Z"/>
@@ -132,7 +132,7 @@
                     expect(view.content.querySelectorAll('.chat-msg').length).toBe(1);
 
                     stanza = u.toStanza(
-                        `<message xmlns="jabber:client" to="dummy@localhost/resource" from="discuss@conference.conversejs.org">
+                        `<message xmlns="jabber:client" to="romeo@montague.lit/orchard" from="discuss@conference.conversejs.org">
                             <result xmlns="urn:xmpp:mam:2" queryid="06fea9ca-97c9-48c4-8583-009ff54ea2e8" id="7a9fde91-4387-4bf8-b5d3-978dab8f6bf3">
                                 <forwarded xmlns="urn:xmpp:forward:0">
                                     <delay xmlns="urn:xmpp:delay" stamp="2018-12-05T04:53:12Z"/>
@@ -272,13 +272,13 @@
                  *     </result>
                  * </message>
                  */
-                const msg1 = $msg({'id':'iasd207', 'from': 'other@chat.shakespear.lit', 'to': 'dummy@localhost'})
+                const msg1 = $msg({'id':'iasd207', 'from': 'other@chat.shakespear.lit', 'to': 'romeo@montague.lit'})
                             .c('result',  {'xmlns': 'urn:xmpp:mam:2', 'queryid':queryid, 'id':'34482-21985-73620'})
                                 .c('forwarded', {'xmlns':'urn:xmpp:forward:0'})
                                     .c('delay', {'xmlns':'urn:xmpp:delay', 'stamp':'2010-07-10T23:08:25Z'}).up()
                                     .c('message', {
                                         'xmlns':'jabber:client',
-                                        'to':'dummy@localhost',
+                                        'to':'romeo@montague.lit',
                                         'id':'162BEBB1-F6DB-4D9A-9BD8-CFDCC801A0B2',
                                         'from':'coven@chat.shakespeare.lit/firstwitch',
                                         'type':'groupchat' })
@@ -728,7 +728,7 @@
                     async function (done, _converse) {
 
                 await test_utils.waitForRoster(_converse, 'current', 1);
-                const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+                const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 await test_utils.openChatBoxFor(_converse, contact_jid);
                 await test_utils.waitUntilDiscoConfirmed(_converse, _converse.bare_jid, null, [Strophe.NS.MAM]);
 
@@ -747,7 +747,7 @@
                         `<query queryid="${queryid}" xmlns="urn:xmpp:mam:2">`+
                             `<x type="submit" xmlns="jabber:x:data">`+
                                 `<field type="hidden" var="FORM_TYPE"><value>urn:xmpp:mam:2</value></field>`+
-                                `<field var="with"><value>max.frankfurter@localhost</value></field>`+
+                                `<field var="with"><value>mercutio@montague.lit</value></field>`+
                             `</x>`+
                             `<set xmlns="http://jabber.org/protocol/rsm"><max>50</max><before></before></set>`+
                         `</query>`+

File diff suppressed because it is too large
+ 148 - 148
spec/messages.js


+ 6 - 6
spec/minchats.js

@@ -20,7 +20,7 @@
             _converse.minimized_chats.toggleview.model.browserStorage._clear();
             _converse.minimized_chats.initToggle();
 
-            let contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+            let contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
             await test_utils.openChatBoxFor(_converse, contact_jid)
             let chatview = _converse.chatboxviews.get(contact_jid);
             expect(chatview.model.get('minimized')).toBeFalsy();
@@ -31,7 +31,7 @@
             expect(_converse.minimized_chats.keys().length).toBe(1);
             expect(_converse.minimized_chats.keys()[0]).toBe(contact_jid);
 
-            contact_jid = mock.cur_names[1].replace(/ /g,'.').toLowerCase() + '@localhost';
+            contact_jid = mock.cur_names[1].replace(/ /g,'.').toLowerCase() + '@montague.lit';
             await test_utils.openChatBoxFor(_converse, contact_jid);
             chatview = _converse.chatboxviews.get(contact_jid);
             expect(chatview.model.get('minimized')).toBeFalsy();
@@ -55,7 +55,7 @@
             _converse.minimized_chats.toggleview.model.browserStorage._clear();
             _converse.minimized_chats.initToggle();
 
-            const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+            const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
             await test_utils.openChatBoxFor(_converse, contact_jid);
             const chatview = _converse.chatboxviews.get(contact_jid);
             expect(u.isVisible(_converse.minimized_chats.el)).toBeFalsy();
@@ -90,7 +90,7 @@
             expect(_.isNull(unread_el)).toBe(true);
 
             for (i=0; i<3; i++) {
-                contact_jid = mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@localhost';
+                contact_jid = mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 test_utils.openChatBoxFor(_converse, contact_jid);
             }
             test_utils.waitUntil(() => _converse.chatboxes.length == 4).then(() => {
@@ -161,13 +161,13 @@
                 var view = _converse.chatboxviews.get(room_jid);
                 view.model.set({'minimized': true});
 
-                var contact_jid = mock.cur_names[5].replace(/ /g,'.').toLowerCase() + '@localhost';
+                var contact_jid = mock.cur_names[5].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 var message = 'fires: Your attention is required';
                 var nick = mock.chatroom_names[0],
                     msg = $msg({
                         from: room_jid+'/'+nick,
                         id: (new Date()).getTime(),
-                        to: 'dummy@localhost',
+                        to: 'romeo@montague.lit',
                         type: 'groupchat'
                     }).c('body').t(message).tree();
                 view.model.onMessage(msg);

File diff suppressed because it is too large
+ 154 - 154
spec/muc.js


+ 19 - 19
spec/notification.js

@@ -26,7 +26,7 @@
                         spyOn(_converse, 'isMessageToHiddenChat').and.returnValue(true);
 
                         const message = 'This message will show a desktop notification';
-                        const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost',
+                        const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit',
                             msg = $msg({
                                 from: sender_jid,
                                 to: _converse.connection.jid,
@@ -47,8 +47,8 @@
                             async (done, _converse) => {
 
                         await test_utils.createContacts(_converse, 'current');
-                        await test_utils.openAndEnterChatRoom(_converse, 'lounge', 'localhost', 'dummy');
-                        const view = _converse.api.chatviews.get('lounge@localhost');
+                        await test_utils.openAndEnterChatRoom(_converse, 'lounge', 'montague.lit', 'romeo');
+                        const view = _converse.api.chatviews.get('lounge@montague.lit');
                         if (!view.el.querySelectorAll('.chat-area').length) {
                             view.renderChatArea();
                         }
@@ -64,12 +64,12 @@
                         spyOn(_converse, 'showMessageNotification').and.callThrough();
                         spyOn(_converse, 'areDesktopNotificationsEnabled').and.returnValue(true);
 
-                        const message = 'dummy: This message will show a desktop notification';
+                        const message = 'romeo: This message will show a desktop notification';
                         const nick = mock.chatroom_names[0],
                             msg = $msg({
-                                from: 'lounge@localhost/'+nick,
+                                from: 'lounge@montague.lit/'+nick,
                                 id: (new Date()).getTime(),
-                                to: 'dummy@localhost',
+                                to: 'romeo@montague.lit',
                                 type: 'groupchat'
                             }).c('body').t(message).tree();
 
@@ -94,7 +94,7 @@
                         const stanza = $msg({
                                 'type': 'headline',
                                 'from': 'notify.example.com',
-                                'to': 'dummy@localhost',
+                                'to': 'romeo@montague.lit',
                                 'xml:lang': 'en'
                             })
                             .c('subject').t('SIEVE').up()
@@ -120,7 +120,7 @@
                         const stanza = $msg({
                                 'type': 'headline',
                                 'from': 'someone@notify.example.com',
-                                'to': 'dummy@localhost',
+                                'to': 'romeo@montague.lit',
                                 'xml:lang': 'en'
                             })
                             .c('subject').t('SIEVE').up()
@@ -143,7 +143,7 @@
                         test_utils.createContacts(_converse, 'current');
                         spyOn(_converse, 'areDesktopNotificationsEnabled').and.returnValue(true);
                         spyOn(_converse, 'showChatStateNotification');
-                        const jid = mock.cur_names[2].replace(/ /g,'.').toLowerCase() + '@localhost';
+                        const jid = mock.cur_names[2].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                         _converse.roster.get(jid).presence.set('show', 'busy'); // This will emit 'contactStatusChanged'
                         expect(_converse.areDesktopNotificationsEnabled).toHaveBeenCalled();
                         expect(_converse.showChatStateNotification).toHaveBeenCalled();
@@ -173,18 +173,18 @@
                         async (done, _converse) => {
 
                     test_utils.createContacts(_converse, 'current');
-                    await test_utils.openAndEnterChatRoom(_converse, 'lounge', 'localhost', 'dummy');
+                    await test_utils.openAndEnterChatRoom(_converse, 'lounge', 'montague.lit', 'romeo');
                     _converse.play_sounds = true;
                     spyOn(_converse, 'playSoundNotification');
-                    const view = _converse.chatboxviews.get('lounge@localhost');
+                    const view = _converse.chatboxviews.get('lounge@montague.lit');
                     if (!view.el.querySelectorAll('.chat-area').length) {
                         view.renderChatArea();
                     }
-                    let text = 'This message will play a sound because it mentions dummy';
+                    let text = 'This message will play a sound because it mentions romeo';
                     let message = $msg({
-                        from: 'lounge@localhost/otheruser',
+                        from: 'lounge@montague.lit/otheruser',
                         id: '1',
-                        to: 'dummy@localhost',
+                        to: 'romeo@montague.lit',
                         type: 'groupchat'
                     }).c('body').t(text);
                     await view.model.onMessage(message.nodeTree);
@@ -193,20 +193,20 @@
 
                     text = "This message won't play a sound";
                     message = $msg({
-                        from: 'lounge@localhost/otheruser',
+                        from: 'lounge@montague.lit/otheruser',
                         id: '2',
-                        to: 'dummy@localhost',
+                        to: 'romeo@montague.lit',
                         type: 'groupchat'
                     }).c('body').t(text);
                     await view.model.onMessage(message.nodeTree);
                     expect(_converse.playSoundNotification, 1);
                     _converse.play_sounds = false;
 
-                    text = "This message won't play a sound because it is sent by dummy";
+                    text = "This message won't play a sound because it is sent by romeo";
                     message = $msg({
-                        from: 'lounge@localhost/dummy',
+                        from: 'lounge@montague.lit/romeo',
                         id: '3',
-                        to: 'dummy@localhost',
+                        to: 'romeo@montague.lit',
                         type: 'groupchat'
                     }).c('body').t(text);
                     await view.model.onMessage(message.nodeTree);

+ 54 - 54
spec/omemo.js

@@ -83,7 +83,7 @@
             const message = 'This message will be encrypted'
             test_utils.createContacts(_converse, 'current', 1);
             _converse.api.trigger('rosterContactsFetched');
-            const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+            const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
             const view = await test_utils.openChatBoxFor(_converse, contact_jid);
             const payload = await view.model.encryptMessage(message);
             const result = await view.model.decryptMessage(payload);
@@ -100,7 +100,7 @@
             let sent_stanza;
             test_utils.createContacts(_converse, 'current', 1);
             _converse.api.trigger('rosterContactsFetched');
-            const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+            const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
             await test_utils.waitUntil(() => initializedOMEMO(_converse));
             await test_utils.openChatBoxFor(_converse, contact_jid);
             let iq_stanza = await test_utils.waitUntil(() => deviceListFetched(_converse, contact_jid));
@@ -171,8 +171,8 @@
             _converse.connection._dataRecv(test_utils.createRequest(stanza));
             await test_utils.waitUntil(() => sent_stanza);
             expect(sent_stanza.toLocaleString()).toBe(
-                `<message from="dummy@localhost/resource" id="${sent_stanza.nodeTree.getAttribute("id")}" `+
-                            `to="max.frankfurter@localhost" `+
+                `<message from="romeo@montague.lit/orchard" id="${sent_stanza.nodeTree.getAttribute("id")}" `+
+                            `to="mercutio@montague.lit" `+
                             `type="chat" xmlns="jabber:client">`+
                     `<body>This is an OMEMO encrypted message which your client doesn’t seem to support. Find more information on https://conversations.im/omemo</body>`+
                     `<request xmlns="urn:xmpp:receipts"/>`+
@@ -250,8 +250,8 @@
                 'muc_unmoderated',
                 'muc_nonanonymous'
             ];
-            await test_utils.openAndEnterChatRoom(_converse, 'lounge', 'localhost', 'dummy', features);
-            const view = _converse.chatboxviews.get('lounge@localhost');
+            await test_utils.openAndEnterChatRoom(_converse, 'lounge', 'montague.lit', 'romeo', features);
+            const view = _converse.chatboxviews.get('lounge@montague.lit');
             await test_utils.waitUntil(() => initializedOMEMO(_converse));
 
             const toolbar = view.el.querySelector('.chat-toolbar');
@@ -260,15 +260,15 @@
             expect(view.model.get('omemo_active')).toBe(true);
 
             // newguy enters the room
-            const contact_jid = 'newguy@localhost';
+            const contact_jid = 'newguy@montague.lit';
             let stanza = $pres({
-                    'to': 'dummy@localhost/resource',
-                    'from': 'lounge@localhost/newguy'
+                    'to': 'romeo@montague.lit/orchard',
+                    'from': 'lounge@montague.lit/newguy'
                 })
                 .c('x', {xmlns: Strophe.NS.MUC_USER})
                 .c('item', {
                     'affiliation': 'none',
-                    'jid': 'newguy@localhost/_converse.js-290929789',
+                    'jid': 'newguy@montague.lit/_converse.js-290929789',
                     'role': 'participant'
                 }).tree();
             _converse.connection._dataRecv(test_utils.createRequest(stanza));
@@ -276,7 +276,7 @@
             // Wait for Converse to fetch newguy's device list
             let iq_stanza = await test_utils.waitUntil(() => deviceListFetched(_converse, contact_jid));
             expect(Strophe.serialize(iq_stanza)).toBe(
-                `<iq from="dummy@localhost" id="${iq_stanza.getAttribute("id")}" to="${contact_jid}" type="get" xmlns="jabber:client">`+
+                `<iq from="romeo@montague.lit" id="${iq_stanza.getAttribute("id")}" to="${contact_jid}" type="get" xmlns="jabber:client">`+
                     `<pubsub xmlns="http://jabber.org/protocol/pubsub">`+
                         `<items node="eu.siacs.conversations.axolotl.devicelist"/>`+
                     `</pubsub>`+
@@ -361,9 +361,9 @@
             const sent_stanza = _converse.connection.send.calls.all()[0].args[0];
 
             expect(Strophe.serialize(sent_stanza)).toBe(
-                `<message from="dummy@localhost/resource" `+
+                `<message from="romeo@montague.lit/orchard" `+
                          `id="${sent_stanza.nodeTree.getAttribute("id")}" `+
-                         `to="lounge@localhost" `+
+                         `to="lounge@montague.lit" `+
                          `type="groupchat" `+
                          `xmlns="jabber:client">`+
                     `<body>This is an OMEMO encrypted message which your client doesn’t seem to support. Find more information on https://conversations.im/omemo</body>`+
@@ -391,7 +391,7 @@
             let sent_stanza;
             test_utils.createContacts(_converse, 'current', 1);
             _converse.api.trigger('rosterContactsFetched');
-            const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+            const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
             await test_utils.waitUntil(() => initializedOMEMO(_converse));
             await test_utils.openChatBoxFor(_converse, contact_jid);
             let iq_stanza = await test_utils.waitUntil(() => deviceListFetched(_converse, contact_jid));
@@ -416,17 +416,17 @@
             // Test reception of an encrypted carbon message
             const obj = await view.model.encryptMessage('This is an encrypted carbon message from another device of mine')
             const carbon = u.toStanza(`
-                <message xmlns="jabber:client" to="dummy@localhost/resource" from="dummy@localhost" type="chat">
+                <message xmlns="jabber:client" to="romeo@montague.lit/orchard" from="romeo@montague.lit" type="chat">
                     <sent xmlns="urn:xmpp:carbons:2">
                         <forwarded xmlns="urn:xmpp:forward:0">
                         <message xmlns="jabber:client"
-                                 from="dummy@localhost/gajim.HE02SW1L"
+                                 from="romeo@montague.lit/gajim.HE02SW1L"
                                  xml:lang="en"
                                  to="${contact_jid}/gajim.0LATM5V2"
                                  type="chat" id="87141781-61d6-4eb3-9a31-429935a61b76">
 
-                            <archived xmlns="urn:xmpp:mam:tmp" by="dummy@localhost" id="1554033877043470"/>
-                            <stanza-id xmlns="urn:xmpp:sid:0" by="dummy@localhost" id="1554033877043470"/>
+                            <archived xmlns="urn:xmpp:mam:tmp" by="romeo@montague.lit" id="1554033877043470"/>
+                            <stanza-id xmlns="urn:xmpp:sid:0" by="romeo@montague.lit" id="1554033877043470"/>
                             <request xmlns="urn:xmpp:receipts"/>
                             <active xmlns="http://jabber.org/protocol/chatstates"/>
                             <origin-id xmlns="urn:xmpp:sid:0" id="87141781-61d6-4eb3-9a31-429935a61b76"/>
@@ -465,7 +465,7 @@
             });
             iq_stanza = await test_utils.waitUntil(() => bundleFetched(_converse, _converse.bare_jid, '988349631'));
             expect(Strophe.serialize(iq_stanza)).toBe(
-                `<iq from="dummy@localhost" id="${iq_stanza.getAttribute("id")}" to="${_converse.bare_jid}" type="get" xmlns="jabber:client">`+
+                `<iq from="romeo@montague.lit" id="${iq_stanza.getAttribute("id")}" to="${_converse.bare_jid}" type="get" xmlns="jabber:client">`+
                     `<pubsub xmlns="http://jabber.org/protocol/pubsub">`+
                         `<items node="eu.siacs.conversations.axolotl.bundles:988349631"/>`+
                     `</pubsub>`+
@@ -490,19 +490,19 @@
                 'muc_unmoderated',
                 'muc_nonanonymous'
             ];
-            await test_utils.openAndEnterChatRoom(_converse, 'lounge', 'localhost', 'dummy', features);
-            const view = _converse.chatboxviews.get('lounge@localhost');
+            await test_utils.openAndEnterChatRoom(_converse, 'lounge', 'montague.lit', 'romeo', features);
+            const view = _converse.chatboxviews.get('lounge@montague.lit');
             await test_utils.waitUntil(() => initializedOMEMO(_converse));
 
-            const contact_jid = 'newguy@localhost';
+            const contact_jid = 'newguy@montague.lit';
             let stanza = $pres({
-                    'to': 'dummy@localhost/resource',
-                    'from': 'lounge@localhost/newguy'
+                    'to': 'romeo@montague.lit/orchard',
+                    'from': 'lounge@montague.lit/newguy'
                 })
                 .c('x', {xmlns: Strophe.NS.MUC_USER})
                 .c('item', {
                     'affiliation': 'none',
-                    'jid': 'newguy@localhost/_converse.js-290929789',
+                    'jid': 'newguy@montague.lit/_converse.js-290929789',
                     'role': 'participant'
                 }).tree();
             _converse.connection._dataRecv(test_utils.createRequest(stanza));
@@ -522,7 +522,7 @@
             });
             let iq_stanza = await test_utils.waitUntil(() => deviceListFetched(_converse, contact_jid));
             expect(Strophe.serialize(iq_stanza)).toBe(
-                `<iq from="dummy@localhost" id="${iq_stanza.getAttribute("id")}" to="${contact_jid}" type="get" xmlns="jabber:client">`+
+                `<iq from="romeo@montague.lit" id="${iq_stanza.getAttribute("id")}" to="${contact_jid}" type="get" xmlns="jabber:client">`+
                     `<pubsub xmlns="http://jabber.org/protocol/pubsub">`+
                         `<items node="eu.siacs.conversations.axolotl.devicelist"/>`+
                     `</pubsub>`+
@@ -594,7 +594,7 @@
             const header = document.querySelector('.alert-danger .modal-title');
             expect(header.textContent).toBe("Error");
             expect(u.ancestor(header, '.modal-content').querySelector('.modal-body p').textContent.trim())
-                .toBe("Sorry, we're unable to send an encrypted message because newguy@localhost requires you "+
+                .toBe("Sorry, we're unable to send an encrypted message because newguy@montague.lit requires you "+
                       "to be subscribed to their presence in order to see their OMEMO information");
 
             expect(view.model.get('omemo_supported')).toBe(false);
@@ -611,7 +611,7 @@
             let view, sent_stanza;
             test_utils.createContacts(_converse, 'current', 1);
             _converse.api.trigger('rosterContactsFetched');
-            const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+            const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
 
             await test_utils.waitUntil(() => initializedOMEMO(_converse));
             const obj = await _converse.ChatBox.prototype.encryptMessage('This is an encrypted message from the contact');
@@ -666,7 +666,7 @@
 
             iq_stanza = await test_utils.waitUntil(() => bundleHasBeenPublished(_converse));
             expect(Strophe.serialize(iq_stanza)).toBe(
-                `<iq from="dummy@localhost" id="${iq_stanza.getAttribute("id")}" type="set" xmlns="jabber:client">`+
+                `<iq from="romeo@montague.lit" id="${iq_stanza.getAttribute("id")}" type="set" xmlns="jabber:client">`+
                     `<pubsub xmlns="http://jabber.org/protocol/pubsub">`+
                         `<publish node="eu.siacs.conversations.axolotl.bundles:123456789">`+
                             `<item>`+
@@ -715,12 +715,12 @@
             );
 
             test_utils.createContacts(_converse, 'current', 1);
-            const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+            const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
 
             // Wait until own devices are fetched
             let iq_stanza = await test_utils.waitUntil(() => deviceListFetched(_converse, _converse.bare_jid));
             expect(Strophe.serialize(iq_stanza)).toBe(
-                `<iq from="dummy@localhost" id="${iq_stanza.getAttribute("id")}" to="dummy@localhost" type="get" xmlns="jabber:client">`+
+                `<iq from="romeo@montague.lit" id="${iq_stanza.getAttribute("id")}" to="romeo@montague.lit" type="get" xmlns="jabber:client">`+
                     `<pubsub xmlns="http://jabber.org/protocol/pubsub">`+
                         `<items node="eu.siacs.conversations.axolotl.devicelist"/>`+
                     `</pubsub>`+
@@ -841,7 +841,7 @@
             // Check that our own device is added again, but that removed
             // devices are not added.
             expect(Strophe.serialize(iq_stanza)).toBe(
-                `<iq from="dummy@localhost" id="${iq_stanza.getAttribute(`id`)}" type="set" xmlns="jabber:client">`+
+                `<iq from="romeo@montague.lit" id="${iq_stanza.getAttribute(`id`)}" type="set" xmlns="jabber:client">`+
                     `<pubsub xmlns="http://jabber.org/protocol/pubsub">`+
                         `<publish node="eu.siacs.conversations.axolotl.devicelist">`+
                             `<item>`+
@@ -889,10 +889,10 @@
             );
 
             test_utils.createContacts(_converse, 'current');
-            const contact_jid = mock.cur_names[3].replace(/ /g,'.').toLowerCase() + '@localhost';
+            const contact_jid = mock.cur_names[3].replace(/ /g,'.').toLowerCase() + '@montague.lit';
             let iq_stanza = await test_utils.waitUntil(() => deviceListFetched(_converse, _converse.bare_jid));
             expect(Strophe.serialize(iq_stanza)).toBe(
-                `<iq from="dummy@localhost" id="${iq_stanza.getAttribute("id")}" to="dummy@localhost" type="get" xmlns="jabber:client">`+
+                `<iq from="romeo@montague.lit" id="${iq_stanza.getAttribute("id")}" to="romeo@montague.lit" type="get" xmlns="jabber:client">`+
                     `<pubsub xmlns="http://jabber.org/protocol/pubsub">`+
                         `<items node="eu.siacs.conversations.axolotl.devicelist"/>`+
                     `</pubsub>`+
@@ -1042,7 +1042,7 @@
 
             test_utils.createContacts(_converse, 'current', 1);
             _converse.api.trigger('rosterContactsFetched');
-            const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+            const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
             let iq_stanza = await test_utils.waitUntil(() => deviceListFetched(_converse, _converse.bare_jid));
             let stanza = $iq({
                 'from': contact_jid,
@@ -1067,7 +1067,7 @@
 
             iq_stanza = await test_utils.waitUntil(() => bundleHasBeenPublished(_converse));
             expect(Strophe.serialize(iq_stanza)).toBe(
-                `<iq from="dummy@localhost" id="${iq_stanza.getAttribute("id")}" type="set" xmlns="jabber:client">`+
+                `<iq from="romeo@montague.lit" id="${iq_stanza.getAttribute("id")}" type="set" xmlns="jabber:client">`+
                     `<pubsub xmlns="http://jabber.org/protocol/pubsub">`+
                         `<publish node="eu.siacs.conversations.axolotl.bundles:123456789">`+
                             `<item>`+
@@ -1119,11 +1119,11 @@
 
             test_utils.createContacts(_converse, 'current', 1);
             _converse.api.trigger('rosterContactsFetched');
-            const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+            const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
 
             let iq_stanza = await test_utils.waitUntil(() => deviceListFetched(_converse, _converse.bare_jid));
             expect(Strophe.serialize(iq_stanza)).toBe(
-                `<iq from="dummy@localhost" id="${iq_stanza.getAttribute("id")}" to="dummy@localhost" type="get" xmlns="jabber:client">`+
+                `<iq from="romeo@montague.lit" id="${iq_stanza.getAttribute("id")}" to="romeo@montague.lit" type="get" xmlns="jabber:client">`+
                     `<pubsub xmlns="http://jabber.org/protocol/pubsub">`+
                         `<items node="eu.siacs.conversations.axolotl.devicelist"/>`+
                     `</pubsub>`+
@@ -1149,7 +1149,7 @@
             // Check that own device was published
             iq_stanza = await test_utils.waitUntil(() => ownDeviceHasBeenPublished(_converse));
             expect(Strophe.serialize(iq_stanza)).toBe(
-                `<iq from="dummy@localhost" id="${iq_stanza.getAttribute(`id`)}" type="set" xmlns="jabber:client">`+
+                `<iq from="romeo@montague.lit" id="${iq_stanza.getAttribute(`id`)}" type="set" xmlns="jabber:client">`+
                     `<pubsub xmlns="http://jabber.org/protocol/pubsub">`+
                         `<publish node="eu.siacs.conversations.axolotl.devicelist">`+
                             `<item>`+
@@ -1200,7 +1200,7 @@
             await test_utils.openChatBoxFor(_converse, contact_jid);
             iq_stanza = await test_utils.waitUntil(() => deviceListFetched(_converse, contact_jid));
             expect(Strophe.serialize(iq_stanza)).toBe(
-                `<iq from="dummy@localhost" id="${iq_stanza.getAttribute("id")}" to="${contact_jid}" type="get" xmlns="jabber:client">`+
+                `<iq from="romeo@montague.lit" id="${iq_stanza.getAttribute("id")}" to="${contact_jid}" type="get" xmlns="jabber:client">`+
                     `<pubsub xmlns="http://jabber.org/protocol/pubsub">`+
                         `<items node="eu.siacs.conversations.axolotl.devicelist"/>`+
                     `</pubsub>`+
@@ -1293,8 +1293,8 @@
                 'muc_unmoderated',
                 'muc_nonanonymous'
             ];
-            await test_utils.openAndEnterChatRoom(_converse, 'lounge', 'localhost', 'dummy', features);
-            const view = _converse.chatboxviews.get('lounge@localhost');
+            await test_utils.openAndEnterChatRoom(_converse, 'lounge', 'montague.lit', 'romeo', features);
+            const view = _converse.chatboxviews.get('lounge@montague.lit');
             await test_utils.waitUntil(() => initializedOMEMO(_converse));
 
             const toolbar = view.el.querySelector('.chat-toolbar');
@@ -1314,22 +1314,22 @@
             expect(u.hasClass('disabled', toggle)).toBe(false);
             expect(view.model.get('omemo_supported')).toBe(true);
 
-            let contact_jid = 'newguy@localhost';
+            let contact_jid = 'newguy@montague.lit';
             let stanza = $pres({
-                    to: 'dummy@localhost/resource',
-                    from: 'lounge@localhost/newguy'
+                    to: 'romeo@montague.lit/orchard',
+                    from: 'lounge@montague.lit/newguy'
                 })
                 .c('x', {xmlns: Strophe.NS.MUC_USER})
                 .c('item', {
                     'affiliation': 'none',
-                    'jid': 'newguy@localhost/_converse.js-290929789',
+                    'jid': 'newguy@montague.lit/_converse.js-290929789',
                     'role': 'participant'
                 }).tree();
             _converse.connection._dataRecv(test_utils.createRequest(stanza));
 
             let iq_stanza = await test_utils.waitUntil(() => deviceListFetched(_converse, contact_jid));
             expect(Strophe.serialize(iq_stanza)).toBe(
-                `<iq from="dummy@localhost" id="${iq_stanza.getAttribute("id")}" to="${contact_jid}" type="get" xmlns="jabber:client">`+
+                `<iq from="romeo@montague.lit" id="${iq_stanza.getAttribute("id")}" to="${contact_jid}" type="get" xmlns="jabber:client">`+
                     `<pubsub xmlns="http://jabber.org/protocol/pubsub">`+
                         `<items node="eu.siacs.conversations.axolotl.devicelist"/>`+
                     `</pubsub>`+
@@ -1401,10 +1401,10 @@
 
             // Someone enters the room who doesn't have OMEMO support, while we
             // have OMEMO activated...
-            contact_jid = 'oldguy@localhost';
+            contact_jid = 'oldguy@montague.lit';
             stanza = $pres({
-                    to: 'dummy@localhost/resource',
-                    from: 'lounge@localhost/oldguy'
+                    to: 'romeo@montague.lit/orchard',
+                    from: 'lounge@montague.lit/oldguy'
                 })
                 .c('x', {xmlns: Strophe.NS.MUC_USER})
                 .c('item', {
@@ -1415,7 +1415,7 @@
             _converse.connection._dataRecv(test_utils.createRequest(stanza));
             iq_stanza = await test_utils.waitUntil(() => deviceListFetched(_converse, contact_jid));
             expect(Strophe.serialize(iq_stanza)).toBe(
-                `<iq from="dummy@localhost" id="${iq_stanza.getAttribute("id")}" to="${contact_jid}" type="get" xmlns="jabber:client">`+
+                `<iq from="romeo@montague.lit" id="${iq_stanza.getAttribute("id")}" to="${contact_jid}" type="get" xmlns="jabber:client">`+
                     `<pubsub xmlns="http://jabber.org/protocol/pubsub">`+
                         `<items node="eu.siacs.conversations.axolotl.devicelist"/>`+
                     `</pubsub>`+
@@ -1466,7 +1466,7 @@
 
             test_utils.createContacts(_converse, 'current', 1);
             _converse.api.trigger('rosterContactsFetched');
-            const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+            const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
             await test_utils.openChatBoxFor(_converse, contact_jid)
             // We simply emit, to avoid doing all the setup work
             _converse.api.trigger('OMEMOInitialized');
@@ -1478,7 +1478,7 @@
             await test_utils.waitUntil(() => u.isVisible(modal.el), 1000);
             let iq_stanza = await test_utils.waitUntil(() => deviceListFetched(_converse, contact_jid));
             expect(Strophe.serialize(iq_stanza)).toBe(
-                `<iq from="dummy@localhost" id="${iq_stanza.getAttribute("id")}" to="max.frankfurter@localhost" type="get" xmlns="jabber:client">`+
+                `<iq from="romeo@montague.lit" id="${iq_stanza.getAttribute("id")}" to="mercutio@montague.lit" type="get" xmlns="jabber:client">`+
                     `<pubsub xmlns="http://jabber.org/protocol/pubsub"><items node="eu.siacs.conversations.axolotl.devicelist"/></pubsub>`+
                 `</iq>`);
             let stanza = $iq({
@@ -1495,7 +1495,7 @@
             await test_utils.waitUntil(() => u.isVisible(modal.el), 1000);
             iq_stanza = await test_utils.waitUntil(() => bundleFetched(_converse, contact_jid, '555'));
             expect(Strophe.serialize(iq_stanza)).toBe(
-                `<iq from="dummy@localhost" id="${iq_stanza.getAttribute("id")}" to="max.frankfurter@localhost" type="get" xmlns="jabber:client">`+
+                `<iq from="romeo@montague.lit" id="${iq_stanza.getAttribute("id")}" to="mercutio@montague.lit" type="get" xmlns="jabber:client">`+
                     `<pubsub xmlns="http://jabber.org/protocol/pubsub">`+
                         `<items node="eu.siacs.conversations.axolotl.bundles:555"/>`+
                     `</pubsub>`+

+ 1 - 1
spec/ping.js

@@ -44,7 +44,7 @@
                 });
                 _converse.ping();
                 expect(sent_stanza.toLocaleString()).toBe(
-                    `<iq id="${IQ_id}" to="localhost" type="get" xmlns="jabber:client">`+
+                    `<iq id="${IQ_id}" to="montague.lit" type="get" xmlns="jabber:client">`+
                         `<ping xmlns="urn:xmpp:ping"/>`+
                     `</iq>`);
                 done();

+ 11 - 11
spec/presence.js

@@ -120,11 +120,11 @@
 
             test_utils.openControlBox();
             test_utils.createContacts(_converse, 'current'); // Create some contacts so that we can test positioning
-            const contact_jid = mock.cur_names[8].replace(/ /g,'.').toLowerCase() + '@localhost';
+            const contact_jid = mock.cur_names[8].replace(/ /g,'.').toLowerCase() + '@montague.lit';
             const contact = _converse.roster.get(contact_jid);
             let stanza = u.toStanza(`
                 <presence xmlns="jabber:client"
-                        to="dummy@localhost/converse.js-21770972"
+                        to="romeo@montague.lit/converse.js-21770972"
                         from="${contact_jid}/priority-1-resource">
                     <priority>1</priority>
                     <c xmlns="http://jabber.org/protocol/caps" hash="sha-1" ext="voice-v1 camera-v1 video-v1"
@@ -142,7 +142,7 @@
 
             stanza = u.toStanza(
             '<presence xmlns="jabber:client"'+
-            '          to="dummy@localhost/converse.js-21770972"'+
+            '          to="romeo@montague.lit/converse.js-21770972"'+
             '          from="'+contact_jid+'/priority-0-resource">'+
             '    <status/>'+
             '    <priority>0</priority>'+
@@ -162,7 +162,7 @@
 
             stanza = u.toStanza(
             '<presence xmlns="jabber:client"'+
-            '          to="dummy@localhost/converse.js-21770972"'+
+            '          to="romeo@montague.lit/converse.js-21770972"'+
             '          from="'+contact_jid+'/priority-2-resource">'+
             '    <priority>2</priority>'+
             '    <show>dnd</show>'+
@@ -179,7 +179,7 @@
 
             stanza = u.toStanza(
             '<presence xmlns="jabber:client"'+
-            '          to="dummy@localhost/converse.js-21770972"'+
+            '          to="romeo@montague.lit/converse.js-21770972"'+
             '          from="'+contact_jid+'/priority-3-resource">'+
             '    <priority>3</priority>'+
             '    <show>away</show>'+
@@ -198,7 +198,7 @@
 
             stanza = u.toStanza(
             '<presence xmlns="jabber:client"'+
-            '          to="dummy@localhost/converse.js-21770972"'+
+            '          to="romeo@montague.lit/converse.js-21770972"'+
             '          from="'+contact_jid+'/older-priority-1-resource">'+
             '    <priority>1</priority>'+
             '    <show>dnd</show>'+
@@ -220,7 +220,7 @@
 
             stanza = u.toStanza(
             '<presence xmlns="jabber:client"'+
-            '          to="dummy@localhost/converse.js-21770972"'+
+            '          to="romeo@montague.lit/converse.js-21770972"'+
             '          type="unavailable"'+
             '          from="'+contact_jid+'/priority-3-resource">'+
             '</presence>');
@@ -238,7 +238,7 @@
 
             stanza = u.toStanza(
             '<presence xmlns="jabber:client"'+
-            '          to="dummy@localhost/converse.js-21770972"'+
+            '          to="romeo@montague.lit/converse.js-21770972"'+
             '          type="unavailable"'+
             '          from="'+contact_jid+'/priority-2-resource">'+
             '</presence>');
@@ -254,7 +254,7 @@
 
             stanza = u.toStanza(
             '<presence xmlns="jabber:client"'+
-            '          to="dummy@localhost/converse.js-21770972"'+
+            '          to="romeo@montague.lit/converse.js-21770972"'+
             '          type="unavailable"'+
             '          from="'+contact_jid+'/priority-1-resource">'+
             '</presence>');
@@ -268,7 +268,7 @@
 
             stanza = u.toStanza(
             '<presence xmlns="jabber:client"'+
-            '          to="dummy@localhost/converse.js-21770972"'+
+            '          to="romeo@montague.lit/converse.js-21770972"'+
             '          type="unavailable"'+
             '          from="'+contact_jid+'/older-priority-1-resource">'+
             '</presence>');
@@ -280,7 +280,7 @@
 
             stanza = u.toStanza(
             '<presence xmlns="jabber:client"'+
-            '          to="dummy@localhost/converse.js-21770972"'+
+            '          to="romeo@montague.lit/converse.js-21770972"'+
             '          type="unavailable"'+
             '          from="'+contact_jid+'/priority-0-resource">'+
             '</presence>');

+ 7 - 7
spec/protocol.js

@@ -55,7 +55,7 @@
                     async function (done, _converse) {
 
                 var contact, sent_stanza, IQ_id, stanza, modal;
-                await test_utils.waitUntilDiscoConfirmed(_converse, 'localhost', [], ['vcard-temp']);
+                await test_utils.waitUntilDiscoConfirmed(_converse, 'montague.lit', [], ['vcard-temp']);
                 await test_utils.waitUntil(() => _converse.xmppstatus.vcard.get('fullname'), 300);
                 /* The process by which a user subscribes to a contact, including
                  * the interaction between roster items and subscription states.
@@ -177,7 +177,7 @@
                 expect(contact.subscribe).toHaveBeenCalled();
                 expect(sent_stanza.toLocaleString()).toBe( // Strophe adds the xmlns attr (although not in spec)
                     `<presence to="contact@example.org" type="subscribe" xmlns="jabber:client">`+
-                        `<nick xmlns="http://jabber.org/protocol/nick">Max Mustermann</nick>`+
+                        `<nick xmlns="http://jabber.org/protocol/nick">Romeo Montague</nick>`+
                     `</presence>`
                 );
                 /* As a result, the user's server MUST initiate a second roster
@@ -274,7 +274,7 @@
                 _converse.connection._dataRecv(test_utils.createRequest(stanza));
                 // Check that the IQ set was acknowledged.
                 expect(Strophe.serialize(sent_stanza)).toBe( // Strophe adds the xmlns attr (although not in spec)
-                    `<iq from="dummy@localhost/resource" id="${IQ_id}" type="result" xmlns="jabber:client"/>`
+                    `<iq from="romeo@montague.lit/orchard" id="${IQ_id}" type="result" xmlns="jabber:client"/>`
                 );
                 expect(_converse.roster.updateContact).toHaveBeenCalled();
 
@@ -362,7 +362,7 @@
                 expect(u.hasClass('to', contacts[0])).toBe(false);
                 expect(u.hasClass('both', contacts[0])).toBe(true);
                 done();
-                
+
             }));
 
             it("Alternate Flow: Contact Declines Subscription Request",
@@ -458,7 +458,7 @@
                     { roster_groups: false },
                     async function (done, _converse) {
 
-                var sent_IQ, IQ_id, jid = 'annegreet.gomez@localhost';
+                var sent_IQ, IQ_id, jid = 'abram@montague.lit';
                 test_utils.openControlBox(_converse);
                 test_utils.createContacts(_converse, 'current');
                 spyOn(window, 'confirm').and.returnValue(true);
@@ -472,7 +472,7 @@
                 });
                 const header = sizzle('a:contains("My contacts")', _converse.rosterview.el).pop();
                 await test_utils.waitUntil(() => header.parentElement.querySelectorAll('li').length);
-                        
+
                 // remove the first user
                 header.parentElement.querySelector('li .remove-xmpp-contact').click();
                 expect(window.confirm).toHaveBeenCalled();
@@ -499,7 +499,7 @@
                 expect(sent_IQ.toLocaleString()).toBe(
                     `<iq id="${IQ_id}" type="set" xmlns="jabber:client">`+
                         `<query xmlns="jabber:iq:roster">`+
-                            `<item jid="annegreet.gomez@localhost" subscription="remove"/>`+
+                            `<item jid="abram@montague.lit" subscription="remove"/>`+
                         `</query>`+
                     `</iq>`);
 

+ 2 - 2
spec/push.js

@@ -78,12 +78,12 @@
                     `<enable jid="push-5@client.example" node="yxs32uqsflafdk3iuqo" xmlns="urn:xmpp:push:0"/>`+
                 `</iq>`
             );
-            const result = u.toStanza(`<iq type="result" id="${iq.getAttribute('id')}" to="dummy@localhost" />`);
+            const result = u.toStanza(`<iq type="result" id="${iq.getAttribute('id')}" to="romeo@montague.lit" />`);
             _converse.connection._dataRecv(test_utils.createRequest(result));
 
             await test_utils.waitUntil(() => _converse.session.get('push_enabled'));
             expect(_converse.session.get('push_enabled').length).toBe(1);
-            expect(_.includes(_converse.session.get('push_enabled'), 'dummy@localhost')).toBe(true);
+            expect(_.includes(_converse.session.get('push_enabled'), 'romeo@montague.lit')).toBe(true);
 
             test_utils.openAndEnterChatRoom(_converse, 'coven', 'chat.shakespeare.lit', 'oldhag');
             await test_utils.waitUntilDiscoConfirmed(

+ 5 - 5
spec/room_registration.js

@@ -36,7 +36,7 @@
                     ).pop());
                 }).then(stanza => {
                     expect(Strophe.serialize(stanza))
-                    .toBe(`<iq from="dummy@localhost/resource" id="${stanza.getAttribute('id')}" to="coven@chat.shakespeare.lit" `+
+                    .toBe(`<iq from="romeo@montague.lit/orchard" id="${stanza.getAttribute('id')}" to="coven@chat.shakespeare.lit" `+
                                 `type="get" xmlns="jabber:client">`+
                             `<query xmlns="jabber:iq:register"/></iq>`);
                     view = _converse.chatboxviews.get(room_jid);
@@ -59,7 +59,7 @@
                     ).pop());
                 }).then(stanza => {
                     expect(Strophe.serialize(stanza)).toBe(
-                        `<iq from="dummy@localhost/resource" id="${stanza.getAttribute('id')}" to="coven@chat.shakespeare.lit" type="set" xmlns="jabber:client">`+
+                        `<iq from="romeo@montague.lit/orchard" id="${stanza.getAttribute('id')}" to="coven@chat.shakespeare.lit" type="set" xmlns="jabber:client">`+
                             `<query xmlns="jabber:iq:register">`+
                                 `<x type="submit" xmlns="jabber:x:data">`+
                                     `<field var="FORM_TYPE"><value>http://jabber.org/protocol/muc#register</value></field>`+
@@ -94,7 +94,7 @@
                     const features_stanza = $iq({
                         'from': room_jid,
                         'id': stanza.getAttribute('id'),
-                        'to': 'dummy@localhost/desktop',
+                        'to': 'romeo@montague.lit/desktop',
                         'type': 'result'
                     }).c('query', { 'xmlns': 'http://jabber.org/protocol/disco#info'})
                         .c('identity', {
@@ -129,7 +129,7 @@
                     ).pop());
                 }).then(stanza => {
                     expect(Strophe.serialize(stanza))
-                    .toBe(`<iq from="dummy@localhost/resource" id="${stanza.getAttribute('id')}" to="coven@chat.shakespeare.lit" `+
+                    .toBe(`<iq from="romeo@montague.lit/orchard" id="${stanza.getAttribute('id')}" to="coven@chat.shakespeare.lit" `+
                                 `type="get" xmlns="jabber:client">`+
                             `<query xmlns="jabber:iq:register"/></iq>`);
                     view = _converse.chatboxviews.get(room_jid);
@@ -152,7 +152,7 @@
                     ).pop());
                 }).then(stanza => {
                     expect(Strophe.serialize(stanza)).toBe(
-                        `<iq from="dummy@localhost/resource" id="${stanza.getAttribute('id')}" to="coven@chat.shakespeare.lit" type="set" xmlns="jabber:client">`+
+                        `<iq from="romeo@montague.lit/orchard" id="${stanza.getAttribute('id')}" to="coven@chat.shakespeare.lit" type="set" xmlns="jabber:client">`+
                             `<query xmlns="jabber:iq:register">`+
                                 `<x type="submit" xmlns="jabber:x:data">`+
                                     `<field var="FORM_TYPE"><value>http://jabber.org/protocol/muc#register</value></field>`+

+ 18 - 18
spec/roomslist.js

@@ -23,7 +23,7 @@
             let room_els = _converse.rooms_list_view.el.querySelectorAll(".open-room");
             expect(room_els.length).toBe(1);
             expect(room_els[0].innerText).toBe('room@conference.shakespeare.lit');
-            await test_utils.openChatRoom(_converse, 'lounge', 'localhost', 'dummy');
+            await test_utils.openChatRoom(_converse, 'lounge', 'montague.lit', 'romeo');
             room_els = _converse.rooms_list_view.el.querySelectorAll(".open-room");
             expect(room_els.length).toBe(2);
 
@@ -31,11 +31,11 @@
             view.close();
             room_els = _converse.rooms_list_view.el.querySelectorAll(".open-room");
             expect(room_els.length).toBe(1);
-            expect(room_els[0].innerText).toBe('lounge@localhost');
+            expect(room_els[0].innerText).toBe('lounge@montague.lit');
             list = controlbox.el.querySelector('div.rooms-list-container');
             test_utils.waitUntil(() => _.includes(list.classList, 'hidden'));
 
-            view = _converse.chatboxviews.get('lounge@localhost');
+            view = _converse.chatboxviews.get('lounge@montague.lit');
             view.close();
             room_els = _converse.rooms_list_view.el.querySelectorAll(".open-room");
             expect(room_els.length).toBe(0);
@@ -51,18 +51,18 @@
                 {'connection': ['send']}, ['rosterGroupsFetched', 'chatBoxesFetched'], {'view_mode': 'fullscreen'},
                 async function (done, _converse) {
 
-            await test_utils.openAndEnterChatRoom(_converse, 'lounge', 'localhost', 'dummy');
-            const view = _converse.chatboxviews.get('lounge@localhost');
+            await test_utils.openAndEnterChatRoom(_converse, 'lounge', 'montague.lit', 'romeo');
+            const view = _converse.chatboxviews.get('lounge@montague.lit');
 
-            const contact_jid = 'newguy@localhost';
+            const contact_jid = 'newguy@montague.lit';
             let stanza = $pres({
-                    to: 'dummy@localhost/resource',
-                    from: 'lounge@localhost/newguy'
+                    to: 'romeo@montague.lit/orchard',
+                    from: 'lounge@montague.lit/newguy'
                 })
                 .c('x', {xmlns: Strophe.NS.MUC_USER})
                 .c('item', {
                     'affiliation': 'none',
-                    'jid': 'newguy@localhost/_converse.js-290929789',
+                    'jid': 'newguy@montague.lit/_converse.js-290929789',
                     'role': 'participant'
                 }).tree();
             _converse.connection._dataRecv(test_utils.createRequest(stanza));
@@ -82,7 +82,7 @@
                 ).pop()
             );
             expect(Strophe.serialize(call.args[0])).toBe(
-                `<iq from="dummy@localhost/resource" id="${call.args[0].getAttribute('id')}" type="get" xmlns="jabber:client">`+
+                `<iq from="romeo@montague.lit/orchard" id="${call.args[0].getAttribute('id')}" type="get" xmlns="jabber:client">`+
                 '<pubsub xmlns="http://jabber.org/protocol/pubsub">'+
                     '<items node="storage:bookmarks"/>'+
                 '</pubsub>'+
@@ -95,7 +95,7 @@
                             .c('storage', {'xmlns': 'storage:bookmarks'})
                                 .c('conference', {
                                     'name': 'Bookmarked Lounge',
-                                    'jid': 'lounge@localhost'
+                                    'jid': 'lounge@montague.lit'
                                 });
             _converse.connection._dataRecv(test_utils.createRequest(stanza));
 
@@ -161,7 +161,7 @@
             const features_stanza = $iq({
                     'from': 'coven@chat.shakespeare.lit',
                     'id': IQ_id,
-                    'to': 'dummy@localhost/desktop',
+                    'to': 'romeo@montague.lit/desktop',
                     'type': 'result'
                 })
                 .c('query', { 'xmlns': 'http://jabber.org/protocol/disco#info'})
@@ -222,13 +222,13 @@
                 'Not moderated - Participants entering this groupchat can write right away'
             );
             presence = $pres({
-                    to: 'dummy@localhost/_converse.js-29092160',
+                    to: 'romeo@montague.lit/_converse.js-29092160',
                     from: 'coven@chat.shakespeare.lit/newguy'
                 })
                 .c('x', {xmlns: Strophe.NS.MUC_USER})
                 .c('item', {
                     'affiliation': 'none',
-                    'jid': 'newguy@localhost/_converse.js-290929789',
+                    'jid': 'newguy@montague.lit/_converse.js-290929789',
                     'role': 'participant'
                 });
             _converse.connection._dataRecv(test_utils.createRequest(presence));
@@ -282,13 +282,13 @@
             await  test_utils.openAndEnterChatRoom(_converse, 'kitchen', 'conference.shakespeare.lit', 'romeo');
             const view = _converse.chatboxviews.get(room_jid);
             view.model.set({'minimized': true});
-            const contact_jid = mock.cur_names[5].replace(/ /g,'.').toLowerCase() + '@localhost';
+            const contact_jid = mock.cur_names[5].replace(/ /g,'.').toLowerCase() + '@montague.lit';
             const nick = mock.chatroom_names[0];
             await view.model.onMessage(
                 $msg({
                     from: room_jid+'/'+nick,
                     id: (new Date()).getTime(),
-                    to: 'dummy@localhost',
+                    to: 'romeo@montague.lit',
                     type: 'groupchat'
                 }).c('body').t('foo').tree());
 
@@ -301,7 +301,7 @@
                 $msg({
                     from: room_jid+'/'+nick,
                     id: (new Date()).getTime(),
-                    to: 'dummy@localhost',
+                    to: 'romeo@montague.lit',
                     type: 'groupchat'
                 }).c('body').t('romeo: Your attention is required').tree()
             );
@@ -313,7 +313,7 @@
                 $msg({
                     from: room_jid+'/'+nick,
                     id: (new Date()).getTime(),
-                    to: 'dummy@localhost',
+                    to: 'romeo@montague.lit',
                     type: 'groupchat'
                 }).c('body').t('romeo: and another thing...').tree()
             );

+ 58 - 62
spec/roster.js

@@ -150,32 +150,30 @@
 
                 const contacts = await test_utils.waitUntil(() => (sizzle('li', roster).filter(u.isVisible).length === 15), 600);
                 expect(sizzle('ul.roster-group-contacts', roster).filter(u.isVisible).length).toBe(5);
-                filter.value = "candice";
+                filter.value = "juliet";
                 u.triggerEvent(filter, "keydown", "KeyboardEvent");
                 await test_utils.waitUntil(() => (sizzle('li', roster).filter(u.isVisible).length === 1), 600);
                 // Only one roster contact is now visible
                 let visible_contacts = sizzle('li', roster).filter(u.isVisible);
                 expect(visible_contacts.length).toBe(1);
-                expect(visible_contacts.pop().textContent.trim()).toBe('Candice van der Knijff');
+                expect(visible_contacts.pop().textContent.trim()).toBe('Juliet Capulet');
                 // Only one foster group is still visible
                 expect(sizzle('.roster-group', roster).filter(u.isVisible).length).toBe(1);
                 const visible_group = sizzle('.roster-group', roster).filter(u.isVisible).pop();
                 expect(visible_group.querySelector('a.group-toggle').textContent.trim()).toBe('colleagues');
 
                 filter = _converse.rosterview.el.querySelector('.roster-filter');
-                filter.value = "an";
+                filter.value = "j";
                 u.triggerEvent(filter, "keydown", "KeyboardEvent");
-                await test_utils.waitUntil(() => (sizzle('li', roster).filter(u.isVisible).length === 5), 600);
+                await test_utils.waitUntil(() => (sizzle('li', roster).filter(u.isVisible).length === 2), 700);
 
                 visible_contacts = sizzle('li', roster).filter(u.isVisible);
-                expect(visible_contacts.length).toBe(5);
+                expect(visible_contacts.length).toBe(2);
 
                 let visible_groups = sizzle('.roster-group', roster).filter(u.isVisible).map(el => el.querySelector('a.group-toggle'));
-                expect(visible_groups.length).toBe(4);
+                expect(visible_groups.length).toBe(2);
                 expect(visible_groups[0].textContent.trim()).toBe('colleagues');
-                expect(visible_groups[1].textContent.trim()).toBe('Family');
-                expect(visible_groups[2].textContent.trim()).toBe('friends & acquaintences');
-                expect(visible_groups[3].textContent.trim()).toBe('ænemies');
+                expect(visible_groups[1].textContent.trim()).toBe('Ungrouped');
 
                 filter = _converse.rosterview.el.querySelector('.roster-filter');
                 filter.value = "xxx";
@@ -205,35 +203,33 @@
                 _converse.rosterview.filter_view.delegateEvents();
 
                 await test_utils.waitUntil(() => (sizzle('li', roster).filter(u.isVisible).length === 15), 600);
-                filter.value = "an";
+                filter.value = "la";
                 u.triggerEvent(filter, "keydown", "KeyboardEvent");
-                await test_utils.waitUntil(() => (sizzle('li', roster).filter(u.isVisible).length === 5), 600);
+                await test_utils.waitUntil(() => (sizzle('li', roster).filter(u.isVisible).length === 3), 600);
 
                 // Five roster contact is now visible
                 const visible_contacts = sizzle('li', roster).filter(u.isVisible);
-                expect(visible_contacts.length).toBe(5);
+                expect(visible_contacts.length).toBe(3);
                 let visible_groups = sizzle('.roster-group', roster).filter(u.isVisible).map(el => el.querySelector('a.group-toggle'));
-                expect(visible_groups.length).toBe(4);
+                expect(visible_groups.length).toBe(3);
                 expect(visible_groups[0].textContent.trim()).toBe('colleagues');
                 expect(visible_groups[1].textContent.trim()).toBe('Family');
                 expect(visible_groups[2].textContent.trim()).toBe('friends & acquaintences');
-                expect(visible_groups[3].textContent.trim()).toBe('ænemies');
 
                 _converse.roster.create({
-                    jid: 'latecomer@localhost',
+                    jid: 'valentine@montague.lit',
                     subscription: 'both',
                     ask: null,
                     groups: ['newgroup'],
-                    fullname: 'Marty McLatecomer'
+                    fullname: 'Valentine'
                 });
                 await test_utils.waitUntil(() => sizzle('.roster-group[data-group="newgroup"] li', roster).length, 300);
                 visible_groups = sizzle('.roster-group', roster).filter(u.isVisible).map(el => el.querySelector('a.group-toggle'));
                 // The "newgroup" group doesn't appear
-                expect(visible_groups.length).toBe(4);
+                expect(visible_groups.length).toBe(3);
                 expect(visible_groups[0].textContent.trim()).toBe('colleagues');
                 expect(visible_groups[1].textContent.trim()).toBe('Family');
                 expect(visible_groups[2].textContent.trim()).toBe('friends & acquaintences');
-                expect(visible_groups[3].textContent.trim()).toBe('ænemies');
                 expect(roster.querySelectorAll('.roster-group').length).toBe(6);
                 done();
             }));
@@ -310,9 +306,9 @@
                     async function (done, _converse) {
 
                 test_utils.createGroupedContacts(_converse);
-                let jid = mock.cur_names[3].replace(/ /g,'.').toLowerCase() + '@localhost';
+                let jid = mock.cur_names[3].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 _converse.roster.get(jid).presence.set('show', 'online');
-                jid = mock.cur_names[4].replace(/ /g,'.').toLowerCase() + '@localhost';
+                jid = mock.cur_names[4].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 _converse.roster.get(jid).presence.set('show', 'dnd');
                 test_utils.openControlBox();
                 const button = _converse.rosterview.el.querySelector('span[data-type="state"]');
@@ -325,13 +321,13 @@
                 u.triggerEvent(filter, 'change');
 
                 await test_utils.waitUntil(() => sizzle('li', roster).filter(u.isVisible).length === 1, 900);
-                expect(sizzle('li', roster).filter(u.isVisible).pop().textContent.trim()).toBe('Rinse Sommer');
+                expect(sizzle('li', roster).filter(u.isVisible).pop().textContent.trim()).toBe('Lord Montague');
                 await test_utils.waitUntil(() => sizzle('ul.roster-group-contacts', roster).filter(u.isVisible).length === 1, 900);
                 const ul = sizzle('ul.roster-group-contacts', roster).filter(u.isVisible).pop();
                 expect(ul.parentElement.firstElementChild.textContent.trim()).toBe('friends & acquaintences');
                 filter.value = "dnd";
                 u.triggerEvent(filter, 'change');
-                await test_utils.waitUntil(() => sizzle('li', roster).filter(u.isVisible).pop().textContent.trim() === 'Annegreet Gomez', 900);
+                await test_utils.waitUntil(() => sizzle('li', roster).filter(u.isVisible).pop().textContent.trim() === 'Friar Laurence', 900);
                 expect(sizzle('ul.roster-group-contacts', roster).filter(u.isVisible).length).toBe(1);
                 done();
             }));
@@ -389,7 +385,7 @@
                 test_utils.openControlBox();
 
                 _converse.roster.create({
-                    jid: 'groupchanger@localhost',
+                    jid: 'groupchanger@montague.lit',
                     subscription: 'both',
                     ask: null,
                     groups: ['firstgroup'],
@@ -408,7 +404,7 @@
                 }, 1000);
                 expect(group_titles).toEqual(['firstgroup']);
 
-                const contact = _converse.roster.get('groupchanger@localhost');
+                const contact = _converse.roster.get('groupchanger@montague.lit');
                 contact.set({'groups': ['secondgroup']});
                 group_titles = await test_utils.waitUntil(() => {
                     const toggles = sizzle('.roster-group[data-group="secondgroup"] a.group-toggle', _converse.rosterview.el);
@@ -433,7 +429,7 @@
                 _converse.rosterview.render();
                 for (var i=0; i<mock.cur_names.length; i++) {
                     _converse.roster.create({
-                        jid: mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@localhost',
+                        jid: mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@montague.lit',
                         subscription: 'both',
                         ask: null,
                         groups: groups,
@@ -469,7 +465,7 @@
                     j = i;
                     for (i=j; i<j+groups[name]; i++) {
                         _converse.roster.create({
-                            jid: mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@localhost',
+                            jid: mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@montague.lit',
                             subscription: 'both',
                             ask: null,
                             groups: name === 'ungrouped'? [] : [name],
@@ -518,7 +514,7 @@
                 spyOn(_converse.rosterview, 'update').and.callThrough();
                 test_utils.openControlBox();
                 _converse.roster.create({
-                    jid: mock.pend_names[0].replace(/ /g,'.').toLowerCase() + '@localhost',
+                    jid: mock.pend_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit',
                     subscription: 'none',
                     ask: 'subscribe',
                     fullname: mock.pend_names[0]
@@ -566,7 +562,7 @@
 
                 _addContacts(_converse);
                 const name = mock.pend_names[0];
-                const jid = name.replace(/ /g,'.').toLowerCase() + '@localhost';
+                const jid = name.replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 const contact = _converse.roster.get(jid);
                 var sent_IQ;
                 spyOn(window, 'confirm').and.returnValue(true);
@@ -585,7 +581,7 @@
                 expect(sent_IQ.toLocaleString()).toBe(
                     `<iq type="set" xmlns="jabber:client">`+
                         `<query xmlns="jabber:iq:roster">`+
-                            `<item jid="suleyman.van.beusichem@localhost" subscription="remove"/>`+
+                            `<item jid="lord.capulet@montague.lit" subscription="remove"/>`+
                         `</query>`+
                     `</iq>`);
                 done();
@@ -599,7 +595,7 @@
                 test_utils.openControlBox();
                 const name = mock.pend_names[0];
                 _converse.roster.create({
-                    jid: name.replace(/ /g,'.').toLowerCase() + '@localhost',
+                    jid: name.replace(/ /g,'.').toLowerCase() + '@montague.lit',
                     subscription: 'none',
                     ask: 'subscribe',
                     fullname: name
@@ -619,11 +615,11 @@
                 expect(Strophe.serialize(iq)).toBe(
                     `<iq id="${iq.getAttribute('id')}" type="set" xmlns="jabber:client">`+
                         `<query xmlns="jabber:iq:roster">`+
-                            `<item jid="suleyman.van.beusichem@localhost" subscription="remove"/>`+
+                            `<item jid="lord.capulet@montague.lit" subscription="remove"/>`+
                         `</query>`+
                     `</iq>`);
 
-                const stanza = u.toStanza(`<iq id="${iq.getAttribute('id')}" to="dummy@localhost/resource" type="result"/>`);
+                const stanza = u.toStanza(`<iq id="${iq.getAttribute('id')}" to="romeo@montague.lit/orchard" type="result"/>`);
                 _converse.connection._dataRecv(test_utils.createRequest(stanza));
                 await test_utils.waitUntil(() => !u.isVisible(_converse.rosterview.get('Pending contacts').el));
                 done();
@@ -655,7 +651,7 @@
                 spyOn(_converse.rosterview, 'update').and.callThrough();
                 for (i=0; i<mock.pend_names.length; i++) {
                     _converse.roster.create({
-                        jid: mock.pend_names[i].replace(/ /g,'.').toLowerCase() + '@localhost',
+                        jid: mock.pend_names[i].replace(/ /g,'.').toLowerCase() + '@montague.lit',
                         subscription: 'none',
                         ask: 'subscribe',
                         fullname: mock.pend_names[i]
@@ -697,8 +693,8 @@
                 _addContacts(_converse);
                 await test_utils.waitUntil(() => sizzle('li', _converse.rosterview.el).filter(u.isVisible).length, 500);
                 _converse.rosterview.el.querySelector('.roster-group a.group-toggle').click();
-                const name = "Max Mustermann";
-                const jid = name.replace(/ /g,'.').toLowerCase() + '@localhost';
+                const name = "Romeo Montague";
+                const jid = name.replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 _converse.roster.create({
                     ask: null,
                     fullname: name,
@@ -721,7 +717,7 @@
                 spyOn(_converse.rosterview, 'update').and.callThrough();
                 for (i=0; i<mock.cur_names.length; i++) {
                     _converse.roster.create({
-                        jid: mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@localhost',
+                        jid: mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@montague.lit',
                         subscription: 'both',
                         ask: null,
                         fullname: mock.cur_names[i]
@@ -746,7 +742,7 @@
                 _addContacts(_converse);
                 await test_utils.waitUntil(() => _converse.rosterview.el.querySelectorAll('li').length);
                 const name = mock.cur_names[0];
-                const jid = name.replace(/ /g,'.').toLowerCase() + '@localhost';
+                const jid = name.replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 const contact = _converse.roster.get(jid);
                 spyOn(window, 'confirm').and.returnValue(true);
                 spyOn(contact, 'removeFromRoster').and.callThrough();
@@ -761,7 +757,7 @@
                 expect(window.confirm).toHaveBeenCalled();
                 expect(sent_IQ.toLocaleString()).toBe(
                     `<iq type="set" xmlns="jabber:client">`+
-                        `<query xmlns="jabber:iq:roster"><item jid="max.frankfurter@localhost" subscription="remove"/></query>`+
+                        `<query xmlns="jabber:iq:roster"><item jid="mercutio@montague.lit" subscription="remove"/></query>`+
                     `</iq>`);
                 expect(contact.removeFromRoster).toHaveBeenCalled();
                 await test_utils.waitUntil(() => sizzle(".open-chat:contains('"+name+"')", _converse.rosterview.el).length === 0);
@@ -777,7 +773,7 @@
                 var name = mock.cur_names[0];
                 var contact;
                 contact = _converse.roster.create({
-                    jid: name.replace(/ /g,'.').toLowerCase() + '@localhost',
+                    jid: name.replace(/ /g,'.').toLowerCase() + '@montague.lit',
                     subscription: 'both',
                     ask: null,
                     fullname: name
@@ -808,7 +804,7 @@
                 spyOn(_converse.rosterview, 'update').and.callThrough();
                 const roster = _converse.rosterview.el;
                 for (let i=0; i<mock.cur_names.length; i++) {
-                    jid = mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@localhost';
+                    jid = mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                     _converse.roster.get(jid).presence.set('show', 'online');
                     expect(_converse.rosterview.update).toHaveBeenCalled();
                     // Check that they are sorted alphabetically
@@ -830,7 +826,7 @@
                 spyOn(_converse.rosterview, 'update').and.callThrough();
                 const roster = _converse.rosterview.el;
                 for (let i=0; i<mock.cur_names.length; i++) {
-                    jid = mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@localhost';
+                    jid = mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                     _converse.roster.get(jid).presence.set('show', 'dnd');
                     expect(_converse.rosterview.update).toHaveBeenCalled();
                     // Check that they are sorted alphabetically
@@ -852,7 +848,7 @@
                 spyOn(_converse.rosterview, 'update').and.callThrough();
                 const roster = _converse.rosterview.el;
                 for (let i=0; i<mock.cur_names.length; i++) {
-                    jid = mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@localhost';
+                    jid = mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                     _converse.roster.get(jid).presence.set('show', 'away');
                     expect(_converse.rosterview.update).toHaveBeenCalled();
                     // Check that they are sorted alphabetically
@@ -874,7 +870,7 @@
                 spyOn(_converse.rosterview, 'update').and.callThrough();
                 const roster = _converse.rosterview.el;
                 for (var i=0; i<mock.cur_names.length; i++) {
-                    jid = mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@localhost';
+                    jid = mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                     _converse.roster.get(jid).presence.set('show', 'xa');
                     expect(_converse.rosterview.update).toHaveBeenCalled();
                     // Check that they are sorted alphabetically
@@ -898,7 +894,7 @@
                 spyOn(_converse.rosterview, 'update').and.callThrough();
                 var roster = _converse.rosterview.el;
                 for (var i=0; i<mock.cur_names.length; i++) {
-                    jid = mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@localhost';
+                    jid = mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                     _converse.roster.get(jid).presence.set('show', 'unavailable');
                     expect(_converse.rosterview.update).toHaveBeenCalled();
                     // Check that they are sorted alphabetically
@@ -920,27 +916,27 @@
                 await test_utils.waitUntil(() => sizzle('.roster-group li', _converse.rosterview.el).length, 700);
                 let i, jid;
                 for (i=0; i<3; i++) {
-                    jid = mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@localhost';
+                    jid = mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                     _converse.roster.get(jid).presence.set('show', 'online');
                 }
                 for (i=3; i<6; i++) {
-                    jid = mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@localhost';
+                    jid = mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                     _converse.roster.get(jid).presence.set('show', 'dnd');
                 }
                 for (i=6; i<9; i++) {
-                    jid = mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@localhost';
+                    jid = mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                     _converse.roster.get(jid).presence.set('show', 'away');
                 }
                 for (i=9; i<12; i++) {
-                    jid = mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@localhost';
+                    jid = mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                     _converse.roster.get(jid).presence.set('show', 'xa');
                 }
                 for (i=12; i<15; i++) {
-                    jid = mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@localhost';
+                    jid = mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@montague.lit';
                     _converse.roster.get(jid).presence.set('show', 'unavailable');
                 }
                 await test_utils.waitUntil(() => _converse.rosterview.el.querySelectorAll('li.online').length)
-                await test_utils.waitUntil(() => _converse.rosterview.el.querySelector('li:first-child').textContent.trim() === 'Candice van der Knijff', 900);
+                await test_utils.waitUntil(() => _converse.rosterview.el.querySelector('li:first-child').textContent.trim() === 'Juliet Capulet', 900);
                 const contacts = _converse.rosterview.el.querySelectorAll('.current-xmpp-contact');
                 for (i=0; i<3; i++) {
                     expect(u.hasClass('online', contacts[i])).toBe(true);
@@ -1007,6 +1003,7 @@
                     null, ['rosterGroupsFetched'], {},
                     async function (done, _converse) {
 
+                test_utils.openControlBox();
                 let names = [];
                 const addName = function (item) {
                     if (!u.hasClass('request-actions', item)) {
@@ -1014,14 +1011,13 @@
                     }
                 };
                 spyOn(_converse.rosterview, 'update').and.callThrough();
-                spyOn(_converse.controlboxtoggle, 'showControlBox').and.callThrough();
                 for (let i=0; i<mock.req_names.length; i++) {
                     _converse.roster.create({
-                        jid: mock.req_names[i].replace(/ /g,'.').toLowerCase() + '@localhost',
+                        jid: mock.req_names[i].replace(/ /g,'.').toLowerCase() + '@montague.lit',
                         subscription: 'none',
                         ask: null,
                         requesting: true,
-                        fullname: mock.req_names[i]
+                        nickname: mock.req_names[i]
                     });
                 }
                 await test_utils.waitUntil(() => _converse.rosterview.get('Contact requests').el.querySelectorAll('li').length, 700);
@@ -1043,11 +1039,11 @@
                 const name = mock.req_names[0];
                 spyOn(window, 'confirm').and.returnValue(true);
                 _converse.roster.create({
-                    jid: name.replace(/ /g,'.').toLowerCase() + '@localhost',
-                    subscription: 'none',
-                    ask: null,
-                    requesting: true,
-                    fullname: name
+                    'jid': name.replace(/ /g,'.').toLowerCase() + '@montague.lit',
+                    'subscription': 'none',
+                    'ask': null,
+                    'requesting': true,
+                    'nickname': name
                 });
                 await test_utils.waitUntil(() => sizzle('.roster-group', _converse.rosterview.el).filter(u.isVisible).length, 900);
                 expect(u.isVisible(_converse.rosterview.get('Contact requests').el)).toEqual(true);
@@ -1080,7 +1076,7 @@
                 test_utils.openControlBox();
                 test_utils.createContacts(_converse, 'requesting').openControlBox();
                 const name = mock.req_names.sort()[0];
-                const jid =  name.replace(/ /g,'.').toLowerCase() + '@localhost';
+                const jid =  name.replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 const contact = _converse.roster.get(jid);
                 spyOn(contact, 'authorize').and.callFake(() => contact);
                 await test_utils.waitUntil(() => _converse.rosterview.el.querySelectorAll('.roster-group li').length)
@@ -1088,7 +1084,7 @@
                 // actually not accepted/authorized because of
                 // mock_connection.
                 spyOn(_converse.roster, 'sendContactAddIQ').and.callFake(() => Promise.resolve());
-                const req_contact = sizzle(".req-contact-name:contains('"+name+"')", _converse.rosterview.el).pop();
+                const req_contact = sizzle(`.req-contact-name:contains("${contact.getDisplayName()}")`, _converse.rosterview.el).pop();
                 req_contact.parentElement.parentElement.querySelector('.accept-xmpp-request').click();
                 expect(_converse.roster.sendContactAddIQ).toHaveBeenCalled();
                 await test_utils.waitUntil(() => contact.authorize.calls.count());
@@ -1105,7 +1101,7 @@
                 await test_utils.waitUntil(() => sizzle('.roster-group li', _converse.rosterview.el).length, 700);
                 _converse.rosterview.update(); // XXX: Hack to make sure $roster element is attaced.
                 const name = mock.req_names.sort()[1];
-                const jid =  name.replace(/ /g,'.').toLowerCase() + '@localhost';
+                const jid =  name.replace(/ /g,'.').toLowerCase() + '@montague.lit';
                 const contact = _converse.roster.get(jid);
                 spyOn(window, 'confirm').and.returnValue(true);
                 spyOn(contact, 'unauthorize').and.callFake(function () { return contact; });
@@ -1199,7 +1195,7 @@
                 await test_utils.waitUntil(() => sizzle('.roster-group li', _converse.rosterview.el).length, 700);
                 for (let i=0; i<mock.cur_names.length; i++) {
                     const name = mock.cur_names[i];
-                    const jid = name.replace(/ /g,'.').toLowerCase() + '@localhost';
+                    const jid = name.replace(/ /g,'.').toLowerCase() + '@montague.lit';
                     const child = sizzle("li:contains('"+name+"')", _converse.rosterview.el).pop().firstElementChild;
                     expect(child.textContent.trim()).toBe(name);
                     expect(child.getAttribute('title')).toContain(name);

+ 7 - 7
spec/smacks.js

@@ -22,7 +22,7 @@
             const view = _converse.chatboxviews.get('controlbox');
             spyOn(view, 'renderControlBoxPane').and.callThrough();
 
-            _converse.api.user.login('dummy@localhost', 'secret');
+            _converse.api.user.login('romeo@montague.lit', 'secret');
             const sent_stanzas = _converse.connection.sent_stanzas;
             let stanza = await test_utils.waitUntil(() =>
                 sent_stanzas.filter(s => (s.tagName === 'enable')).pop());
@@ -41,7 +41,7 @@
 
             let iq = IQ_stanzas.pop();
             expect(Strophe.serialize(iq)).toBe(
-                `<iq from="dummy@localhost/resource" id="${iq.getAttribute('id')}" to="dummy@localhost" type="get" xmlns="jabber:client">`+
+                `<iq from="romeo@montague.lit/orchard" id="${iq.getAttribute('id')}" to="romeo@montague.lit" type="get" xmlns="jabber:client">`+
                     `<query xmlns="http://jabber.org/protocol/disco#info"/></iq>`);
 
             iq = IQ_stanzas.pop();
@@ -50,12 +50,12 @@
 
             iq = IQ_stanzas.pop();
             expect(Strophe.serialize(iq)).toBe(
-                `<iq from="dummy@localhost/resource" id="${iq.getAttribute('id')}" to="localhost" type="get" xmlns="jabber:client">`+
+                `<iq from="romeo@montague.lit/orchard" id="${iq.getAttribute('id')}" to="montague.lit" type="get" xmlns="jabber:client">`+
                     `<query xmlns="http://jabber.org/protocol/disco#info"/></iq>`);
 
             const disco_iq = IQ_stanzas.pop();
             expect(Strophe.serialize(disco_iq)).toBe(
-                `<iq from="dummy@localhost" id="${disco_iq.getAttribute('id')}" to="dummy@localhost" type="get" xmlns="jabber:client">`+
+                `<iq from="romeo@montague.lit" id="${disco_iq.getAttribute('id')}" to="romeo@montague.lit" type="get" xmlns="jabber:client">`+
                     `<pubsub xmlns="http://jabber.org/protocol/pubsub"><items node="eu.siacs.conversations.axolotl.devicelist"/></pubsub></iq>`);
 
             expect(sent_stanzas.filter(s => (s.nodeName === 'r')).length).toBe(2);
@@ -74,8 +74,8 @@
 
             const disco_result = $iq({
                 'type': 'result',
-                'from': 'localhost',
-                'to': 'dummy@localhost/resource',
+                'from': 'montague.lit',
+                'to': 'romeo@montague.lit/orchard',
                 'id': disco_iq.getAttribute('id'),
             }).c('query', {'xmlns': 'http://jabber.org/protocol/disco#info'})
                 .c('identity', {
@@ -115,7 +115,7 @@
             // Test that unacked stanzas get resent out
             iq = IQ_stanzas.pop();
             expect(Strophe.serialize(iq)).toBe(
-                `<iq from="dummy@localhost/resource" id="${iq.getAttribute('id')}" to="dummy@localhost" type="get" xmlns="jabber:client">`+
+                `<iq from="romeo@montague.lit/orchard" id="${iq.getAttribute('id')}" to="romeo@montague.lit" type="get" xmlns="jabber:client">`+
                     `<query xmlns="http://jabber.org/protocol/disco#info"/></iq>`);
 
             iq = IQ_stanzas.pop();

+ 16 - 16
spec/spoilers.js

@@ -15,7 +15,7 @@
                 async (done, _converse) => {
 
             await test_utils.waitForRoster(_converse, 'current');
-            const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+            const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
 
             /* <message to='romeo@montague.net/orchard' from='juliet@capulet.net/balcony' id='spoiler2'>
              *      <body>And at the end of the story, both of them die! It is so tragic!</body>
@@ -38,8 +38,8 @@
 
             await test_utils.waitUntil(() => _converse.api.chats.get().length === 2);
             const view = _converse.chatboxviews.get(sender_jid);
-            await test_utils.waitUntil(() => view.model.vcard.get('fullname') === 'Max Frankfurter')
-            expect(view.el.querySelector('.chat-msg__author').textContent.trim()).toBe('Max Frankfurter');
+            await test_utils.waitUntil(() => view.model.vcard.get('fullname') === 'Mercutio')
+            expect(view.el.querySelector('.chat-msg__author').textContent.trim()).toBe('Mercutio');
             const message_content = view.el.querySelector('.chat-msg__text');
             expect(message_content.textContent).toBe(spoiler);
             const spoiler_hint_el = view.el.querySelector('.spoiler-hint');
@@ -53,7 +53,7 @@
                 async (done, _converse) => {
 
             await test_utils.waitForRoster(_converse, 'current');
-            const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+            const sender_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
             /* <message to='romeo@montague.net/orchard' from='juliet@capulet.net/balcony' id='spoiler2'>
              *      <body>And at the end of the story, both of them die! It is so tragic!</body>
              *      <spoiler xmlns='urn:xmpp:spoiler:0'>Love story end</spoiler>
@@ -72,8 +72,8 @@
             await _converse.chatboxes.onMessage(msg);
             await test_utils.waitUntil(() => _converse.api.chats.get().length === 2);
             const view = _converse.chatboxviews.get(sender_jid);
-            await test_utils.waitUntil(() => view.model.vcard.get('fullname') === 'Max Frankfurter')
-            expect(_.includes(view.el.querySelector('.chat-msg__author').textContent, 'Max Frankfurter')).toBeTruthy();
+            await test_utils.waitUntil(() => view.model.vcard.get('fullname') === 'Mercutio')
+            expect(_.includes(view.el.querySelector('.chat-msg__author').textContent, 'Mercutio')).toBeTruthy();
             const message_content = view.el.querySelector('.chat-msg__text');
             expect(message_content.textContent).toBe(spoiler);
             const spoiler_hint_el = view.el.querySelector('.spoiler-hint');
@@ -88,7 +88,7 @@
 
             await test_utils.waitForRoster(_converse, 'current', 1);
             test_utils.openControlBox();
-            const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+            const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
 
             // XXX: We need to send a presence from the contact, so that we
             // have a resource, that resource is then queried to see
@@ -96,7 +96,7 @@
             // the spoiler button will appear.
             const presence = $pres({
                 'from': contact_jid+'/phone',
-                'to': 'dummy@localhost'
+                'to': 'romeo@montague.lit'
             });
             _converse.connection._dataRecv(test_utils.createRequest(presence));
             await test_utils.openChatBoxFor(_converse, contact_jid);
@@ -119,8 +119,8 @@
 
             /* Test the XML stanza
              *
-             * <message from="dummy@localhost/resource"
-             *          to="max.frankfurter@localhost"
+             * <message from="romeo@montague.lit/orchard"
+             *          to="max.frankfurter@montague.lit"
              *          type="chat"
              *          id="4547c38b-d98b-45a5-8f44-b4004dbc335e"
              *          xmlns="jabber:client">
@@ -138,7 +138,7 @@
             expect(body_el.textContent).toBe('This is the spoiler');
 
             /* Test the HTML spoiler message */
-            expect(view.el.querySelector('.chat-msg__author').textContent.trim()).toBe('Max Mustermann');
+            expect(view.el.querySelector('.chat-msg__author').textContent.trim()).toBe('Romeo Montague');
 
             const spoiler_msg_el = view.el.querySelector('.chat-msg__text.spoiler');
             expect(spoiler_msg_el.textContent).toBe('This is the spoiler');
@@ -161,7 +161,7 @@
 
             await test_utils.waitForRoster(_converse, 'current', 1);
             test_utils.openControlBox();
-            const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+            const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
 
             // XXX: We need to send a presence from the contact, so that we
             // have a resource, that resource is then queried to see
@@ -169,7 +169,7 @@
             // the spoiler button will appear.
             const presence = $pres({
                 'from': contact_jid+'/phone',
-                'to': 'dummy@localhost'
+                'to': 'romeo@montague.lit'
             });
             _converse.connection._dataRecv(test_utils.createRequest(presence));
             await test_utils.openChatBoxFor(_converse, contact_jid);
@@ -196,8 +196,8 @@
 
             /* Test the XML stanza
              *
-             * <message from="dummy@localhost/resource"
-             *          to="max.frankfurter@localhost"
+             * <message from="romeo@montague.lit/orchard"
+             *          to="max.frankfurter@montague.lit"
              *          type="chat"
              *          id="4547c38b-d98b-45a5-8f44-b4004dbc335e"
              *          xmlns="jabber:client">
@@ -216,7 +216,7 @@
             expect(body_el.textContent).toBe('This is the spoiler');
 
             /* Test the HTML spoiler message */
-            expect(view.el.querySelector('.chat-msg__author').textContent.trim()).toBe('Max Mustermann');
+            expect(view.el.querySelector('.chat-msg__author').textContent.trim()).toBe('Romeo Montague');
 
             const spoiler_msg_el = view.el.querySelector('.chat-msg__text.spoiler');
             expect(spoiler_msg_el.textContent).toBe('This is the spoiler');

+ 1 - 1
spec/transcripts.js

@@ -55,7 +55,7 @@
 
             _converse.allow_non_roster_messaging = true;
 
-            test_utils.openAndEnterChatRoom(_converse, 'discuss', 'conference.conversejs.org', 'dummy').then(function () {
+            test_utils.openAndEnterChatRoom(_converse, 'discuss', 'conference.conversejs.org', 'romeo').then(function () {
                 spyOn(_converse, 'areDesktopNotificationsEnabled').and.returnValue(true);
                 _.each(transcripts, function (transcript) {
                     var text = transcript();

+ 3 - 3
spec/user-details-modal.js

@@ -22,7 +22,7 @@
             test_utils.createContacts(_converse, 'current');
             _converse.api.trigger('rosterContactsFetched');
 
-            const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+            const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
             test_utils.openChatBoxFor(_converse, contact_jid);
             await test_utils.waitUntil(() => _converse.chatboxes.length > 1);
             const view = _converse.chatboxviews.get(contact_jid);
@@ -55,7 +55,7 @@
             test_utils.createContacts(_converse, 'current');
             _converse.api.trigger('rosterContactsFetched');
 
-            const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@localhost';
+            const contact_jid = mock.cur_names[0].replace(/ /g,'.').toLowerCase() + '@montague.lit';
             await test_utils.openChatBoxFor(_converse, contact_jid)
             const view = _converse.chatboxviews.get(contact_jid);
             let show_modal_button = view.el.querySelector('.show-user-details-modal');
@@ -75,7 +75,7 @@
             const header = document.querySelector('.alert-danger .modal-title');
             expect(header.textContent).toBe("Error");
             expect(u.ancestor(header, '.modal-content').querySelector('.modal-body p').textContent.trim())
-                .toBe("Sorry, there was an error while trying to remove Max Frankfurter as a contact.");
+                .toBe("Sorry, there was an error while trying to remove Mercutio as a contact.");
             document.querySelector('.alert-danger  button.close').click();
             show_modal_button = view.el.querySelector('.show-user-details-modal');
             show_modal_button.click();

+ 1 - 1
src/headless/converse-core.js

@@ -1524,7 +1524,7 @@ _converse.api = {
          * @example
          * converse.plugins.add('myplugin', {
          *     initialize: function () {
-         *         this._converse.api.user.login('dummy@example.com', 'secret');
+         *         this._converse.api.user.login('romeo@montague.lit', 'secret');
          *     }
          * });
          */

+ 11 - 11
tests/mock.js

@@ -71,15 +71,15 @@
 
     // Names from http://www.fakenamegenerator.com/
     mock.req_names = [
-        'Louw Spekman', 'Mohamad Stet', 'Dominik Beyer'
+        'Escalus, Prince of Verona', 'The Nurse', 'Paris'
     ];
     mock.pend_names = [
-        'Suleyman van Beusichem', 'Nanja van Yperen', 'Nicole Diederich'
+        'Lord Capulet', 'Lady Capulet', 'Servant'
     ];
     mock.cur_names = [
-        'Max Frankfurter', 'Candice van der Knijff', 'Irini Vlastuin', 'Rinse Sommer', 'Annegreet Gomez',
-        'Robin Schook', 'Marcel Eberhardt', 'Simone Brauer', 'Asmaa Haakman', 'Felix Amsel',
-        'Lena Grunewald', 'Laura Grunewald', 'Mandy Seiler', 'Sven Bosch', 'Nuriye Cuypers'
+        'Mercutio', 'Juliet Capulet', 'Lady Montague', 'Lord Montague', 'Friar Laurence',
+        'Tybalt', 'Lady Capulet', 'Benviolo', 'Balthasar',
+        'Peter', 'Abram', 'Sampson', 'Gregory', 'Potpan', 'Friar John'
     ];
     mock.num_contacts = mock.req_names.length + mock.pend_names.length + mock.cur_names.length;
 
@@ -154,7 +154,7 @@
             c._proto._connect = function () {
                 c.connected = true;
                 c.mock = true;
-                c.jid = 'dummy@localhost/resource';
+                c.jid = 'romeo@montague.lit/orchard';
                 c._changeConnectStatus(Strophe.Status.BINDREQUIRED);
             };
 
@@ -190,7 +190,7 @@
             'i18n': 'en',
             'auto_subscribe': false,
             'play_sounds': false,
-            'bosh_service_url': 'localhost',
+            'bosh_service_url': 'montague.lit/http-bind',
             'connection': connection,
             'animate': false,
             'use_emojione': false,
@@ -214,9 +214,9 @@
                     jid = model.get('jid') || model.get('muc_jid');
                 }
                 let fullname;
-                if (!jid || jid == 'dummy@localhost') {
-                    jid = 'dummy@localhost';
-                    fullname = 'Max Mustermann' ;
+                if (!jid || jid == 'romeo@montague.lit') {
+                    jid = 'romeo@montague.lit';
+                    fullname = 'Romeo Montague' ;
                 } else {
                     const name = jid.split('@')[0].replace(/\./g, ' ').split(' ');
                     const last = name.length-1;
@@ -238,7 +238,7 @@
             }).catch(_.partial(_converse.log, _, Strophe.LogLevel.FATAL));
         };
         if (_.get(settings, 'auto_login') !== false) {
-            _converse.api.user.login('dummy@localhost', 'secret');
+            _converse.api.user.login('romeo@montague.lit', 'secret');
             await _converse.api.waitUntil('afterResourceBinding');
         }
         window.converse_disable_effects = true;

+ 1 - 1
tests/runner.js

@@ -34,11 +34,11 @@ var specs = [
     "jasmine",
     //"spec/transcripts",
     "spec/spoilers",
+    "spec/roomslist",
     "spec/profiling",
     "spec/utils",
     "spec/converse",
     "spec/bookmarks",
-    "spec/roomslist",
     "spec/headline",
     "spec/disco",
     "spec/protocol",

+ 12 - 12
tests/utils.js

@@ -25,7 +25,7 @@
         const stanza = $iq({
             'type': 'result',
             'from': entity_jid,
-            'to': 'dummy@localhost/resource',
+            'to': 'romeo@montague.lit/orchard',
             'id': iq.getAttribute('id'),
         }).c('query', {'xmlns': 'http://jabber.org/protocol/disco#'+type});
 
@@ -86,7 +86,7 @@
     utils.openChatBoxes = function (converse, amount) {
         var i = 0, jid, views = [];
         for (i; i<amount; i++) {
-            jid = mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@localhost';
+            jid = mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@montague.lit';
             views[i] = converse.roster.get(jid).trigger("open");
         }
         return views;
@@ -130,7 +130,7 @@
         const features_stanza = $iq({
             'from': room_jid,
             'id': stanza.getAttribute('id'),
-            'to': 'dummy@localhost/desktop',
+            'to': 'romeo@montague.lit/desktop',
             'type': 'result'
         }).c('query', { 'xmlns': 'http://jabber.org/protocol/disco#info'})
             .c('identity', {
@@ -254,11 +254,11 @@
             length = names.length;
         }
         for (var i=0; i<length; i++) {
-            jid = names[i].replace(/ /g,'.').toLowerCase() + '@localhost';
+            jid = names[i].replace(/ /g,'.').toLowerCase() + '@montague.lit';
             if (!converse.roster.get(jid)) {
                 converse.roster.create({
                     'ask': ask,
-                    'fullname': names[i],
+                    'name': names[i],
                     'jid': jid,
                     'requesting': requesting,
                     'subscription': subscription
@@ -285,7 +285,7 @@
         if (type === 'pending' || type === 'all') {
             mock.pend_names.slice(0, length).map(name =>
                 result.c('item', {
-                    jid: name.replace(/ /g,'.').toLowerCase() + '@localhost',
+                    jid: name.replace(/ /g,'.').toLowerCase() + '@montague.lit',
                     name: include_nick ? name : undefined,
                     subscription: 'to'
                 }).up()
@@ -293,7 +293,7 @@
         } else if (type === 'current' || type === 'all') {
             mock.cur_names.slice(0, length).map(name =>
                 result.c('item', {
-                    jid: name.replace(/ /g,'.').toLowerCase() + '@localhost',
+                    jid: name.replace(/ /g,'.').toLowerCase() + '@montague.lit',
                     name: include_nick ? name : undefined,
                     subscription: 'both'
                 }).up()
@@ -311,11 +311,11 @@
             j = i;
             for (i=j; i<j+mock.groups[name]; i++) {
                 converse.roster.create({
-                    jid: mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@localhost',
-                    subscription: 'both',
-                    ask: null,
-                    groups: name === 'ungrouped'? [] : [name],
-                    fullname: mock.cur_names[i]
+                    'jid': mock.cur_names[i].replace(/ /g,'.').toLowerCase() + '@montague.lit',
+                    'subscription': 'both',
+                    'ask': null,
+                    'groups': name === 'ungrouped'? [] : [name],
+                    'name': mock.cur_names[i]
                 });
             }
         });

Some files were not shown because too many files changed in this diff