testing: provide tests for header-args[:lang] properties
This commit is contained in:
parent
8cbbbe16a5
commit
36d9a7a4e3
|
@ -0,0 +1,126 @@
|
|||
#+TITLE: Tests for default header arguments to Babel source blocks
|
||||
#+OPTIONS: ^:nil
|
||||
#+PROPERTY: var t1="go1" t3="go3_clobbered"
|
||||
#+PROPERTY: var+ t2="go2" t3="go3"
|
||||
#+PROPERTY: header-args :var t1="gh1" t2="gh2_clobbered"
|
||||
#+PROPERTY: header-args+ :var t4="gh4" t2="gh2" :var end=9
|
||||
#+PROPERTY: header-args:emacs-lisp :var t1="ge1" t4="ge4_clobbered"
|
||||
#+PROPERTY: header-args:emacs-lisp+ :var t4="ge4" :var t5="ge5"
|
||||
#+PROPERTY: header-args:emacs-lisp+ :results silent :noweb yes
|
||||
|
||||
#+NAME: showvar
|
||||
#+BEGIN_SRC emacs-lisp :execute no
|
||||
(mapconcat (lambda (n)
|
||||
(let* ((n (string (+ 48 n)))
|
||||
(p (intern (concat "t" n))))
|
||||
(if (boundp p) (eval p) (concat "--" n))))
|
||||
(number-sequence 1 end)
|
||||
"/")
|
||||
#+END_SRC
|
||||
|
||||
* Global property
|
||||
:PROPERTIES:
|
||||
:ID: 3fdadb69-5d15-411e-aad0-f7860cdd7816
|
||||
:END:
|
||||
|
||||
| Global | t1 | t2 | t3 | t4 | t5 | t6 | t7 | t8 | t9 |
|
||||
|------------------------+-----+-----+-----+-----+-----+-----+-----+-----+-----|
|
||||
| var property | go1 | go2 | go3 | --- | --- | --- | --- | --- | --- |
|
||||
| header-args | gh1 | gh2 | --- | gh4 | --- | --- | --- | --- | --- |
|
||||
| header-args:emacs-lisp | ge1 | --- | --- | ge4 | ge5 | --- | --- | --- | --- |
|
||||
|------------------------+-----+-----+-----+-----+-----+-----+-----+-----+-----|
|
||||
| Result | ge1 | gh2 | go3 | ge4 | ge5 | --6 | --7 | --8 | --9 |
|
||||
|
||||
#+CALL: showvar() :results silent
|
||||
#+BEGIN_SRC emacs-lisp :var end=7
|
||||
<<showvar>>
|
||||
#+END_SRC
|
||||
|
||||
* Tree property
|
||||
** Overwrite
|
||||
:PROPERTIES:
|
||||
:ID: a9cdfeda-9f31-4bb5-b694-2cf452f07dfd
|
||||
:var: t6="to6"
|
||||
:header-args: :var t7="th7"
|
||||
:header-args:emacs-lisp: :var t8="te8"
|
||||
:header-args:emacs-lisp+: :results silent :noweb yes :var end=9
|
||||
:END:
|
||||
|
||||
| Global | t1 | t2 | t3 | t4 | t5 | t6 | t7 | t8 | t9 |
|
||||
|------------------------+-----+-----+-----+-----+-----+-----+-----+-----+-----|
|
||||
| var property | go1 | go2 | go3 | --- | --- | --- | --- | --- | --- |
|
||||
| header-args | gh1 | gh2 | --- | gh4 | --- | --- | --- | --- | --- |
|
||||
| header-args:emacs-lisp | ge1 | --- | --- | ge4 | ge5 | --- | --- | --- | --- |
|
||||
|------------------------+-----+-----+-----+-----+-----+-----+-----+-----+-----|
|
||||
| Tree | t1 | t2 | t3 | t4 | t5 | t6 | t7 | t8 | t9 |
|
||||
|------------------------+-----+-----+-----+-----+-----+-----+-----+-----+-----|
|
||||
| var property | --- | --- | --- | --- | --- | to6 | --- | --- | --- |
|
||||
| header-args | --- | --- | --- | --- | --- | --- | th7 | --- | --- |
|
||||
| header-args:emacs-lisp | --- | --- | --- | --- | --- | --- | --- | te8 | --- |
|
||||
|------------------------+-----+-----+-----+-----+-----+-----+-----+-----+-----|
|
||||
| Result #+CALL | go1 | go2 | go3 | --4 | --5 | --- | th7 | te8 | --9 |
|
||||
| Result noweb | --1 | --2 | --3 | --4 | --5 | to6 | th7 | te8 | --9 |
|
||||
|
||||
#+CALL: showvar() :results silent
|
||||
#+BEGIN_SRC emacs-lisp
|
||||
<<showvar>>
|
||||
#+END_SRC
|
||||
|
||||
** Accumulate
|
||||
:PROPERTIES:
|
||||
:ID: 1d97d258-fd50-4107-a095-e4625bffc57b
|
||||
:var+: t1="to1"
|
||||
:var+: t6="to6"
|
||||
:header-args+: :var t2="th2" t3="th3"
|
||||
:header-args:emacs-lisp+: :var t5="te5" end=8
|
||||
:END:
|
||||
|
||||
| Global | t1 | t2 | t3 | t4 | t5 | t6 | t7 | t8 | t9 |
|
||||
|-------------------------+-----+-----+-----+-----+-----+-----+-----+-----+-----|
|
||||
| var property | go1 | go2 | go3 | --- | --- | --- | --- | --- | --- |
|
||||
| header-args | gh1 | gh2 | --- | gh4 | --- | --- | --- | --- | --- |
|
||||
| header-args:emacs-lisp | ge1 | --- | --- | ge4 | ge5 | --- | --- | --- | --- |
|
||||
|-------------------------+-----+-----+-----+-----+-----+-----+-----+-----+-----|
|
||||
| Tree | t1 | t2 | t3 | t4 | t5 | t6 | t7 | t8 | t9 |
|
||||
|-------------------------+-----+-----+-----+-----+-----+-----+-----+-----+-----|
|
||||
| var+ property | to1 | --- | --- | --- | --- | to6 | --- | --- | --- |
|
||||
| header-args+ | --- | th2 | th3 | --- | --- | --- | --- | --- | --- |
|
||||
| header-args:emacs-lisp+ | --- | --- | --- | --- | te5 | --- | --- | --- | --- |
|
||||
|-------------------------+-----+-----+-----+-----+-----+-----+-----+-----+-----|
|
||||
| Result #+CALL | ge1 | th2 | th3 | ge4 | te5 | --6 | --7 | --8 | --9 |
|
||||
| Result noweb | ge1 | th2 | th3 | ge4 | te5 | to6 | --7 | --8 | --9 |
|
||||
|
||||
#+CALL: showvar(end=6) :results silent
|
||||
#+BEGIN_SRC emacs-lisp
|
||||
<<showvar>>
|
||||
#+END_SRC
|
||||
|
||||
** Complex
|
||||
:PROPERTIES:
|
||||
:ID: fa0e912d-d9b4-47b0-9f9e-1cbb39f7cbc2
|
||||
:var: t1="to1"
|
||||
:var+: t6="to6"
|
||||
:header-args+: :var t2="th2"
|
||||
:header-args:emacs-lisp: :var t5="te5" end=7
|
||||
:header-args:emacs-lisp+: :results silent :noweb yes :var end=9
|
||||
:END:
|
||||
|
||||
| Global | t1 | t2 | t3 | t4 | t5 | t6 | t7 | t8 | t9 |
|
||||
|------------------------+-----+-----+-----+-----+-----+-----+-----+-----+-----|
|
||||
| var property | go1 | go2 | go3 | --- | --- | --- | --- | --- | --- |
|
||||
| header-args | gh1 | gh2 | --- | gh4 | --- | --- | --- | --- | --- |
|
||||
| header-args:emacs-lisp | ge1 | --- | --- | ge4 | ge5 | --- | --- | --- | --- |
|
||||
|------------------------+-----+-----+-----+-----+-----+-----+-----+-----+-----|
|
||||
| Tree | t1 | t2 | t3 | t4 | t5 | t6 | t7 | t8 | t9 |
|
||||
|------------------------+-----+-----+-----+-----+-----+-----+-----+-----+-----|
|
||||
| var property | to1 | --- | --- | --- | --- | to6 | --- | --- | --- |
|
||||
| header-args+ | --- | th2 | --- | --- | --- | --- | --- | --- | --- |
|
||||
| header-args:emacs-lisp | --- | --- | --- | --- | te5 | --- | --- | --- | --- |
|
||||
|------------------------+-----+-----+-----+-----+-----+-----+-----+-----+-----|
|
||||
| Result #+CALL | gh1 | th2 | go3 | gh4 | te5 | --6 | --7 | --8 | --9 |
|
||||
| Result noweb | gh1 | th2 | --3 | gh4 | te5 | to6 | --7 | --8 | --9 |
|
||||
|
||||
#+CALL: showvar(end=6) :results silent
|
||||
#+BEGIN_SRC emacs-lisp
|
||||
<<showvar>>
|
||||
#+END_SRC
|
|
@ -0,0 +1,77 @@
|
|||
;;; test-ob-header-arg-defaults.el --- tests for default header args from properties
|
||||
|
||||
;; Copyright (c) 2013 Achim Gratz
|
||||
;; Authors: Achim Gratz
|
||||
|
||||
;; This file is not part of GNU Emacs.
|
||||
|
||||
;; This program 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.
|
||||
|
||||
;; This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
;;; Code:
|
||||
|
||||
(ert-deftest test-ob-header-arg-defaults/global/call ()
|
||||
(org-test-at-id "3fdadb69-5d15-411e-aad0-f7860cdd7816"
|
||||
(org-babel-next-src-block 1)
|
||||
(forward-line -1)
|
||||
(should (equal "ge1/gh2/go3/ge4/ge5/--6/--7/--8/--9"
|
||||
(org-babel-lob-execute (org-babel-lob-get-info))))))
|
||||
|
||||
(ert-deftest test-ob-header-arg-defaults/global/noweb ()
|
||||
(org-test-at-id "3fdadb69-5d15-411e-aad0-f7860cdd7816"
|
||||
(org-babel-next-src-block 1)
|
||||
(should (equal "ge1/gh2/go3/ge4/ge5/--6/--7"
|
||||
(org-babel-execute-src-block)))))
|
||||
|
||||
(ert-deftest test-ob-header-arg-defaults/tree/overwrite/call ()
|
||||
(org-test-at-id "a9cdfeda-9f31-4bb5-b694-2cf452f07dfd"
|
||||
(org-babel-next-src-block 1)
|
||||
(forward-line -1)
|
||||
(should (equal "go1/go2/go3/--4/--5/--6/th7/te8/--9"
|
||||
(org-babel-lob-execute (org-babel-lob-get-info))))))
|
||||
|
||||
(ert-deftest test-ob-header-arg-defaults/tree/overwrite/noweb ()
|
||||
(org-test-at-id "a9cdfeda-9f31-4bb5-b694-2cf452f07dfd"
|
||||
(org-babel-next-src-block 1)
|
||||
(should (equal "--1/--2/--3/--4/--5/to6/th7/te8/--9"
|
||||
(org-babel-execute-src-block)))))
|
||||
|
||||
(ert-deftest test-ob-header-arg-defaults/tree/accumulate/call ()
|
||||
(org-test-at-id "1d97d258-fd50-4107-a095-e4625bffc57b"
|
||||
(org-babel-next-src-block 1)
|
||||
(forward-line -1)
|
||||
(should (equal "ge1/th2/th3/ge4/te5/--6"
|
||||
(org-babel-lob-execute (org-babel-lob-get-info))))))
|
||||
|
||||
(ert-deftest test-ob-header-arg-defaults/tree/accumulate/noweb ()
|
||||
(org-test-at-id "1d97d258-fd50-4107-a095-e4625bffc57b"
|
||||
(org-babel-next-src-block 1)
|
||||
(should (equal "ge1/th2/th3/ge4/te5/to6/--7/--8"
|
||||
(org-babel-execute-src-block)))))
|
||||
|
||||
(ert-deftest test-ob-header-arg-defaults/tree/complex/call ()
|
||||
(org-test-at-id "fa0e912d-d9b4-47b0-9f9e-1cbb39f7cbc2"
|
||||
(org-babel-next-src-block 1)
|
||||
(forward-line -1)
|
||||
(should (equal "gh1/th2/go3/gh4/te5/--6"
|
||||
(org-babel-lob-execute (org-babel-lob-get-info))))))
|
||||
|
||||
(ert-deftest test-ob-header-arg-defaults/tree/complex/noweb ()
|
||||
(org-test-at-id "fa0e912d-d9b4-47b0-9f9e-1cbb39f7cbc2"
|
||||
(org-babel-next-src-block 1)
|
||||
(should (equal "gh1/th2/--3/gh4/te5/to6/--7/--8/--9"
|
||||
(org-babel-execute-src-block)))))
|
||||
|
||||
(provide 'test-ob-header-arg-defaults)
|
||||
|
||||
;;; test-ob-header-arg-defaults.el ends here
|
Loading…
Reference in New Issue