diff options
| author | Craig Jennings <c@cjennings.net> | 2026-07-11 14:29:03 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-07-11 14:29:03 -0500 |
| commit | 016f322de184b09d79cb1d7db522a0aaa6c00a9f (patch) | |
| tree | f3ca3d8607244a71953fd9616e53ed7445853094 /tests/test-custom-ordering-reverse-lines.el | |
| parent | 1ba475cb0cf7076a284b13d808029309d13ea08c (diff) | |
| download | dotemacs-016f322de184b09d79cb1d7db522a0aaa6c00a9f.tar.gz dotemacs-016f322de184b09d79cb1d7db522a0aaa6c00a9f.zip | |
fix(custom-ordering): preserve the trailing newline in reverse and number
cj/reverse-lines and cj/number-lines split the region on newlines without accounting for a trailing one, so it became a spurious empty element. Reversing "a\nb\n" floated that empty to the top ("\nb\na"), and numbering added a phantom final numbered line. Both now strip a trailing newline before splitting and reattach it after, matching cj/--arrayify, while preserving internal blank lines. Corrected the two tests that asserted the broken output.
Diffstat (limited to 'tests/test-custom-ordering-reverse-lines.el')
| -rw-r--r-- | tests/test-custom-ordering-reverse-lines.el | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/tests/test-custom-ordering-reverse-lines.el b/tests/test-custom-ordering-reverse-lines.el index 3c71362d..5b8c01ac 100644 --- a/tests/test-custom-ordering-reverse-lines.el +++ b/tests/test-custom-ordering-reverse-lines.el @@ -86,9 +86,11 @@ Returns the transformed string." (should (string= result "b\n\na")))) (ert-deftest test-reverse-lines-trailing-newline () - "Should handle trailing newline." + "Should reverse the lines and preserve the trailing newline. +The old split dropped the trailing newline into a leading empty line, +producing \"\\nline2\\nline1\"." (let ((result (test-reverse-lines "line1\nline2\n"))) - (should (string= result "\nline2\nline1")))) + (should (string= result "line2\nline1\n")))) (ert-deftest test-reverse-lines-only-newlines () "Should reverse lines that are only newlines." |
