|
@@ -0,0 +1,64 @@
|
|
|
+;;; test-org-html.el
|
|
|
+
|
|
|
+;; Copyright (c) ߛ David Maus
|
|
|
+;; Authors: David Maus
|
|
|
+
|
|
|
+;; 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
|
|
|
+
|
|
|
+
|
|
|
+;;; 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))
|
|
|
+
|
|
|
+
|
|
|
+;;; Tests
|
|
|
+(require 'org-html)
|
|
|
+(defvar test-org-html/export-link-alist
|
|
|
+ '((:description "mailto: link"
|
|
|
+ :link "[[mailto:john@example.tld]]"
|
|
|
+ :expected "<a href=\"mailto:john@example.tld\">mailto:john@example.tld</a>"
|
|
|
+ :opt-plist nil))
|
|
|
+ "List of link definitions to test exporting for.
|
|
|
+Each cell is a property list that defines a link export test
|
|
|
+using the properties as follows:
|
|
|
+
|
|
|
+:description A string with a short description of the test. This
|
|
|
+ is used as the doc-string of the created test.
|
|
|
+
|
|
|
+:link A string with the normalized Org mode link to test.
|
|
|
+
|
|
|
+:expected A string with the expected HTML markup.
|
|
|
+
|
|
|
+:opt-plist A property list with exporting options.")
|
|
|
+
|
|
|
+(defun test-org-html/export-link-factory ()
|
|
|
+ "*Create tests for links defined in
|
|
|
+ `test-org-html/export-link-alist'."
|
|
|
+ (let ((count 0))
|
|
|
+ (mapc
|
|
|
+ (lambda (link)
|
|
|
+ (eval
|
|
|
+ `(ert-deftest ,(intern (format "test-org-html/export-link/%d" count)) ()
|
|
|
+ ,(plist-get link :description)
|
|
|
+ (should
|
|
|
+ (string=
|
|
|
+ ,(plist-get link :expected)
|
|
|
+ (org-test-strip-text-props
|
|
|
+ (org-html-handle-links ,(plist-get link :link) ,(plist-get link :opt-plist)))))))
|
|
|
+ (setq count (1+ count))) test-org-html/export-link-alist)))
|
|
|
+
|
|
|
+;; Create tests for link export
|
|
|
+(test-org-html/export-link-factory)
|
|
|
+
|
|
|
+(provide 'test-org-html)
|
|
|
+
|
|
|
+;;; test-org-html.el ends here
|