(eval-when-compile (require 'cl))
(require 'ert)
(require 'ein-output-area)
(defun ein:testing-insert-html--fix-urls-do-test (source desired)
(let ((s (ein:xml-parse-html-string source))
(d (ein:xml-parse-html-string desired)))
(ein:insert-html--fix-urls s 8888)
(should (equal s d))))
(defmacro ein:testing-insert-html--fix-urls-deftests (args-list)
`(progn
,@(cl-loop for i from 0
for args in args-list
for test = (intern (format "ein:insert-html--fix-urls/%s" i))
collect
`(ert-deftest ,test ()
(ein:testing-insert-html--fix-urls-do-test ,@args)))))
(ein:testing-insert-html--fix-urls-deftests
(;; Simple replaces
("text"
"text")
("text"
"text")
(""
"
")
("
"
"
")
;; Do not modify dom in these cases:
("text"
"text")
("text"
"text")
("
"
"
")
;; Bit more complicated cases:
("
link normal
" "link normal
") ("