diff --git a/openslides/motions/static/js/motions/diff.js b/openslides/motions/static/js/motions/diff.js index 7cd5cd6a9..893332cbc 100644 --- a/openslides/motions/static/js/motions/diff.js +++ b/openslides/motions/static/js/motions/diff.js @@ -1078,7 +1078,7 @@ angular.module('OpenSlidesApp.motions.diff', ['OpenSlidesApp.motions.lineNumberi }); diffUnnormalized = diffUnnormalized.replace( - /((
)?]+OS-LINE-NUMBER.+?)<\/del>/gi, + /((
)?]+OS-LINE-NUMBER[^>]+?>\s*<\/span>)<\/del>/gi, function(found,tag) { return tag.toLowerCase().replace(/> <\/span/gi, "> Einfügung 1 ...so frißt er Euch alle mit Haut und Haar und Augen und Därme und alles.

\n

Test

"); }); + + it('does not lose formattings when multiple lines are deleted', function () { + var before = '

' + + noMarkup(13) + 'diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd ' + + brMarkup(14) + 'gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.

', + after= '

Test

'; + var diff = diffService.diff(before, after).toLowerCase(), + expected = '

' + + noMarkup(13).replace(/ /, "\u00A0") + 'diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd ' + + brMarkup(14).replace(/ /, "\u00A0") + 'gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.

' + + '

Test

'; + + expect(diff).toBe(expected.toLowerCase()); + }); }); describe('ignoring line numbers', function () {