mirror of
https://github.com/ether/etherpad-lite.git
synced 2025-04-22 00:16:15 -04:00
Merge pull request #1227 from ether/tests/add-timeslider-revisions-test
Add a timeslider test
This commit is contained in:
commit
5055852635
1 changed files with 60 additions and 0 deletions
60
tests/frontend/specs/timeslider_revisions.js
Normal file
60
tests/frontend/specs/timeslider_revisions.js
Normal file
|
@ -0,0 +1,60 @@
|
||||||
|
describe("timeslider", function(){
|
||||||
|
//create a new pad before each test run
|
||||||
|
beforeEach(function(cb){
|
||||||
|
helper.newPad(cb);
|
||||||
|
this.timeout(6000);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("loads adds a hundred revisions", function(done) {
|
||||||
|
var inner$ = helper.padInner$;
|
||||||
|
var chrome$ = helper.padChrome$;
|
||||||
|
|
||||||
|
// make some changes to produce 100 revisions
|
||||||
|
var timePerRev = 900
|
||||||
|
, revs = 100;
|
||||||
|
this.timeout(revs*timePerRev+10000);
|
||||||
|
for(var i=0; i < revs; i++) {
|
||||||
|
setTimeout(function() {
|
||||||
|
// enter 'a' in the first text element
|
||||||
|
inner$("div").first().sendkeys('a');
|
||||||
|
}, timePerRev*i);
|
||||||
|
}
|
||||||
|
|
||||||
|
setTimeout(function() {
|
||||||
|
// go to timeslider
|
||||||
|
$('#iframe-container iframe').attr('src', $('#iframe-container iframe').attr('src')+'/timeslider');
|
||||||
|
|
||||||
|
setTimeout(function() {
|
||||||
|
var timeslider$ = $('#iframe-container iframe')[0].contentWindow.$;
|
||||||
|
var $sliderBar = timeslider$('#ui-slider-bar');
|
||||||
|
|
||||||
|
var latestContents = timeslider$('#padcontent').text();
|
||||||
|
|
||||||
|
// Click somewhere on the timeslider
|
||||||
|
var e = new jQuery.Event('mousedown');
|
||||||
|
e.clientX = e.pageX = 150;
|
||||||
|
e.clientY = e.pageY = 45;
|
||||||
|
$sliderBar.trigger(e);
|
||||||
|
|
||||||
|
e = new jQuery.Event('mousedown');
|
||||||
|
e.clientX = e.pageX = 150;
|
||||||
|
e.clientY = e.pageY = 40;
|
||||||
|
$sliderBar.trigger(e);
|
||||||
|
|
||||||
|
e = new jQuery.Event('mousedown');
|
||||||
|
e.clientX = e.pageX = 150;
|
||||||
|
e.clientY = e.pageY = 50;
|
||||||
|
$sliderBar.trigger(e);
|
||||||
|
|
||||||
|
$sliderBar.trigger('mouseup')
|
||||||
|
|
||||||
|
setTimeout(function() {
|
||||||
|
//make sure the text has changed
|
||||||
|
expect( timeslider$('#padcontent').text() ).not.to.eql( latestContents );
|
||||||
|
done();
|
||||||
|
}, 1000);
|
||||||
|
|
||||||
|
}, 6000);
|
||||||
|
}, revs*timePerRev);
|
||||||
|
});
|
||||||
|
});
|
Loading…
Add table
Add a link
Reference in a new issue