Fix #17514 Given the comments I've adjusted this somewhat. The numbers of characters detected are increased and include things like the use of U+300 to make à instead of à and non-breaking spaces. There is a button which can be used to escape the content to show it.
Showing the changes to services/gitdiff/gitdiff_test.go (1 of 26 files). Show all
Unified · Split
| @@ -38,14 +38,14 @@ func TestDiffToHTML(t *testing.T) { · 37 unmodified lines | ||
| 38 | 38 | {Type: dmp.DiffInsert, Text: "bar"}, |
| 39 | 39 | {Type: dmp.DiffDelete, Text: " baz"}, |
| 40 | 40 | {Type: dmp.DiffEqual, Text: " biz"}, |
| 41 | − }, DiffLineAdd)) | |
| 41 | + }, DiffLineAdd).Content) | |
| 42 | 42 | |
| 43 | 43 | assertEqual(t, "foo <span class=\"removed-code\">bar</span> biz", diffToHTML("", []dmp.Diff{ |
| 44 | 44 | {Type: dmp.DiffEqual, Text: "foo "}, |
| 45 | 45 | {Type: dmp.DiffDelete, Text: "bar"}, |
| 46 | 46 | {Type: dmp.DiffInsert, Text: " baz"}, |
| 47 | 47 | {Type: dmp.DiffEqual, Text: " biz"}, |
| 48 | − }, DiffLineDel)) | |
| 48 | + }, DiffLineDel).Content) | |
| 49 | 49 | |
| 50 | 50 | assertEqual(t, "<span class=\"k\">if</span> <span class=\"p\">!</span><span class=\"nx\">nohl</span> <span class=\"o\">&&</span> <span class=\"added-code\"><span class=\"p\">(</span></span><span class=\"nx\">lexer</span> <span class=\"o\">!=</span> <span class=\"kc\">nil</span><span class=\"added-code\"> <span class=\"o\">||</span> <span class=\"nx\">r</span><span class=\"p\">.</span><span class=\"nx\">GuessLanguage</span><span class=\"p\">)</span></span> <span class=\"p\">{</span>", diffToHTML("", []dmp.Diff{ |
| 51 | 51 | {Type: dmp.DiffEqual, Text: "<span class=\"k\">if</span> <span class=\"p\">!</span><span class=\"nx\">nohl</span> <span class=\"o\">&&</span> <span class=\""}, |
| @@ -53,7 +53,7 @@ func TestDiffToHTML(t *testing.T) { · 1 unmodified line | ||
| 53 | 53 | {Type: dmp.DiffEqual, Text: "nx\">lexer</span> <span class=\"o\">!=</span> <span class=\"kc\">nil"}, |
| 54 | 54 | {Type: dmp.DiffInsert, Text: "</span> <span class=\"o\">||</span> <span class=\"nx\">r</span><span class=\"p\">.</span><span class=\"nx\">GuessLanguage</span><span class=\"p\">)"}, |
| 55 | 55 | {Type: dmp.DiffEqual, Text: "</span> <span class=\"p\">{</span>"}, |
| 56 | − }, DiffLineAdd)) | |
| 56 | + }, DiffLineAdd).Content) | |
| 57 | 57 | |
| 58 | 58 | assertEqual(t, "<span class=\"nx\">tagURL</span> <span class=\"o\">:=</span> <span class=\"removed-code\"><span class=\"nx\">fmt</span><span class=\"p\">.</span><span class=\"nf\">Sprintf</span><span class=\"p\">(</span><span class=\"s\">"## [%s](%s/%s/%s/%s?q=&type=all&state=closed&milestone=%d) - %s"</span><span class=\"p\">,</span> <span class=\"nx\">ge</span><span class=\"p\">.</span><span class=\"nx\">Milestone\"</span></span><span class=\"p\">,</span> <span class=\"nx\">ge</span><span class=\"p\">.</span><span class=\"nx\">BaseURL</span><span class=\"p\">,</span> <span class=\"nx\">ge</span><span class=\"p\">.</span><span class=\"nx\">Owner</span><span class=\"p\">,</span> <span class=\"nx\">ge</span><span class=\"p\">.</span><span class=\"nx\">Repo</span><span class=\"p\">,</span> <span class=\"removed-code\"><span class=\"nx\">from</span><span class=\"p\">,</span> <span class=\"nx\">milestoneID</span><span class=\"p\">,</span> <span class=\"nx\">time</span><span class=\"p\">.</span><span class=\"nf\">Now</span><span class=\"p\">(</span><span class=\"p\">)</span><span class=\"p\">.</span><span class=\"nf\">Format</span><span class=\"p\">(</span><span class=\"s\">"2006-01-02"</span><span class=\"p\">)</span></span><span class=\"p\">)</span>", diffToHTML("", []dmp.Diff{ |
| 59 | 59 | {Type: dmp.DiffEqual, Text: "<span class=\"nx\">tagURL</span> <span class=\"o\">:=</span> <span class=\"n"}, |
| @@ -63,7 +63,7 @@ func TestDiffToHTML(t *testing.T) { · 3 unmodified lines | ||
| 63 | 63 | {Type: dmp.DiffDelete, Text: "from</span><span class=\"p\">,</span> <span class=\"nx\">milestoneID</span><span class=\"p\">,</span> <span class=\"nx\">time</span><span class=\"p\">.</span><span class=\"nf\">Now</span><span class=\"p\">(</span><span class=\"p\">)</span><span class=\"p\">.</span><span class=\"nf\">Format</span><span class=\"p\">(</span><span class=\"s\">"2006-01-02"</span><span class=\"p\">)"}, |
| 64 | 64 | {Type: dmp.DiffInsert, Text: "ge</span><span class=\"p\">.</span><span class=\"nx\">Milestone</span><span class=\"p\">,</span> <span class=\"nx\">from</span><span class=\"p\">,</span> <span class=\"nx\">milestoneID"}, |
| 65 | 65 | {Type: dmp.DiffEqual, Text: "</span><span class=\"p\">)</span>"}, |
| 66 | − }, DiffLineDel)) | |
| 66 | + }, DiffLineDel).Content) | |
| 67 | 67 | |
| 68 | 68 | assertEqual(t, "<span class=\"nx\">r</span><span class=\"p\">.</span><span class=\"nf\">WrapperRenderer</span><span class=\"p\">(</span><span class=\"nx\">w</span><span class=\"p\">,</span> <span class=\"removed-code\"><span class=\"nx\">language</span><span class=\"p\">,</span> <span class=\"kc\">true</span><span class=\"p\">,</span> <span class=\"nx\">attrs</span></span><span class=\"p\">,</span> <span class=\"kc\">false</span><span class=\"p\">)</span>", diffToHTML("", []dmp.Diff{ |
| 69 | 69 | {Type: dmp.DiffEqual, Text: "<span class=\"nx\">r</span><span class=\"p\">.</span><span class=\"nf\">WrapperRenderer</span><span class=\"p\">(</span><span class=\"nx\">w</span><span class=\"p\">,</span> <span class=\"nx\">"}, |
| @@ -71,14 +71,14 @@ func TestDiffToHTML(t *testing.T) { · 1 unmodified line | ||
| 71 | 71 | {Type: dmp.DiffEqual, Text: "c"}, |
| 72 | 72 | {Type: dmp.DiffDelete, Text: "lass=\"p\">,</span> <span class=\"kc\">true</span><span class=\"p\">,</span> <span class=\"nx\">attrs"}, |
| 73 | 73 | {Type: dmp.DiffEqual, Text: "</span><span class=\"p\">,</span> <span class=\"kc\">false</span><span class=\"p\">)</span>"}, |
| 74 | − }, DiffLineDel)) | |
| 74 | + }, DiffLineDel).Content) | |
| 75 | 75 | |
| 76 | 76 | assertEqual(t, "<span class=\"added-code\">language</span><span class=\"p\">,</span> <span class=\"kc\">true</span><span class=\"p\">,</span> <span class=\"nx\">attrs</span></span><span class=\"p\">,</span> <span class=\"kc\">false</span><span class=\"p\">)</span>", diffToHTML("", []dmp.Diff{ |
| 77 | 77 | {Type: dmp.DiffInsert, Text: "language</span><span "}, |
| 78 | 78 | {Type: dmp.DiffEqual, Text: "c"}, |
| 79 | 79 | {Type: dmp.DiffInsert, Text: "lass=\"p\">,</span> <span class=\"kc\">true</span><span class=\"p\">,</span> <span class=\"nx\">attrs"}, |
| 80 | 80 | {Type: dmp.DiffEqual, Text: "</span><span class=\"p\">,</span> <span class=\"kc\">false</span><span class=\"p\">)</span>"}, |
| 81 | − }, DiffLineAdd)) | |
| 81 | + }, DiffLineAdd).Content) | |
| 82 | 82 | |
| 83 | 83 | assertEqual(t, "<span class=\"k\">print</span><span class=\"added-code\"><span class=\"p\">(</span></span><span class=\"sa\"></span><span class=\"s2\">"</span><span class=\"s2\">// </span><span class=\"s2\">"</span><span class=\"p\">,</span> <span class=\"n\">sys</span><span class=\"o\">.</span><span class=\"n\">argv</span><span class=\"added-code\"><span class=\"p\">)</span></span>", diffToHTML("", []dmp.Diff{ |
| 84 | 84 | {Type: dmp.DiffEqual, Text: "<span class=\"k\">print</span>"}, |
| @@ -87,14 +87,14 @@ func TestDiffToHTML(t *testing.T) { · 2 unmodified lines | ||
| 87 | 87 | {Type: dmp.DiffInsert, Text: "class=\"p\">(</span>"}, |
| 88 | 88 | {Type: dmp.DiffEqual, Text: "<span class=\"sa\"></span><span class=\"s2\">"</span><span class=\"s2\">// </span><span class=\"s2\">"</span><span class=\"p\">,</span> <span class=\"n\">sys</span><span class=\"o\">.</span><span class=\"n\">argv</span>"}, |
| 89 | 89 | {Type: dmp.DiffInsert, Text: "<span class=\"p\">)</span>"}, |
| 90 | − }, DiffLineAdd)) | |
| 90 | + }, DiffLineAdd).Content) | |
| 91 | 91 | |
| 92 | 92 | assertEqual(t, "sh <span class=\"added-code\">'useradd -u $(stat -c "%u" .gitignore) jenkins'</span>", diffToHTML("", []dmp.Diff{ |
| 93 | 93 | {Type: dmp.DiffEqual, Text: "sh "}, |
| 94 | 94 | {Type: dmp.DiffDelete, Text: "4;useradd -u 111 jenkins""}, |
| 95 | 95 | {Type: dmp.DiffInsert, Text: "9;useradd -u $(stat -c "%u" .gitignore) jenkins'"}, |
| 96 | 96 | {Type: dmp.DiffEqual, Text: ";"}, |
| 97 | − }, DiffLineAdd)) | |
| 97 | + }, DiffLineAdd).Content) | |
| 98 | 98 | |
| 99 | 99 | assertEqual(t, "<span class=\"x\"> <h<span class=\"added-code\">4 class="release-list-title df ac"</span>></span>", diffToHTML("", []dmp.Diff{ |
| 100 | 100 | {Type: dmp.DiffEqual, Text: "<span class=\"x\"> <h"}, |
| @@ -102,7 +102,7 @@ func TestDiffToHTML(t *testing.T) { · 1 unmodified line | ||
| 102 | 102 | {Type: dmp.DiffEqual, Text: "3"}, |
| 103 | 103 | {Type: dmp.DiffInsert, Text: "4;release-list-title df ac""}, |
| 104 | 104 | {Type: dmp.DiffEqual, Text: "></span>"}, |
| 105 | − }, DiffLineAdd)) | |
| 105 | + }, DiffLineAdd).Content) | |
| 106 | 106 | } |
| 107 | 107 | |
| 108 | 108 | func TestParsePatch_skipTo(t *testing.T) { |
| @@ -718,7 +718,7 @@ func TestDiffToHTML_14231(t *testing.T) { · 609 unmodified lines | ||
| 718 | 718 | expected := ` <span class="n">run</span><span class="added-code"><span class="o">(</span><span class="n">db</span></span><span class="o">)</span>` |
| 719 | 719 | output := diffToHTML("main.v", diffRecord, DiffLineAdd) |
| 720 | 720 | |
| 721 | − assertEqual(t, expected, output) | |
| 721 | + assertEqual(t, expected, output.Content) | |
| 722 | 722 | } |
| 723 | 723 | |
| 724 | 724 | func TestNoCrashes(t *testing.T) { |