emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
blob 264b77b1d8e03a5ddbb7fdef83da63503b42ec1c 1617 bytes (raw)
name: testing/lisp/test-ob-tangle.el 	 # note: path name is non-authoritative(*)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
 
;;; test-ob-tangle.el

;; Copyright (c) 2010 Eric Schulte
;; Authors: Eric Schulte

;; Released under the GNU General Public License version 3
;; see: http://www.gnu.org/licenses/gpl-3.0.html

;;;; Comments:

;; Template test file for Org-mode tests

\f
;;; Code:
(let ((load-path (cons (expand-file-name
			".." (file-name-directory
			      (or load-file-name buffer-file-name)))
		       load-path)))
  (require 'org-test)
  (require 'org-test-ob-consts))

\f
;;; Tests
(ert-deftest ob-tangle/noweb-on-tangle ()
  "Noweb header arguments tangle correctly.
- yes      expand on both export and tangle
- no       expand on neither export or tangle
- tangle   expand on only tangle not export"
  (let ((target-file (make-temp-file "ob-tangle-test-")))
    (org-test-at-id "eb1f6498-5bd9-45e0-9c56-50717053e7b7"
      (org-narrow-to-subtree)
      (org-babel-tangle target-file))
    (let ((tang (with-temp-buffer
		  (insert-file-contents target-file)
		  (buffer-string))))
      (flet ((exp-p (arg)
		    (and
		     (string-match
		      (format "noweb-%s-start\\([^\000]*\\)noweb-%s-end" arg arg)
		      tang)
		     (string-match "expanded" (match-string 1 tang)))))
	(should (exp-p "yes"))
	(should-not (exp-p "no"))
	(should (exp-p "tangle"))))))

(ert-deftest ob-tangle/no-excessive-id-insertion-on-tangle ()
  "Don't add IDs to headings without tangling code blocks."
  (org-test-at-id "ae7b55ca-9ef2-4d30-bd48-da30e35fd0f3"
    (org-babel-next-src-block)
    (org-babel-tangle)
    (org-babel-previous-src-block)
    (should (null (org-id-get)))))

(provide 'test-ob-tangle)

;;; test-ob-tangle.el ends here

debug log:

solving 264b77b ...
found 264b77b in https://git.savannah.gnu.org/cgit/emacs/org-mode.git

(*) Git path names are given by the tree(s) the blob belongs to.
    Blobs themselves have no identifier aside from the hash of its contents.^

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

	https://git.savannah.gnu.org/cgit/emacs/org-mode.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).