diff --git a/pywikidiff2/pywikidiff2.cpp b/pywikidiff2/pywikidiff2.cpp index a70e453..b8789c5 100644 --- a/pywikidiff2/pywikidiff2.cpp +++ b/pywikidiff2/pywikidiff2.cpp @@ -104,7 +104,7 @@ static PyObject *pywikidiff2_inline_json_diff(pywikidiff2Obj *self, PyObject *ar PyErr_SetString(PyExc_ValueError, "Error in arguments to inline_json_diff"); return NULL; } - if(numContextLines == NULL){ + if(numContextLines != NULL){ *(&self->config.numContextLines) = numContextLines; } Wikidiff2 wikidiff2( *(&self->config)); @@ -118,7 +118,6 @@ static PyObject *pywikidiff2_inline_json_diff(pywikidiff2Obj *self, PyObject *ar wikidiff2.addFormatter(formatter); wikidiff2.execute(text1String, text2String); Wikidiff2::String ret = formatter.getResult().str(); - PySys_WriteStdout(ret.c_str()); return PyUnicode_FromFormat("%s",ret.c_str()); }; diff --git a/test/test_pywikidiff2.py b/test/test_pywikidiff2.py index 4cd3dcb..883140e 100644 --- a/test/test_pywikidiff2.py +++ b/test/test_pywikidiff2.py @@ -1,8 +1,9 @@ import pywikidiff2 - +import json +num_context_lines = 100000 obj = pywikidiff2.pywikidiff2() -obj = pywikidiff2.pywikidiff2(numContextLines=500000) -print(obj.num_context_lines()) +obj = pywikidiff2.pywikidiff2(numContextLines=num_context_lines) +assert obj.num_context_lines() == num_context_lines print(obj.moved_line_threshold()) print(obj.change_threshold()) print(obj.moved_paragraph_detection_cutoff()) @@ -13,3 +14,11 @@ print(obj.final_split_threshold()) res = obj.inline_json_diff("help! \n I'm alive", "help! \n dead I am") print('\n') print(res) +res = obj.inline_json_diff(open("test/1295229484",'r').read(), + open("test/1295229484_parmove_and_change",'r').read()) +res = json.loads(res) +assert res["diff"][0]["type"] == 0 +print(res) +res = obj.inline_json_diff(open("test/1295229484",'r').read(), + open("test/1295229484_parmove_and_change",'r').read(), + numContextLines=10)