branch: externals/diff-hl commit eb8933f00b3aa83f6c395505fdf7b1ecf69814c7 Author: Dmitry Gutov <dmi...@gutov.dev> Commit: Dmitry Gutov <dmi...@gutov.dev>
Fix the "hide-staged but nil reference" behavior and update the tests --- Makefile | 2 +- diff-hl.el | 3 ++- test/diff-hl-test.el | 16 ++++++++++------ 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/Makefile b/Makefile index c35b4bd5f7..82ab81e15e 100644 --- a/Makefile +++ b/Makefile @@ -15,7 +15,7 @@ RM ?= rm -f all: compile test test: - $(EMACS) -batch -L . -l test/diff-hl-test.el -f ert-run-tests-batch-and-exit + $(EMACS) -batch -L . -l test/diff-hl-test.el -l test/diff-hl-adjust-test.el -f ert-run-tests-batch-and-exit compile: $(EMACS) -batch -L . -f batch-byte-compile $(SOURCES) diff --git a/diff-hl.el b/diff-hl.el index 8119600fd3..1b75b55a64 100644 --- a/diff-hl.el +++ b/diff-hl.el @@ -431,7 +431,8 @@ It can be a relative expression as well, such as \"HEAD^\" with Git, or diff-hl-reference-revision (diff-hl-modified-p state)) (let* ((ref-changes - (and diff-hl-reference-revision + (and (or diff-hl-reference-revision + hide-staged) (diff-hl-changes-from-buffer (diff-hl-changes-buffer file backend (if hide-staged 'git-index diff --git a/test/diff-hl-test.el b/test/diff-hl-test.el index f6caf93100..4d0256fb7e 100644 --- a/test/diff-hl-test.el +++ b/test/diff-hl-test.el @@ -164,12 +164,16 @@ (let ((diff-hl-show-staged-changes t)) (should (equal (diff-hl-changes) - '((1 1 insert) - (12 1 insert))))) + '((:reference . nil) + (:working + . + ((1 1 0 insert) + (12 1 0 insert))))))) (let ((diff-hl-show-staged-changes nil)) (should (equal (diff-hl-changes) - '((12 1 insert))))))) + '((:reference . ((1 1 0 insert))) + (:working . ((12 1 0 insert))))))))) (diff-hl-deftest diff-hl-flydiff-can-ignore-staged-changes () (diff-hl-test-in-source @@ -183,13 +187,13 @@ (should (equal (diff-hl-changes-from-buffer (diff-hl-diff-buffer-with-reference buffer-file-name)) - '((1 1 insert) - (12 1 insert))))) + '((1 1 0 insert) + (12 1 0 insert))))) (let ((diff-hl-show-staged-changes nil)) (should (equal (diff-hl-changes-from-buffer (diff-hl-diff-buffer-with-reference buffer-file-name)) - '((12 1 insert))))))) + '((12 1 0 insert))))))) (diff-hl-deftest diff-hl-can-split-away-no-trailing-newline () (diff-hl-test-in-source