2020-07-30 15:37:16 +02:00
|
|
|
exports.assert = function (code, optMsg) {
|
|
|
|
if (!eval(code)) throw new Error("FALSE: " + (optMsg || code));
|
|
|
|
};
|
|
|
|
|
|
|
|
exports.literal = function (v) {
|
|
|
|
if ((typeof v) == "string") {
|
|
|
|
return '"' + v.replace(/[\\\"]/g, '\\$1').replace(/\n/g, '\\n') + '"';
|
|
|
|
} else
|
|
|
|
return JSON.stringify(v);
|
|
|
|
}
|
|
|
|
|
|
|
|
exports.assertEqualArrays = function (a, b) {
|
2016-02-29 18:00:58 +01:00
|
|
|
return JSON.stringify(a) === JSON.stringify(b);
|
2020-07-30 15:37:16 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
exports.assertEqualStrings = function (a, b) {
|
2016-02-29 18:00:58 +01:00
|
|
|
return a === b
|
2020-07-30 15:37:16 +02:00
|
|
|
}
|
|
|
|
|
2020-07-30 16:28:27 +02:00
|
|
|
// not used
|
2020-07-30 15:37:16 +02:00
|
|
|
exports.throughIterator = function (opsStr) {
|
|
|
|
var iter = Changeset.opIterator(opsStr);
|
|
|
|
var assem = Changeset.opAssembler();
|
|
|
|
while (iter.hasNext()) {
|
|
|
|
assem.append(iter.next());
|
|
|
|
}
|
|
|
|
return assem.toString();
|
|
|
|
}
|
|
|
|
|
2020-07-30 16:28:27 +02:00
|
|
|
// not used
|
2020-07-30 15:37:16 +02:00
|
|
|
exports.throughSmartAssembler = function (opsStr) {
|
|
|
|
var iter = Changeset.opIterator(opsStr);
|
|
|
|
var assem = Changeset.smartOpAssembler();
|
|
|
|
while (iter.hasNext()) {
|
|
|
|
assem.append(iter.next());
|
|
|
|
}
|
|
|
|
assem.endDocument();
|
|
|
|
return assem.toString();
|
|
|
|
}
|