Hello,

I try to define an ERT test so that I can check that the new export of
some test file gives me the same HTML output (to the byte!) than the
export done in the past (and present onto disk).

Here is my code to do so:

--8<---------------cut here---------------start------------->8---
(require 'ox)

(defun compare-org-html-export-files (orgfile)
  "Compare current export of ORGFILE with HTML file already present on disk."
  (let* ((base-name
          (concat (file-name-directory orgfile) (file-name-base orgfile)))
         (htmlfile (concat base-name ".html"))
         htmlcontents)
    (should
     (equal
      ;; new export
      (with-temp-buffer
        (insert-file-contents orgfile)
        (setq htmlcontents (org-export-as 'html))
        (delete-region (point-min) (point-max))
        (insert htmlcontents)
        (buffer-string))
      ;; old export
      (with-temp-buffer
        (insert-file-contents htmlfile)
        (buffer-string))))))

(ert-deftest org-export/export-html-test-file ()
  (compare-org-html-export-files "~/test.org"))
--8<---------------cut here---------------end--------------->8---

I don't understand, though, the error that I always get:

--8<---------------cut here---------------start------------->8---
Selector: org-export/export-html-test-file
Passed:  0
Failed:  1 (1 unexpected)
Skipped: 0
Total:   1/1

Started at:   2015-01-30 15:30:56+0100
Finished.
Finished at:  2015-01-30 15:30:56+0100

F

F org-export/export-html-test-file
    Compare current export of ORGFILE with HTML file already present on disk.
    (void-variable org-export-filters-alist)
--8<---------------cut here---------------end--------------->8---

Any idea why the variable `org-export-filters-alist' is said to be void,
while I explicitly load both `ox' (where it's defined) and `ox-html'?

Best regards,
  Seb

-- 
Sebastien Vauban


Reply via email to