]> git.notmuchmail.org Git - notmuch/commitdiff
emacs: Do not abuse advice to monkey patch while testing
authorJonas Bernoulli <jonas@bernoul.li>
Sat, 8 Aug 2020 11:50:07 +0000 (13:50 +0200)
committerDavid Bremner <david@tethera.net>
Mon, 10 Aug 2020 00:17:06 +0000 (21:17 -0300)
Use `cl-letf*' instead.

test/T310-emacs.sh
test/test-lib.el

index 5f74305dd3ef912f8fd49dfb7b87086eee0acd26..78ac19a8655c150bd428657fcd387336b7b689d4 100755 (executable)
@@ -40,12 +40,14 @@ test_emacs '(notmuch-search "tag:inbox")
 test_expect_equal_file $EXPECTED/notmuch-search-tag-inbox OUTPUT
 
 test_begin_subtest "Incremental parsing of search results"
-test_emacs "(ad-enable-advice 'notmuch-search-process-filter 'around 'pessimal)
-           (ad-activate 'notmuch-search-process-filter)
-           (notmuch-search \"tag:inbox\")
-           (notmuch-test-wait)
-           (ad-disable-advice 'notmuch-search-process-filter 'around 'pessimal)
-           (ad-activate 'notmuch-search-process-filter)
+test_emacs "(cl-letf* (((symbol-function 'orig)
+                       (symbol-function 'notmuch-search-process-filter))
+                      ((symbol-function 'notmuch-search-process-filter)
+                       (lambda (proc string)
+                         (cl-loop for char across string
+                                  do (orig proc (char-to-string char))))))
+             (notmuch-search \"tag:inbox\")
+             (notmuch-test-wait))
            (test-output)"
 test_expect_equal_file $EXPECTED/notmuch-search-tag-inbox OUTPUT
 
index 044c2da46639226a5f5acb1fcaf81ec21566117f..ec16c59c60fff25b0c2f0fafcb3a3f7ae520c851 100644 (file)
@@ -97,14 +97,6 @@ running, quit if it terminated."
 (add-hook 'notmuch-hello-refresh-hook
          (lambda () (cl-incf notmuch-hello-refresh-hook-counter)))
 
-(defadvice notmuch-search-process-filter (around pessimal activate disable)
-  "Feed notmuch-search-process-filter one character at a time."
-  (let ((string (ad-get-arg 1)))
-    (cl-loop for char across string
-            do (progn
-                 (ad-set-arg 1 (char-to-string char))
-                 ad-do-it))))
-
 (defun notmuch-test-mark-links ()
   "Enclose links in the current buffer with << and >>."
   ;; Links are often created by jit-lock functions