diff --git a/bin/plantuml.jar b/bin/plantuml.jar new file mode 100644 index 0000000..8c1eef7 Binary files /dev/null and b/bin/plantuml.jar differ diff --git a/test/plantuml-mode-custom-jar-location-test.el b/test/plantuml-mode-custom-jar-location-test.el new file mode 100644 index 0000000..d946a56 --- /dev/null +++ b/test/plantuml-mode-custom-jar-location-test.el @@ -0,0 +1,23 @@ +;;; plantuml-mode-custom-jar-location-test.el --- PlantUML Mode JAR location tests -*- lexical-binding: t; -*- + +;; Author: Carlo Sciolla (skuro) +;; Maintainer: Carlo Sciolla (skuro) +;; URL: https://github.com/skuro/plantuml-mode + +;;; Commentary: + +;;; Code: + +(ert-deftest custom-jar-location () + (setq-local plantuml-jar-path "~/.plantuml/plantuml.jar") + (should (equal `("-Djava.awt.headless=true" "-jar" + ,(expand-file-name "~/.plantuml/plantuml.jar")) + (plantuml-render-command))) + + (setq-local plantuml-jar-path "/path/with spaces/plantuml.jar") + (should (equal `("-Djava.awt.headless=true" "-jar" "/path/with spaces/plantuml.jar") + (plantuml-render-command)))) + +(provide 'plantuml-mode-custom-jar-location-test) + +;;; plantuml-mode-custom-jar-location-test.el ends here diff --git a/test/plantuml-mode-test.el b/test/plantuml-mode-test.el index 81ba1bf..4c95184 100644 --- a/test/plantuml-mode-test.el +++ b/test/plantuml-mode-test.el @@ -12,4 +12,6 @@ (should (equal (expand-file-name "~/plantuml.jar") plantuml-jar-path))) +(provide 'plantuml-mode-test) + ;;; plantuml-mode-test.el ends here diff --git a/test/plantuml-preview-test.el b/test/plantuml-preview-test.el new file mode 100644 index 0000000..236b7a9 --- /dev/null +++ b/test/plantuml-preview-test.el @@ -0,0 +1,20 @@ +;;; plantuml-mode-preview-test.el --- PlantUML Mode preview tests -*- lexical-binding: t; -*- + +;; Author: Carlo Sciolla (skuro) +;; Maintainer: Carlo Sciolla (skuro) +;; URL: https://github.com/skuro/plantuml-mode + +;;; Commentary: + +;;; Code: + +(ert-deftest preview-test () + (setq-local plantuml-jar-path plantuml-test-jar-path) + (setq-local plantuml-output-type "utxt") + (plantuml-preview-string 42 (read-test-file "a-b.puml")) + (sleep-for 2) + (should (equal (read-test-file "a-b.txt") (read-preview-buffer)))) + +(provide 'plantuml-mode-preview-test) + +;;; plantuml-mode-preview-test.el ends here diff --git a/test/resources/a-b.puml b/test/resources/a-b.puml new file mode 100644 index 0000000..8acbb1f --- /dev/null +++ b/test/resources/a-b.puml @@ -0,0 +1,5 @@ +@startuml + +A -> B + +@enduml diff --git a/test/resources/a-b.txt b/test/resources/a-b.txt new file mode 100644 index 0000000..f4cd682 --- /dev/null +++ b/test/resources/a-b.txt @@ -0,0 +1,8 @@ + ┌─┐ ┌─┐ + │A│ │B│ + └┬┘ └┬┘ + │ │ + │───────────>│ + ┌┴┐ ┌┴┐ + │A│ │B│ + └─┘ └─┘ diff --git a/test/test-helper.el b/test/test-helper.el index a52839a..6e9026c 100644 --- a/test/test-helper.el +++ b/test/test-helper.el @@ -16,6 +16,22 @@ (defvar package-code-path (f-parent package-test-path)) +(defvar plantuml-test-resources-path + (f-join package-code-path "test/resources")) + +(defvar plantuml-test-jar-path + (f-join package-code-path "bin/plantuml.jar")) + +(defun read-buffer (bufname) + (with-current-buffer (get-buffer bufname) + (buffer-string))) + +(defun read-preview-buffer () + (read-buffer plantuml-preview-buffer)) + +(defun read-test-file (path) + (f-read (f-join plantuml-test-resources-path path) 'utf-8)) + (require 'plantuml-mode (f-expand "plantuml-mode.el" package-code-path)) ;;; test-helper.el ends here