DefinitelyTyped/diff-match-patch/diff-match-patch-tests.ts

33 lines
856 B
TypeScript

///<reference path="./diff-match-patch.d.ts" />
import DiffMatchPatch = require("diff-match-patch");
var oldValue = "hello world, how are you?";
var newValue = "hello again world. how have you been?";
var diffEngine = new DiffMatchPatch.diff_match_patch();
var diffs = diffEngine.diff_main(oldValue, newValue);
diffEngine.diff_cleanupSemantic(diffs);
var changes = "";
var pattern = "";
diffs.forEach(function(diff) {
var operation = diff[0]; // Operation (insert, delete, equal)
var text = diff[1]; // Text of change
switch (operation) {
case DiffMatchPatch.DIFF_INSERT:
pattern += "I";
break;
case DiffMatchPatch.DIFF_DELETE:
pattern += "D";
break;
case DiffMatchPatch.DIFF_EQUAL:
pattern += "E";
break;
}
changes += text;
});