pad.libre-service.eu-etherpad/tests/backend/specs/easysync/testAppendATextToAssembler.js

52 lines
1.2 KiB
JavaScript
Raw Normal View History

2020-08-04 12:47:44 +02:00
var Changeset = require("ep_etherpad-lite/static/js/Changeset");
var helper = require("./helper.js")
var assertEqualStrings = helper.assertEqualStrings;
describe("testAppendATextToAssembler",function(){
it("testAppendATextToAssembler",function(done){
testAppendATextToAssembler(1, {
text: "\n",
attribs: "|1+1"
}, "");
testAppendATextToAssembler(2, {
text: "\n\n",
attribs: "|2+2"
}, "|1+1");
testAppendATextToAssembler(3, {
text: "\n\n",
attribs: "*x|2+2"
}, "*x|1+1");
testAppendATextToAssembler(4, {
text: "\n\n",
attribs: "*x|1+1|1+1"
}, "*x|1+1");
testAppendATextToAssembler(5, {
text: "foo\n",
attribs: "|1+4"
}, "+3");
testAppendATextToAssembler(6, {
text: "\nfoo\n",
attribs: "|2+5"
}, "|1+1+3");
testAppendATextToAssembler(7, {
text: "\nfoo\n",
attribs: "*x|2+5"
}, "*x|1+1*x+3");
testAppendATextToAssembler(8, {
text: "\n\n\nfoo\n",
attribs: "|2+2*x|2+5"
}, "|2+2*x|1+1*x+3");
done();
})
})
function testAppendATextToAssembler(testId, atext, correctOps) {
var assem = Changeset.smartOpAssembler();
Changeset.appendATextToAssembler(atext, assem);
assertEqualStrings(correctOps, assem.toString());
}