emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] master 602ad6d 011/135: Added tests for org-bat-parse-form


From: Ian Dunn
Subject: [elpa] master 602ad6d 011/135: Added tests for org-bat-parse-form
Date: Mon, 17 Feb 2020 10:52:44 -0500 (EST)

branch: master
commit 602ad6d1951afa6db282ecbd33df8e90ff22c579
Author: Ian D <address@hidden>
Commit: Ian D <address@hidden>

    Added tests for org-bat-parse-form
    
    * org-bat-tests.el (org-bat-parse-form-no-arguments):
      (org-bat-parse-form-no-arguments-modifier):
      (org-bat-parse-form-single-argument):
      (org-bat-parse-form-string-argument): New tests.
---
 org-bat-tests.el | 64 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 64 insertions(+)

diff --git a/org-bat-tests.el b/org-bat-tests.el
new file mode 100644
index 0000000..4a1e32f
--- /dev/null
+++ b/org-bat-tests.el
@@ -0,0 +1,64 @@
+;;; org-bat-tests.el --- Tests for org-bat
+
+;; Author: Ian Dunn
+
+;;; Commentary:
+
+;;; Code:
+
+(require 'org-bat)
+(require 'ert)
+
+(ert-deftest org-bat-parse-form-no-arguments ()
+  (let* ((input-string "test-string")
+         (parsed       (org-bat-parse-form input-string)))
+    (should parsed)
+    (should (= (length parsed) 4))
+    (pcase-let* ((`(,token ,args ,modifier ,pos) parsed))
+      (should (eq token 'test-string))
+      (should (not args))
+      (should (not modifier))
+      (should (= pos 11)))))
+
+(ert-deftest org-bat-parse-form-no-arguments-modifier ()
+  (let* ((input-string "!test-string")
+         (parsed       (org-bat-parse-form input-string)))
+    (should parsed)
+    (should (= (length parsed) 4))
+    (pcase-let* ((`(,token ,args ,modifier ,pos) parsed))
+      (should (eq token 'test-string))
+      (should (not args))
+      (should (eq modifier '!))
+      (should (= pos 12)))))
+
+(ert-deftest org-bat-parse-form-single-argument ()
+  (let* ((input-string "test-string(abc)")
+         (parsed       (org-bat-parse-form input-string)))
+    (should parsed)
+    (should (= (length parsed) 4))
+    (pcase-let* ((`(,token ,args ,modifier ,pos) parsed))
+      (should (eq token 'test-string))
+      (should (= (length args) 1))
+      (should (stringp (nth 0 args)))
+      (should (string-equal (nth 0 args) "abc"))
+      (should (not modifier))
+      (should (= pos (length input-string))))))
+
+(ert-deftest org-bat-parse-form-string-argument ()
+  (let* ((input-string "test-string(abc,\"def (ghi)\")")
+         (parsed       (org-bat-parse-form input-string)))
+    (should parsed)
+    (should (= (length parsed) 4))
+    (pcase-let* ((`(,token ,args ,modifier ,pos) parsed))
+      (should (eq token 'test-string))
+      (should (= (length args) 2))
+      (should (stringp (nth 0 args)))
+      (should (string-equal (nth 0 args) "abc"))
+      (should (stringp (nth 1 args)))
+      (should (string-equal (nth 1 args) "def (ghi)"))
+      (should (not modifier))
+      (should (= pos (length input-string))))))
+
+(provide 'org-bat-tests)
+
+;;; org-bat-tests.el ends here



reply via email to

[Prev in Thread] Current Thread [Next in Thread]