[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/ws-butler 45a93f2bc2 18/64: add Travis-CI tests skeleton
From: |
Stefan Kangas |
Subject: |
[nongnu] elpa/ws-butler 45a93f2bc2 18/64: add Travis-CI tests skeleton |
Date: |
Fri, 31 Dec 2021 11:09:29 -0500 (EST) |
branch: elpa/ws-butler
commit 45a93f2bc2837d34f9094c5fd14f06353c1d2d11
Author: Le Wang <le.wang@agworld.com.au>
Commit: Le Wang <le.wang@agworld.com.au>
add Travis-CI tests skeleton
---
.travis.yml | 14 ++++++++++++++
Makefile | 26 ++++++++++++++++++++++++++
tests/run-test.el | 42 ++++++++++++++++++++++++++++++++++++++++++
tests/ws-butler-tests.el | 30 ++++++++++++++++++++++++++++++
4 files changed, 112 insertions(+)
diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 0000000000..57f385b2fd
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,14 @@
+language: emacs-lisp
+before_install:
+ - git submodule update --init
+ - if [ "$EMACS" = 'emacs-snapshot' ]; then
+ sudo add-apt-repository -y ppa:cassou/emacs &&
+ sudo apt-get update -qq &&
+ sudo apt-get install -qq
+ emacs-snapshot-el emacs-snapshot-gtk emacs-snapshot;
+ fi
+env:
+ - EMACS=emacs
+ - EMACS=emacs-snapshot
+script:
+ make travis-ci EMACS=$EMACS
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000000..990b7e2cb9
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,26 @@
+EMACS=emacs
+EMACS23=emacs23
+EMACS-OPTIONS=
+
+.PHONY: test test-nw travis-ci show-version before-test
+
+show-version: show-version
+ echo "*** Emacs version ***"
+ echo "EMACS = `which ${EMACS}`"
+ ${EMACS} --version
+
+install-ert:
+ emacs --batch -L "${PWD}/lib/ert/lisp/emacs-lisp" --eval "(require
'ert)" || ( git clone git://github.com/ohler/ert.git lib/ert && cd lib/ert &&
git checkout 00aef6e43 )
+
+
+before-test: show-version install-ert
+
+test: before-test
+ ${EMACS} -Q -L . -l tests/run-test.el
+
+test-nw: before-test
+ ${EMACS} -Q -nw -L . -l tests/run-test.el
+
+travis-ci: before-test
+ echo ${EMACS-OPTIONS}
+ ${EMACS} -batch -Q -l tests/run-test.el
diff --git a/tests/run-test.el b/tests/run-test.el
new file mode 100644
index 0000000000..d992424e24
--- /dev/null
+++ b/tests/run-test.el
@@ -0,0 +1,42 @@
+;; Usage:
+;;
+;; emacs -Q -l tests/run-test.el # interactive mode
+;; emacs -batch -Q -l tests/run-test.el # batch mode
+
+
+;; Utils
+(defun ws-butler-test-join-path (path &rest rest)
+ "Join a list of PATHS with appropriate separator (such as /).
+
+\(fn &rest paths)"
+ (if rest
+ (concat (file-name-as-directory path) (apply 'ws-butler-test-join-path
rest))
+ path))
+
+(defvar ws-butler-test-dir (file-name-directory load-file-name))
+(defvar ws-butler-root-dir (file-name-as-directory (expand-file-name ".."
ws-butler-test-dir)))
+
+
+;; Setup `load-path'
+(mapc (lambda (p) (add-to-list 'load-path p))
+ (list ws-butler-test-dir
+ ws-butler-root-dir))
+
+
+;; Use ERT from github when this Emacs does not have it
+(unless (locate-library "ert")
+ (add-to-list
+ 'load-path
+ (ws-butler-test-join-path ws-butler-root-dir "lib" "ert" "lisp"
"emacs-lisp"))
+ (require 'ert-batch)
+ (require 'ert-ui))
+
+
+;; Load tests
+(load "ws-butler-tests")
+
+
+;; Run tests
+(if noninteractive
+ (ert-run-tests-batch-and-exit)
+ (ert t))
diff --git a/tests/ws-butler-tests.el b/tests/ws-butler-tests.el
new file mode 100644
index 0000000000..43bcde435f
--- /dev/null
+++ b/tests/ws-butler-tests.el
@@ -0,0 +1,30 @@
+
+(require 'ert)
+
+;; (require 'popup)
+
+;; for "every" function
+(require 'cl)
+
+(defmacro ws-butler-test-with-test-buffer (&rest body)
+ (declare (indent 0) (debug t))
+ `(let ((test-buffer-name "*ws-butler test*"))
+ (save-excursion
+ (when (get-buffer test-buffer-name)
+ (kill-buffer test-buffer-name))
+ (switch-to-buffer (get-buffer-create test-buffer-name))
+ ,@body)))
+
+(defmacro ws-butler-test-with-common-setup (&rest body)
+ (declare (indent 0) (debug t))
+ `(ws-butler-test-with-test-buffer
+ ,@body))
+
+
+(ert-deftest ws-butler-test-sanity ()
+ "sanity check."
+ (ws-butler-test-with-common-setup
+ (insert "a b c")
+ (execute-kbd-macro (read-kbd-macro "M-DEL"))
+ (should (every #'identity (list 1 2 3)))
+ (should (string-equal (buffer-string) "a b "))))
- [nongnu] elpa/ws-butler 246e5655ab 23/64: Fix never removing blank lines from EOF., (continued)
- [nongnu] elpa/ws-butler 246e5655ab 23/64: Fix never removing blank lines from EOF., Stefan Kangas, 2021/12/31
- [nongnu] elpa/ws-butler de5d1569bf 26/64: Clear buffer-modified-p only when necessary., Stefan Kangas, 2021/12/31
- [nongnu] elpa/ws-butler d265cef1ef 12/64: rename function, Stefan Kangas, 2021/12/31
- [nongnu] elpa/ws-butler d62694365c 34/64: Merge pull request #11 from chris-martin/readme-cleanup, Stefan Kangas, 2021/12/31
- [nongnu] elpa/ws-butler b59e36b245 53/64: bump version to 0.5, Stefan Kangas, 2021/12/31
- [nongnu] elpa/ws-butler 7d57ac7cf6 42/64: Added `ws-butler-trim-predicate' custom variable, Stefan Kangas, 2021/12/31
- [nongnu] elpa/ws-butler 6f46d5885a 63/64: Revert "Inhibit modification hooks in ws-butler-after-save", Stefan Kangas, 2021/12/31
- [nongnu] elpa/ws-butler b9bcf50496 60/64: Inhibit modification hooks in ws-butler-after-save, Stefan Kangas, 2021/12/31
- [nongnu] elpa/ws-butler af050ffb6c 09/64: fix typo in commentary #1, Stefan Kangas, 2021/12/31
- [nongnu] elpa/ws-butler a5c01e3221 06/64: remove debug message, Stefan Kangas, 2021/12/31
- [nongnu] elpa/ws-butler 45a93f2bc2 18/64: add Travis-CI tests skeleton,
Stefan Kangas <=
- [nongnu] elpa/ws-butler 0c941aedeb 31/64: Declare type of keep-whitespace-before-point, Stefan Kangas, 2021/12/31
- [nongnu] elpa/ws-butler 7d30203cf9 19/64: forgot to trim blanks in README (oh the irony!), Stefan Kangas, 2021/12/31
- [nongnu] elpa/ws-butler fe08e8770b 08/64: update lighter, Stefan Kangas, 2021/12/31
- [nongnu] elpa/ws-butler 8ca373047a 24/64: Fix point moving if after blanks., Stefan Kangas, 2021/12/31
- [nongnu] elpa/ws-butler 4154816145 27/64: Clean up end marker., Stefan Kangas, 2021/12/31
- [nongnu] elpa/ws-butler 106d313c0d 30/64: Fix package problems; bump version to 0.3., Stefan Kangas, 2021/12/31
- [nongnu] elpa/ws-butler 34393f1aaa 07/64: add install instructions, Stefan Kangas, 2021/12/31
- [nongnu] elpa/ws-butler 75deadecb9 35/64: Remove dependency on highlight-changes-mode., Stefan Kangas, 2021/12/31
- [nongnu] elpa/ws-butler ee0fc31020 52/64: Merge branch 'xificurC-master', Stefan Kangas, 2021/12/31
- [nongnu] elpa/ws-butler 76265d11f8 44/64: Debian and Ubuntu installation instructions, Stefan Kangas, 2021/12/31