;;; test-ox-texinfo.el --- Tests for ox-texinfo.el ;; Copyright (C) 2022 Rudolf Adamkovič ;; Author: Rudolf Adamkovič ;; 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 . ;;; Code: (require 'cl-lib) (require 'ox-texinfo) (unless (featurep 'ox-texinfo) (signal 'missing-test-dependency "org-export-texinfo")) (ert-deftest test-org-export-texinfo/latex-fragment () "Test `org-texinfo-latex-fragment' output." ;; inline TeX fragment (should (equal "@math{a^2 = b}" (org-texinfo-latex-fragment (org-element-create 'latex-fragment '(:value "$a^2 = b$")) nil '(:with-latex t)))) ;; inline TeX fragment, padded (should (equal "@math{a^2 = b}" (org-texinfo-latex-fragment (org-element-create 'latex-fragment '(:value "$ a^2 = b $")) nil '(:with-latex t)))) ;; inline LaTeX fragment (should (equal "@math{a^2 = b}" (org-texinfo-latex-fragment (org-element-create 'latex-fragment '(:value "\\(a^2 = b\\)")) nil '(:with-latex t)))) ;; inline LaTeX fragment, padded (should (equal "@math{a^2 = b}" (org-texinfo-latex-fragment (org-element-create 'latex-fragment '(:value "\\( a^2 = b \\)")) nil '(:with-latex t)))) ;; displayed TeX fragment, inline (should (equal (string-join (list "" "@displaymath" "a ^ 2 = b" "@end displaymath" "") "\n") (org-texinfo-latex-fragment (org-element-create 'latex-fragment (list :value "$$a ^ 2 = b$$")) nil '(:with-latex t)))) ;; displayed TeX fragment, inline, padded (should (equal (string-join (list "" "@displaymath" "a ^ 2 = b" "@end displaymath" "") "\n") (org-texinfo-latex-fragment (org-element-create 'latex-fragment (list :value "$$ a ^ 2 = b $$")) nil '(:with-latex t)))) ;; displayed TeX fragment, multi-line (should (equal (string-join (list "" "@displaymath" "a ^ 2 = b" "b ^ 2 = c" "@end displaymath" "") "\n") (org-texinfo-latex-fragment (org-element-create 'latex-fragment (list :value (string-join (list "$$" "a ^ 2 = b" "b ^ 2 = c" "$$") "\n"))) nil '(:with-latex t)))) ;; displayed TeX fragment, multi-line, indented (should (equal (string-join (list "" "@displaymath" "a ^ 2 = b" "b ^ 2 = c" "@end displaymath" "") "\n") (org-texinfo-latex-fragment (org-element-create 'latex-fragment (list :value (string-join (list " $$" " a ^ 2 = b" " b ^ 2 = c" " $$") "\n"))) nil '(:with-latex t)))) ;; displayed LaTeX fragment, inline (should (equal (string-join (list "" "@displaymath" "a ^ 2 = b" "@end displaymath" "") "\n") (org-texinfo-latex-fragment (org-element-create 'latex-fragment (list :value "\\[a ^ 2 = b\\]")) nil '(:with-latex t)))) ;; displayed LaTeX fragment, inline, padded (should (equal (string-join (list "" "@displaymath" "a ^ 2 = b" "@end displaymath" "") "\n") (org-texinfo-latex-fragment (org-element-create 'latex-fragment (list :value "\\[ a ^ 2 = b \\]")) nil '(:with-latex t))))) (ert-deftest test-org-export-texinfo/latex-environment () "Test `org-texinfo-latex-environment' output." ;; LaTeX environment (should (equal (string-join (list "@displaymath" "\\begin{equation}" "a ^ 2 = b" "b ^ 2 = c" "\\end{equation}" "@end displaymath") "\n") (org-texinfo-latex-environment (org-element-create 'latex-environment (list :value (string-join (list "\\begin{equation}" "a ^ 2 = b" "b ^ 2 = c" "\\end{equation}") "\n"))) nil '(:with-latex t)))) ;; LaTeX environment, indented (should (equal (string-join (list "@displaymath" "\\begin{equation}" "a ^ 2 = b" "b ^ 2 = c" "\\end{equation}" "@end displaymath") "\n") (org-texinfo-latex-environment (org-element-create 'latex-environment (list :value (string-join (list " \\begin{equation}" " a ^ 2 = b" " b ^ 2 = c" " \\end{equation}") "\n"))) nil '(:with-latex t))))) (provide 'test-ox-texinfo) ;;; test-ox-texinfo.el end here