From mboxrd@z Thu Jan 1 00:00:00 1970 From: Martyn Jago Subject: Re: [babel] Trying to add ERT test cases Date: Wed, 21 Sep 2011 05:18:55 +0100 Message-ID: References: <80sjnswzh5.fsf@somewhere.org> <87ipoov7q3.fsf@gmail.com> <87obyftf22.fsf@gmail.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Return-path: Received: from eggs.gnu.org ([140.186.70.92]:56294) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R6EHb-0005Tm-P8 for emacs-orgmode@gnu.org; Wed, 21 Sep 2011 00:19:40 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1R6EHa-0003KX-5j for emacs-orgmode@gnu.org; Wed, 21 Sep 2011 00:19:39 -0400 Received: from lo.gmane.org ([80.91.229.12]:32913) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R6EHZ-0003KH-Od for emacs-orgmode@gnu.org; Wed, 21 Sep 2011 00:19:38 -0400 Received: from list by lo.gmane.org with local (Exim 4.69) (envelope-from ) id 1R6EHY-00035P-Ew for emacs-orgmode@gnu.org; Wed, 21 Sep 2011 06:19:36 +0200 Received: from 88-96-171-142.dsl.zen.co.uk ([88.96.171.142]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 21 Sep 2011 06:19:36 +0200 Received: from martyn.jago by 88-96-171-142.dsl.zen.co.uk with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 21 Sep 2011 06:19:36 +0200 List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: emacs-orgmode@gnu.org --=-=-= Content-Type: text/plain Hi Eric Eric Schulte writes: >>> >>> Footnotes: [1] ,---- >>> | org-test-with-temp-text is a Lisp macro in `org-test.el'. >>> | >>> | (org-test-with-temp-text TEXT &rest BODY) >>> | >>> | Run body in a temporary buffer with Org-mode as the active >>> | mode holding TEXT. If the string "" appears in TEXT >>> | then remove it and place the point there before running BODY. >>> `---- >> >> This looks useful, however I hit problems when refactoring my tests to >> use it. Would it be easy for your macro to accept string variables in >> addition to strings? >> > > Hmm, that is weird. I've just pushed up a fix so this should now be > solved. > > Thanks for the catch -- Eric Thanks, that works great. I've updated test-ob.el to use the macro and include a patch. Best, Martyn --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0001-Refactor-tests-to-use-org-test-with-temp-text.patch Content-Description: Refactor tests to use `org-test-with-temp-text' >From bb1680342b890dbe5562878a59655b5754ab5ef3 Mon Sep 17 00:00:00 2001 From: Martyn Jago Date: Wed, 21 Sep 2011 05:06:44 +0100 Subject: [PATCH] Refactor tests to use `org-test-with-temp-text' * testing/lisp/test-ob.el: refactor --- testing/lisp/test-ob.el | 125 ++++++++++++++++++++++------------------------- 1 files changed, 58 insertions(+), 67 deletions(-) diff --git a/testing/lisp/test-ob.el b/testing/lisp/test-ob.el index f78ca98..24a64c9 100644 --- a/testing/lisp/test-ob.el +++ b/testing/lisp/test-ob.el @@ -238,12 +238,10 @@ ))) (ert-deftest test-org-babel/inline-src_blk-default-results-replace-line-1 () - (with-temp-buffer - + (let ((test-line "src_sh{echo 1}")) ;; src_ at bol line 1... - (let ((test-line "src_sh{echo 1}")) - (insert test-line) - (should-error (org-ctrl-c-ctrl-c)) + (org-test-with-temp-text + test-line (goto-char (point-min)) (org-ctrl-c-ctrl-c) (should (string= (concat test-line " =1=") @@ -259,12 +257,10 @@ (should (string= (concat test-line " =1= =1= =1=") (buffer-substring-no-properties (point-at-bol) (point-at-eol))))) - ;; src_ follows space line 1... (let ((test-line " src_emacs-lisp{ 1 }")) - (beginning-of-line) - (insert (concat test-line "\n")) - (goto-char (point-min)) + (org-test-with-temp-text + test-line (should-error (org-ctrl-c-ctrl-c)) (forward-char) (org-ctrl-c-ctrl-c) (should (string= @@ -275,15 +271,13 @@ (concat test-line " =1= =1=") (buffer-substring-no-properties (point-at-bol) (point-at-eol)))) (forward-char) - (should-error (org-ctrl-c-ctrl-c)) - ))) + (should-error (org-ctrl-c-ctrl-c))))) (ert-deftest test-org-babel/inline-src_blk-default-results-replace-line-2 () - (with-temp-buffer - - ;; src_ at bol line 2... - (let ((test-line " src_emacs-lisp{ \"x\" }")) - (insert (concat "\n" test-line)) + ;; src_ at bol line 2... + (let ((test-line " src_emacs-lisp{ \"x\" }")) + (org-test-with-temp-text + (concat "\n" test-line) (should-error (org-ctrl-c-ctrl-c)) (goto-char (point-min)) (should-error (org-ctrl-c-ctrl-c)) @@ -292,9 +286,11 @@ (forward-char) (org-ctrl-c-ctrl-c) (should (string= (concat test-line " =x=") - (buffer-substring-no-properties (point-at-bol) (point-at-eol))))) + (buffer-substring-no-properties (point-at-bol) (point-at-eol)))))) - (let ((test-line "Some text prior to block src_emacs-lisp{ \"y\" }")) + (let ((test-line "Some text prior to block src_emacs-lisp{ \"y\" }")) + (org-test-with-temp-text + test-line (goto-char (point-max)) (insert (concat "\n" test-line " end")) (re-search-backward "src") (org-ctrl-c-ctrl-c) @@ -306,25 +302,25 @@ (concat test-line " =y= =y= end") (buffer-substring-no-properties (point-at-bol) (point-at-eol)))) (forward-char) - (should-error (org-ctrl-c-ctrl-c)) - ))) + (should-error (org-ctrl-c-ctrl-c)))))) (ert-deftest test-org-babel/inline-src_blk-manual-results-replace () - (with-temp-buffer - - (let ((test-line " src_emacs-lisp[:results replace]{ \"x\" }")) - (insert (concat "\n" test-line)) + (let ((test-line " src_emacs-lisp[:results replace]{ \"x\" }")) + (org-test-with-temp-text + (concat "\n" test-line) (should-error (org-ctrl-c-ctrl-c)) - (goto-char (point-min)) + (goto-char (point-max)) (should-error (org-ctrl-c-ctrl-c)) - (forward-line) + (beginning-of-line) (should-error (org-ctrl-c-ctrl-c)) (forward-char) (org-ctrl-c-ctrl-c) (should (string= (concat test-line " =x=") - (buffer-substring-no-properties (point-at-bol) (point-at-eol))))) + (buffer-substring-no-properties (point-at-bol) (point-at-eol)))))) - (let ((test-line " Some text prior to block src_emacs-lisp[:results replace]{ \"y\" }")) + (let ((test-line " Some text prior to block src_emacs-lisp[:results replace]{ \"y\" }")) + (org-test-with-temp-text + test-line (goto-char (point-max)) (insert (concat "\n" test-line " end")) (re-search-backward "src") (org-ctrl-c-ctrl-c) @@ -336,19 +332,20 @@ (concat test-line " =y= =y= end") (buffer-substring-no-properties (point-at-bol) (point-at-eol)))) (forward-char) - (should-error (org-ctrl-c-ctrl-c))) - )) + (should-error (org-ctrl-c-ctrl-c))))) (ert-deftest test-org-babel/inline-src_blk-results-silent () - (with-temp-buffer - - (let ((test-line "src_emacs-lisp[ :results silent ]{ \"x\" }")) - (insert test-line) - (should-error (org-ctrl-c-ctrl-c)) - (goto-char (point-min)) (org-ctrl-c-ctrl-c) + (let ((test-line "src_emacs-lisp[ :results silent ]{ \"x\" }")) + (org-test-with-temp-text + test-line + (org-ctrl-c-ctrl-c) (should (string= test-line - (buffer-substring-no-properties (point-at-bol) (point-at-eol))))) - (let ((test-line " Some text prior to block src_emacs-lisp[ :results silent ]{ \"y\" }")) + (buffer-substring-no-properties (point-at-bol) (point-at-eol)))) + (end-of-buffer) + (should-error (org-ctrl-c-ctrl-c)))) + (let ((test-line " Some text prior to block src_emacs-lisp[ :results silent ]{ \"y\" }")) + (org-test-with-temp-text + test-line (goto-char (point-max)) (insert (concat "\n" test-line " end")) (re-search-backward "src_") (org-ctrl-c-ctrl-c) @@ -358,54 +355,48 @@ (should (string= (concat test-line " end") (buffer-substring-no-properties (point-at-bol) (point-at-eol)))) (forward-char) - (should-error (org-ctrl-c-ctrl-c))) - )) + (should-error (org-ctrl-c-ctrl-c))))) (ert-deftest test-org-babel/inline-src_blk-results-raw () - (with-temp-buffer - - (let ((test-line "src_emacs-lisp[ :results raw ]{ \"x\" }")) - (insert test-line) - (goto-char (point-min)) (org-ctrl-c-ctrl-c) + (let ((test-line "src_emacs-lisp[ :results raw ]{ \"x\" }")) + (org-test-with-temp-text + test-line + (org-ctrl-c-ctrl-c) (should (string= (concat test-line " x") - (buffer-substring-no-properties (point-at-bol) (point-at-eol))))) - (let ((test-line " Some text prior to block src_emacs-lisp[ :results raw ]{ \"the\" }")) - (goto-char (point-max)) - (insert (concat "\n" test-line " end")) - (re-search-backward "src_") (org-ctrl-c-ctrl-c) + (buffer-string))))) + (let ((test-line " Some text prior to block src_emacs-lisp[ :results raw ]{ \"the\" }")) + (org-test-with-temp-text + (concat test-line " end") + (re-search-forward "src_") (org-ctrl-c-ctrl-c) (should (string= (concat test-line " the end") (buffer-substring-no-properties (point-at-bol) (point-at-eol)))) (re-search-forward "\" ") (org-ctrl-c-ctrl-c) (should (string= (concat test-line " the the end") (buffer-substring-no-properties (point-at-bol) (point-at-eol)))) (forward-char) - (should-error (org-ctrl-c-ctrl-c))) - )) + (should-error (org-ctrl-c-ctrl-c))))) (ert-deftest test-org-babel/inline-src_blk-results-file () - (with-temp-buffer - - (let ((test-line "src_emacs-lisp[ :results file ]{ \"~/test-file\" }")) - (insert test-line) - (goto-char (point-min)) (org-ctrl-c-ctrl-c) + (let ((test-line "src_emacs-lisp[ :results file ]{ \"~/test-file\" }")) + (org-test-with-temp-text + test-line + (org-ctrl-c-ctrl-c) (should (string= (concat test-line " [[file:~/test-file]]") (buffer-substring-no-properties (point-min) (point-max))))))) (ert-deftest test-org-babel/inline-src_blk-results-scalar () - (with-temp-buffer - - (let ((test-line "src_emacs-lisp[ :results scalar ]{ \"x\" }")) - (insert test-line) - (goto-char (point-min)) (org-ctrl-c-ctrl-c) + (let ((test-line "src_emacs-lisp[ :results scalar ]{ \"x\" }")) + (org-test-with-temp-text + test-line + (org-ctrl-c-ctrl-c) (should (string= (concat test-line " =\"x\"=") (buffer-substring-no-properties (point-min) (point-max))))))) (ert-deftest test-org-babel/inline-src_blk-results-verbatim () - (with-temp-buffer - - (let ((test-line "src_emacs-lisp[ :results verbatim ]{ \"x\" }")) - (insert test-line) - (goto-char (point-min)) (org-ctrl-c-ctrl-c) + (let ((test-line "src_emacs-lisp[ :results verbatim ]{ \"x\" }")) + (org-test-with-temp-text + test-line + (org-ctrl-c-ctrl-c) (should (string= (concat test-line " =\"x\"=") (buffer-substring-no-properties (point-min) (point-max))))))) -- 1.7.3.4 --=-=-= Content-Type: text/plain --- Org-mode version 7.7 (release_7.7.310.g4fbe) GNU Emacs 24.0.50.1 (x86_64-apple-darwin, NS apple-appkit-1038.35) of 2011-08-21 on virtualmac.porkrind.org --=-=-=--