diff --git a/test/core/autoload/test-message.el b/test/core/autoload/test-message.el new file mode 100644 index 000000000..ddf5d6abc --- /dev/null +++ b/test/core/autoload/test-message.el @@ -0,0 +1,24 @@ +;;; test/core/autoload/test-message.el + +(def-test-group! core/autoload/message + + (ert-deftest ansi-format () + (should (equal (ansi-format! "Hello %s" "World") "Hello World")) + (should (equal (ansi-format! (red "Hello %s" "World")) "Hello World")) + (should (equal (ansi-format! (green "Hello %s" "World")) + (format "\e[%dm%s\e[0m" + (cdr (assq 'green doom-ansi-fg)) + "Hello World")))) + + (ert-deftest ansi-format-nested () + (should (equal (ansi-format! (bold (red "Hello %s" "World"))) + (format "\e[%dm%s\e[0m" 1 (format "\e[%dm%s\e[0m" 31 "Hello World")))) + (should (equal (ansi-format! (red (bold "Hello %s" "World"))) + (format "\e[%dm%s\e[0m" 31 (format "\e[%dm%s\e[0m" 1 "Hello World"))))) + + (ert-deftest ansi-format-apply () + (should (equal (ansi-format! (color 'red "Hello %s" "World")) + (ansi-format! (red "Hello %s" "World")))) + (should (equal (ansi-format! (color (if nil 'red 'blue) "Hello %s" "World")) + (ansi-format! (blue "Hello %s" "World")))))) +