mirror of
https://github.com/ether/etherpad-lite.git
synced 2025-04-26 02:16:16 -04:00
Merge pull request #1334 from mluto/load-more-chat-messages
Load more than 100 chat messages using a 'load more'-link
This commit is contained in:
commit
33e0ec2097
10 changed files with 256 additions and 57 deletions
85
tests/frontend/specs/chat_load_messages.js
Normal file
85
tests/frontend/specs/chat_load_messages.js
Normal file
|
@ -0,0 +1,85 @@
|
|||
describe("chat-load-messages", function(){
|
||||
it("creates a pad", function(done) {
|
||||
helper.newPad(done);
|
||||
});
|
||||
|
||||
it("adds a lot of messages", function(done) {
|
||||
var inner$ = helper.padInner$;
|
||||
var chrome$ = helper.padChrome$;
|
||||
var chatButton = chrome$("#chaticon");
|
||||
chatButton.click();
|
||||
var chatInput = chrome$("#chatinput");
|
||||
var chatText = chrome$("#chattext");
|
||||
|
||||
var messages = 140;
|
||||
for(var i=1; i <= messages; i++) {
|
||||
var num = ''+i;
|
||||
if(num.length == 1)
|
||||
num = '00'+num;
|
||||
if(num.length == 2)
|
||||
num = '0'+num;
|
||||
chatInput.sendkeys('msg' + num);
|
||||
chatInput.sendkeys('{enter}');
|
||||
}
|
||||
helper.waitFor(function(){
|
||||
return chatText.children("p").length == messages;
|
||||
}).always(function(){
|
||||
expect(chatText.children("p").length).to.be(messages);
|
||||
$('#iframe-container iframe')[0].contentWindow.location.reload();
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
it("checks initial message count", function(done) {
|
||||
var chatText;
|
||||
var expectedCount = 101;
|
||||
helper.waitFor(function(){
|
||||
// wait for the frame to load
|
||||
var chrome$ = $('#iframe-container iframe')[0].contentWindow.$;
|
||||
if(!chrome$) // page not fully loaded
|
||||
return false;
|
||||
|
||||
var chatButton = chrome$("#chaticon");
|
||||
chatButton.click();
|
||||
chatText = chrome$("#chattext");
|
||||
return chatText.children("p").length == expectedCount;
|
||||
}).always(function(){
|
||||
expect(chatText.children("p").length).to.be(expectedCount);
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
it("loads more messages", function(done) {
|
||||
var expectedCount = 122;
|
||||
var chrome$ = $('#iframe-container iframe')[0].contentWindow.$;
|
||||
var chatButton = chrome$("#chaticon");
|
||||
chatButton.click();
|
||||
var chatText = chrome$("#chattext");
|
||||
var loadMsgBtn = chrome$("#chatloadmessagesbutton");
|
||||
|
||||
loadMsgBtn.click();
|
||||
helper.waitFor(function(){
|
||||
return chatText.children("p").length == expectedCount;
|
||||
}).always(function(){
|
||||
expect(chatText.children("p").length).to.be(expectedCount);
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
it("checks for button vanishing", function(done) {
|
||||
var expectedDisplay = 'none';
|
||||
var chrome$ = $('#iframe-container iframe')[0].contentWindow.$;
|
||||
var chatButton = chrome$("#chaticon");
|
||||
chatButton.click();
|
||||
var chatText = chrome$("#chattext");
|
||||
var loadMsgBtn = chrome$("#chatloadmessagesbutton");
|
||||
|
||||
loadMsgBtn.click();
|
||||
helper.waitFor(function(){
|
||||
return loadMsgBtn.css('display') == expectedDisplay;
|
||||
}).always(function(){
|
||||
expect(loadMsgBtn.css('display')).to.be(expectedDisplay);
|
||||
done();
|
||||
});
|
||||
});
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue