Test Cases - HTML Diff
data-diff-key
should return the same HTML element if no changes are made
should highlight added element
should mark changed element as modified without data-diff-mode
should preserve escaped attribute values when text changes
data-diff-mode='element'
should use atomic element diffing when data-diff-mode="element" is specified
should not duplicate identical element-mode nodes
should handle element diffing with existing classes
data-diff-mode='words'
should highlight added text within a paragraph
should keep escaped text when doing word-level diffing
should highlight removed text within a paragraph
should handle text changes with both additions and removals
should merge diff classes with existing classes
data-diff-show-when-removed
should insert removed element when it has data-diff-show-when-removed
should NOT insert removed element when it lacks data-diff-show-when-removed
should handle mixed scenarios - some elements show when removed, others don't
should preserve escaped text when re-inserting removed elements