fix move lines up + unit test

This commit is contained in:
Fabian Jakobs 2010-12-15 19:28:30 +01:00
commit ba7168156b
2 changed files with 11 additions and 11 deletions

View file

@ -665,7 +665,7 @@ var Document = function(text, mode) {
if (firstRow <= 0) return 0;
var removed = this.lines.slice(firstRow, lastRow + 1);
this.$remove(new Range(firstRow-1, this.lines[firstRow-1], lastRow, this.lines[lastRow].length));
this.$remove(new Range(firstRow-1, this.lines[firstRow-1].length, lastRow, this.lines[lastRow].length));
this.$insertLines(firstRow - 1, removed);
this.fireChangeEvent(firstRow - 1, lastRow);

View file

@ -81,35 +81,35 @@ var Test = {
},
"test: move lines down" : function() {
var doc = new Document(["1", "2", "3", "4"]);
var doc = new Document(["a1", "a2", "a3", "a4"]);
doc.moveLinesDown(0, 1);
assert.equal(doc.toString(), ["3", "1", "2", "4"].join("\n"));
assert.equal(doc.toString(), ["a3", "a1", "a2", "a4"].join("\n"));
doc.moveLinesDown(1, 2);
assert.equal(doc.toString(), ["3", "4", "1", "2"].join("\n"));
assert.equal(doc.toString(), ["a3", "a4", "a1", "a2"].join("\n"));
doc.moveLinesDown(2, 3);
assert.equal(doc.toString(), ["3", "4", "1", "2"].join("\n"));
assert.equal(doc.toString(), ["a3", "a4", "a1", "a2"].join("\n"));
doc.moveLinesDown(2, 2);
assert.equal(doc.toString(), ["3", "4", "2", "1"].join("\n"));
assert.equal(doc.toString(), ["a3", "a4", "a2", "a1"].join("\n"));
},
"test: move lines up" : function() {
var doc = new Document(["1", "2", "3", "4"]);
var doc = new Document(["a1", "a2", "a3", "a4"]);
doc.moveLinesUp(2, 3);
assert.equal(doc.toString(), ["1", "3", "4", "2"].join("\n"));
assert.equal(doc.toString(), ["a1", "a3", "a4", "a2"].join("\n"));
doc.moveLinesUp(1, 2);
assert.equal(doc.toString(), ["3", "4", "1", "2"].join("\n"));
assert.equal(doc.toString(), ["a3", "a4", "a1", "a2"].join("\n"));
doc.moveLinesUp(0, 1);
assert.equal(doc.toString(), ["3", "4", "1", "2"].join("\n"));
assert.equal(doc.toString(), ["a3", "a4", "a1", "a2"].join("\n"));
doc.moveLinesUp(2, 2);
assert.equal(doc.toString(), ["3", "1", "4", "2"].join("\n"));
assert.equal(doc.toString(), ["a3", "a1", "a4", "a2"].join("\n"));
},
"test: duplicate lines" : function() {