summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Kangas <stefankangas@gmail.com>2020-05-13 01:48:55 +0200
committerStefan Kangas <stefankangas@gmail.com>2020-05-13 02:05:18 +0200
commit60c9a534291c21cc1f9ebe9dcbe325c91e1d7fc2 (patch)
tree287e60c80506cba5f407af3a24dec8b88800d181
parentcf453495898a5f67d4d02e6d8980f148ee87c37f (diff)
downloademacs-60c9a534291c21cc1f9ebe9dcbe325c91e1d7fc2.tar.gz
emacs-60c9a534291c21cc1f9ebe9dcbe325c91e1d7fc2.tar.bz2
emacs-60c9a534291c21cc1f9ebe9dcbe325c91e1d7fc2.zip
Use lexical-binding in dissociate.el and add tests
* lisp/play/dissociate.el: Use lexical-binding. * test/lisp/play/dissociate-tests.el: New file.
-rw-r--r--lisp/play/dissociate.el2
-rw-r--r--test/lisp/play/dissociate-tests.el38
2 files changed, 39 insertions, 1 deletions
diff --git a/lisp/play/dissociate.el b/lisp/play/dissociate.el
index 3768a14ad82..9a6300c0fd2 100644
--- a/lisp/play/dissociate.el
+++ b/lisp/play/dissociate.el
@@ -1,4 +1,4 @@
-;;; dissociate.el --- scramble text amusingly for Emacs
+;;; dissociate.el --- scramble text amusingly for Emacs -*- lexical-binding:t -*-
;; Copyright (C) 1985, 2001-2020 Free Software Foundation, Inc.
diff --git a/test/lisp/play/dissociate-tests.el b/test/lisp/play/dissociate-tests.el
new file mode 100644
index 00000000000..e8d903109fc
--- /dev/null
+++ b/test/lisp/play/dissociate-tests.el
@@ -0,0 +1,38 @@
+;;; dissociate-tests.el --- Tests for dissociate.el -*- lexical-binding:t -*-
+
+;; Copyright (C) 2020 Free Software Foundation, Inc.
+
+;; This file is part of GNU Emacs.
+
+;; GNU Emacs is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
+
+;; GNU Emacs is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>.
+
+;;; Commentary:
+
+;;; Code:
+
+(require 'ert)
+(require 'dissociate)
+
+(ert-deftest dissociate-tests-dissociated-press ()
+ (cl-letf (((symbol-function 'y-or-n-p) (lambda (_) nil))
+ ((symbol-function 'random) (lambda (_) 10)))
+ (save-window-excursion
+ (with-temp-buffer
+ (insert "Lorem ipsum dolor sit amet")
+ (dissociated-press)
+ (should (string-match-p "dolor sit ametdolor sit amdolor sit amdolor sit am"
+ (buffer-string)))))))
+
+(provide 'dissociate-tests)
+;;; dissociate-tests.el ends here