spacemacs/tests/core/core-spacemacs-buffer-ftest.el
2016-01-11 21:42:17 -05:00

122 lines
7.8 KiB
EmacsLisp

;;; core-spacemacs-buffer-ftest.el --- Spacemacs Unit Test File
;;
;; Copyright (c) 2012-2016 Sylvain Benner & Contributors
;;
;; Author: Sylvain Benner <sylvain.benner@gmail.com>
;; URL: https://github.com/syl20bnr/spacemacs
;;
;; This file is not part of GNU Emacs.
;;
(require 'core-spacemacs-buffer)
(setq-default fill-column 80)
;; ---------------------------------------------------------------------------
;; spacemacs//render-framed-text
;; ---------------------------------------------------------------------------
(defvar test-text
"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.")
(ert-deftest test-render-framed-text--msg-width-caption-and-padding ()
(should (equal (spacemacs//render-framed-text test-text 32 "Caption" 4)
"╭─Caption──────────────────────╮
│ │
│ Lorem ipsum dolor sit │
│ amet, consectetur │
│ adipiscing elit, sed │
│ do eiusmod tempor │
│ incididunt ut labore │
│ et dolore magna │
│ aliqua. │
│ │
╰──────────────────────────────╯"
)))
(ert-deftest test-render-framed-text--msg-width-caption-no-padding ()
(should (equal (spacemacs//render-framed-text test-text 32 "Caption")
"╭─Caption──────────────────────╮
│ │
│ Lorem ipsum dolor sit amet, │
│ consectetur adipiscing elit, │
│ sed do eiusmod tempor │
│ incididunt ut labore et │
│ dolore magna aliqua. │
│ │
╰──────────────────────────────╯"
)))
(ert-deftest test-render-framed-text--msg-width-no-caption-no-padding ()
(should (equal (spacemacs//render-framed-text test-text 32)
"╭──────────────────────────────╮
│ │
│ Lorem ipsum dolor sit amet, │
│ consectetur adipiscing elit, │
│ sed do eiusmod tempor │
│ incididunt ut labore et │
│ dolore magna aliqua. │
│ │
╰──────────────────────────────╯"
)))
(ert-deftest test-render-framed-text--msg-no-width-no-caption-no-padding ()
(should (equal (spacemacs//render-framed-text test-text)
"╭──────────────────────────────────────────────────────────────────────────────────╮
│ │
│ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor │
│ incididunt ut labore et dolore magna aliqua. │
│ │
╰──────────────────────────────────────────────────────────────────────────────────╯"
)))
(ert-deftest test-render-framed-text--msg-short-text ()
(should (equal (spacemacs//render-framed-text "Short content.")
"╭──────────────────────────────────────────────────────────────────────────────────╮
│ │
│ Short content. │
│ │
╰──────────────────────────────────────────────────────────────────────────────────╯"
)))
(ert-deftest test-render-framed-text--msg-several-paragraphs ()
(should (equal (spacemacs//render-framed-text
(concat "\n"
test-text "\n\n\n"
test-text "\n\n"
test-text "\n"))
"╭──────────────────────────────────────────────────────────────────────────────────╮
│ │
│ │
│ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor │
│ incididunt ut labore et dolore magna aliqua. │
│ │
│ │
│ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor │
│ incididunt ut labore et dolore magna aliqua. │
│ │
│ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor │
│ incididunt ut labore et dolore magna aliqua. │
│ │
│ │
╰──────────────────────────────────────────────────────────────────────────────────╯"
)))
(ert-deftest test-render-framed-text--file-caption-and-padding ()
(should (equal (spacemacs//render-framed-text
(concat spacemacs-test-directory "core/data/framed-text.txt")
62 "Caption" 4)
"╭─Caption────────────────────────────────────────────────────╮
│ │
│ Lorem ipsum dolor sit amet, consectetur adipiscing │
│ elit, sed do eiusmod tempor incididunt ut labore et │
│ dolore magna aliqua. Ut enim ad minim veniam, quis │
│ nostrud exercitation ullamco laboris nisi ut aliquip │
│ ex ea commodo consequat. Duis aute irure dolor in │
│ reprehenderit in voluptate velit esse cillum dolore │
│ eu fugiat nulla pariatur. Excepteur sint occaecat │
│ cupidatat non proident, sunt in culpa qui officia │
│ deserunt mollit anim id est laborum. │
│ │
╰────────────────────────────────────────────────────────────╯"
)))