2010-11-21 13:51:50 -05:00
|
|
|
|
;;; test-org.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:
|
2011-09-06 13:11:12 -04:00
|
|
|
|
(let* ((testing-lisp-dir (file-name-directory
|
|
|
|
|
(or load-file-name buffer-file-name)))
|
|
|
|
|
(load-path (cons testing-lisp-dir load-path)))
|
|
|
|
|
(dolist (file (directory-files testing-lisp-dir 'full
|
|
|
|
|
"^\\([^.]\\|\\.\\([^.]\\|\\..\\)\\).*\\.org$"))
|
|
|
|
|
(require (intern (substring file 0 (- (length file) 3))))))
|
2010-11-21 13:51:50 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
;;; Tests
|
|
|
|
|
(ert-deftest test-org/org-link-escape-ascii-character ()
|
|
|
|
|
"Escape an ascii character."
|
|
|
|
|
(should
|
|
|
|
|
(string=
|
|
|
|
|
"%5B"
|
|
|
|
|
(org-link-escape "["))))
|
|
|
|
|
|
|
|
|
|
(ert-deftest test-org/org-link-escape-ascii-ctrl-character ()
|
|
|
|
|
"Escape an ascii control character."
|
|
|
|
|
(should
|
|
|
|
|
(string=
|
|
|
|
|
"%09"
|
|
|
|
|
(org-link-escape "\t"))))
|
|
|
|
|
|
|
|
|
|
(ert-deftest test-org/org-link-escape-multibyte-character ()
|
|
|
|
|
"Escape an unicode multibyte character."
|
|
|
|
|
(should
|
|
|
|
|
(string=
|
|
|
|
|
"%E2%82%AC"
|
|
|
|
|
(org-link-escape "€"))))
|
|
|
|
|
|
|
|
|
|
(ert-deftest test-org/org-link-escape-custom-table ()
|
|
|
|
|
"Escape string with custom character table."
|
|
|
|
|
(should
|
|
|
|
|
(string=
|
|
|
|
|
"Foo%3A%42ar%0A"
|
|
|
|
|
(org-link-escape "Foo:Bar\n" '(?\: ?\B)))))
|
|
|
|
|
|
|
|
|
|
(ert-deftest test-org/org-link-escape-custom-table-merge ()
|
|
|
|
|
"Escape string with custom table merged with default table."
|
|
|
|
|
(should
|
|
|
|
|
(string=
|
|
|
|
|
"%5BF%6F%6F%3A%42ar%0A%5D"
|
|
|
|
|
(org-link-escape "[Foo:Bar\n]" '(?\: ?\B ?\o) t))))
|
|
|
|
|
|
|
|
|
|
(ert-deftest test-org/org-link-unescape-ascii-character ()
|
|
|
|
|
"Unescape an ascii character."
|
|
|
|
|
(should
|
|
|
|
|
(string=
|
|
|
|
|
"["
|
|
|
|
|
(org-link-unescape "%5B"))))
|
|
|
|
|
|
|
|
|
|
(ert-deftest test-org/org-link-unescape-ascii-ctrl-character ()
|
|
|
|
|
"Unescpae an ascii control character."
|
|
|
|
|
(should
|
|
|
|
|
(string=
|
|
|
|
|
"\n"
|
|
|
|
|
(org-link-unescape "%0A"))))
|
|
|
|
|
|
|
|
|
|
(ert-deftest test-org/org-link-unescape-multibyte-character ()
|
|
|
|
|
"Unescape unicode multibyte character."
|
|
|
|
|
(should
|
|
|
|
|
(string=
|
|
|
|
|
"€"
|
|
|
|
|
(org-link-unescape "%E2%82%AC"))))
|
|
|
|
|
|
|
|
|
|
(ert-deftest test-org/org-link-unescape-ascii-extended-char ()
|
|
|
|
|
"Unescape old style percent escaped character."
|
|
|
|
|
(should
|
|
|
|
|
(string=
|
|
|
|
|
"àâçèéêîôùû"
|
2011-09-18 10:40:01 -04:00
|
|
|
|
(decode-coding-string (org-link-unescape "%E0%E2%E7%E8%E9%EA%EE%F4%F9%FB") 'latin-1))))
|
2010-11-21 13:51:50 -05:00
|
|
|
|
|
2010-11-29 15:04:41 -05:00
|
|
|
|
(ert-deftest test-org/org-link-escape-url-with-escaped-char ()
|
|
|
|
|
"Escape and unscape a URL that includes an escaped char.
|
|
|
|
|
http://article.gmane.org/gmane.emacs.orgmode/21459/"
|
|
|
|
|
(should
|
|
|
|
|
(string=
|
|
|
|
|
"http://some.host.com/form?&id=blah%2Bblah25"
|
|
|
|
|
(org-link-unescape (org-link-escape "http://some.host.com/form?&id=blah%2Bblah25")))))
|
|
|
|
|
|
2010-11-21 13:51:50 -05:00
|
|
|
|
(provide 'test-org)
|
|
|
|
|
|
|
|
|
|
;;; test-org.el ends here
|