Hello, Bjarte Johansen <bjarte.johan...@gmail.com> writes:
> Fix a problem where a source block would return nil if the result was > cached and it was indented. Thank you. Some comments follow. > * lisp/ob-core.el (org-babel-execute-src-block): Move point to the the > first character of the result instead of the beginning of the line. > > * testing/lisp/test-ob.el > (test-org-babel/indented-cached-org-bracket-link): Added test to > to see if the indented cached result returns what it should return. You need to add TINYCHANGE at the end of the commit message if you haven't signed FSF papers yet. > - (end-of-line 1) (forward-char 1) > + (end-of-line 1) (forward-char (1+ (current-indentation))) Slightly better: (forward-line) (forward-char (current-indentation)) > +(ert-deftest test-org-babel/indented-cached-org-bracket-link () > + "When the result of a source block is indentend, a link and ^^^^^^^^ "a cached indented link" > +cached it should still return the link." > + (let ((test-block (concat "* Test\n" > + " #+BEGIN_SRC sh :file test.txt :cache yes\n" > + " echo 'text'\n" > + " #+END_SRC\n" > + "\n" > + " > #+RESULTS[be4fa2f5922220a6bc5b6c1f2a6747a067404506]:\n" > + " [[file:test.txt]]"))) > + (with-temp-buffer > + (insert test-block) > + (search-backward "BEGIN_SRC") > + (org-mode) > + (should (string= (concat default-directory "test.txt") > + (org-babel-execute-src-block)))))) You should use `org-test-with-temp-text' instead, and avoid "sh" as it might not be active. OTOH, emacs-lisp is always available: --8<---------------cut here---------------start------------->8--- (should (org-test-with-temp-text "* Test #+<point>BEGIN_SRC emacs-lisp :file test.txt :cache yes (message \"text\") #+END_SRC #+RESULTS[c9828cf13461ca9ccb31e76ba4aee02ec6d7a4e7]: [[file:test.txt]]" (string= (concat default-directory "test.txt") (org-babel-execute-src-block)))) --8<---------------cut here---------------end--------------->8--- Regards, -- Nicolas Goaziou