unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
* [PATCH] test: add test-lib.el file with `visible-buffer-string' function
@ 2011-05-26 16:27 Dmitry Kurochkin
  2011-05-26 21:15 ` Carl Worth
  0 siblings, 1 reply; 2+ messages in thread
From: Dmitry Kurochkin @ 2011-05-26 16:27 UTC (permalink / raw)
  To: notmuch

The patch adds test-lib.el file for Emacs tests auxiliary stuff.
Currently, it implements two functions: `visible-buffer-string'
and `visible-buffer-substring'.  These are similar to standard
counterparts without "visible-" prefix but exclude invisible
text.  The functions are not used anywhere at the moment but
should be useful for testing hiding/showing in the Emacs
interface.
---
 test/test-lib.el |   35 +++++++++++++++++++++++++++++++++++
 test/test-lib.sh |    5 +++--
 2 files changed, 38 insertions(+), 2 deletions(-)
 create mode 100644 test/test-lib.el

diff --git a/test/test-lib.el b/test/test-lib.el
new file mode 100644
index 0000000..9439996
--- /dev/null
+++ b/test/test-lib.el
@@ -0,0 +1,35 @@
+;; test-lib.el --- auxiliary stuff for Notmuch Emacs tests.
+;;
+;; Copyright © Carl Worth
+;; Copyright © David Edmondson
+;;
+;; This file is part of Notmuch test suit.
+;;
+;; Notmuch is free software: you can redistribute it and/or modify it
+;; under the terms of the GNU General Public License as published by
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
+;;
+;; Notmuch is distributed in the hope that it will be useful, but
+;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+;; General Public License for more details.
+;;
+;; You should have received a copy of the GNU General Public License
+;; along with Notmuch.  If not, see <http://www.gnu.org/licenses/>.
+;;
+;; Authors: Dmitry Kurochkin <dmitry.kurochkin@gmail.com>
+
+(defun visible-buffer-string ()
+  "Same as `buffer-string', but excludes invisible text."
+  (visible-buffer-substring (point-min) (point-max)))
+
+(defun visible-buffer-substring (start end)
+  "Same as `buffer-substring', but excludes invisible text."
+  (let (str)
+    (while (< start end)
+      (let ((next-pos (next-char-property-change start end)))
+	(when (not (invisible-p start))
+	  (setq str (concat str (buffer-substring start next-pos))))
+	(setq start next-pos)))
+    str))
diff --git a/test/test-lib.sh b/test/test-lib.sh
index 7cc43cd..9645567 100755
--- a/test/test-lib.sh
+++ b/test/test-lib.sh
@@ -843,9 +843,9 @@ fi
 #
 # --no-site-file	Don't load the site-wide startup stuff
 #
-# --directory		Ensure that the local notmuch.el source is found
+# --directory		Ensure that the local elisp sources are found
 #
-# --load		Force loading of notmuch.el
+# --load		Force loading of notmuch.el and test-lib.el
 #
 # notmuch-test-wait	Function for tests to use to wait for process completion
 #
@@ -855,6 +855,7 @@ fi
 
 emacs \$BATCH --no-init-file --no-site-file \
 	--directory ../../emacs --load notmuch.el \
+	--directory .. --load test-lib.el \
 	--eval "(defun notmuch-test-wait ()
 			(while (get-buffer-process (current-buffer))
 				(sleep-for 0.1)))" \
-- 
1.7.5.1

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] test: add test-lib.el file with `visible-buffer-string' function
  2011-05-26 16:27 [PATCH] test: add test-lib.el file with `visible-buffer-string' function Dmitry Kurochkin
@ 2011-05-26 21:15 ` Carl Worth
  0 siblings, 0 replies; 2+ messages in thread
From: Carl Worth @ 2011-05-26 21:15 UTC (permalink / raw)
  To: Dmitry Kurochkin, notmuch

[-- Attachment #1: Type: text/plain, Size: 763 bytes --]

On Thu, 26 May 2011 20:27:58 +0400, Dmitry Kurochkin <dmitry.kurochkin@gmail.com> wrote:
> The patch adds test-lib.el file for Emacs tests auxiliary stuff.
> Currently, it implements two functions: `visible-buffer-string'
> and `visible-buffer-substring'.  These are similar to standard
> counterparts without "visible-" prefix but exclude invisible
> text.  The functions are not used anywhere at the moment but
> should be useful for testing hiding/showing in the Emacs
> interface.

Thanks. I generally hesitate to add dead code, but I think this will
come in handy at some point in the future, (where it might help motivate
someone to write that they might not write if this code weren't handy).

Pushed.

-Carl

-- 
carl.d.worth@intel.com

[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2011-05-26 21:15 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-05-26 16:27 [PATCH] test: add test-lib.el file with `visible-buffer-string' function Dmitry Kurochkin
2011-05-26 21:15 ` Carl Worth

Code repositories for project(s) associated with this public inbox

	https://yhetil.org/notmuch.git/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).