summaryrefslogtreecommitdiff
path: root/test/ess-test-r.el
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2022-11-01 10:47:17 -0400
committerStefan Monnier <monnier@iro.umontreal.ca>2022-11-01 10:47:17 -0400
commitfbc2ef3606243c4f86021af8c097470a98847969 (patch)
tree5e09863605ccb0844444189494e0c83a474661d1 /test/ess-test-r.el
parent60e9790b35fdac1b254b66438fedaeebb8a82c91 (diff)
Fix compilation of package installed from Git; plus cosmeticsscratch/ess
In `test/*.el`: Provide "test/etest/etest" to `require` so Emacs can find the file when the package is compiled. In `*.el`: Prefer #' to quote named functions. Use `lexical-binding` in all the remaining files. Use lexical-binding also in `eval`. Remove redundant let-bindings of obsolete variable `inhibit-point-motion-hooks`. Replace uses of `point-at-bol` and `point-at-eol`, both marked obsolete in Emacs-29. Use `defalias` rather than `fset` to define a function. Fix occasional incorrect uses of ' in docstrings. Remove some redundant `:group` arguments. Add leading `_` to unused args. In addition to the above, a few, more specifc, tweaks: * lisp/ess-r-mode.el (ess-offset, ess-offset-type): Strength-reduce `eval` to `symbol-value`. (ess-rutils-rsitesearch): Hoist the common `browse-url` out of the `if`. * lisp/ess-r-package.el: Don't test `fboundp` before `advice-add` since we require Emacs≄25. Don't require `shell` since `advice-add` also works when the function is not yet defined. * lisp/ess-r-syntax.el (ess-parser--backward): Give it a global nil value, both to declare it as dynamically scoped and to simplify the code. All users adjusted not to bother with `bound-and-true-p`. (ess-node): Hoist common `gethash` out of the `if`. * lisp/ess-sas-a.el (ess-sas-rtf-portrait, ess-sas-rtf-landscape): Add FIXME. * lisp/ess-sas-d.el (ess-electric-run-semicolon): Re-indent. Add FIXME. * lisp/ess-sas-l.el (beginning-of-sas-statement): Rename statically scoped arg to avoid conflict with dynamically scoped var. (sas-prev-line): Make (unused) arg optional. (ess-imenu-SAS): Use [:alpha:] and [:alnum:]. * lisp/ess-tracebug.el (ess--tb-start, ess--tb-stop): Use `advice-add/remove` to redefine `ess-parse-errors`. * lisp/ess.el (ess-version-string): Don't presume `point-min` is `1`. * lisp/obsolete/ess-mouse.el (ess-mouse-me-eval-expanded): Remove unused var `page-scommand`. * lisp/obsolete/mouseme.el (mouse-me-get-string, mouse-me-find-grep): Remove unnused vars `p`, `beg`, and `end`. * test/ess-test-inf.el (ess-test-inferior-local-start-args): Use `*proc*` rather than undocumented `*inf-buf*`. (ess-inf-send-fn-test, ess-inf-send-cat-some.text-test): Remove unused var `output-nowait`. * test/ess-test-literate.el (chunk-end): Remove `defvar`. (elt-process-next-chunk, elt-process-next-subchunk, elt-process-case) (elt-process-code): Pass/take `chunk-end` as argument instead. * test/ess-test-org.el (test-org-R-ouput): Remove unused var `inf-proc`. * test/ess-test-r-utils.el (with-ess-test-file): Add FIXME. (ess-test-sleep-while, ess-test-unwind-protect): Move before first use. Split the bulk of the code into a function, to ease debugging, avoid name captures, and improve error messages. (with-r-running): Split the bulk of the code into a function. Document the `*proc*` var. Add FIXME. (output, face-at, token=): Add FIXME. (output=): Remove redundant `eval`. * test/ess-test-r.el (ess-r-inherits-prog-mode-test): Turn global `ess-test-prog-hook` var into local `pmh-was-run`. * test/literate/fontification.el (face-at-point): Remove unused function. * test/literate/roxy.el (face-at-point, faces-at-point): Remove unused functions.
Diffstat (limited to 'test/ess-test-r.el')
-rw-r--r--test/ess-test-r.el13
1 files changed, 7 insertions, 6 deletions
diff --git a/test/ess-test-r.el b/test/ess-test-r.el
index 6f59e4b..9c885d8 100644
--- a/test/ess-test-r.el
+++ b/test/ess-test-r.el
@@ -17,24 +17,25 @@
;;
(require 'ert)
-(require 'etest)
+(require 'etest "test/etest/etest")
(require 'ess-r-mode)
(require 'ess-test-r-utils)
(require 'cc-mode)
(require 'imenu)
(with-no-warnings
(when (< emacs-major-version 26)
- (require 'cl)))
+ (require 'cl))) ;; FIXME: For?
;;; R
;;; Code:
(ert-deftest ess-r-inherits-prog-mode-test ()
- (let ((prog-mode-hook (lambda () (setq ess-test-prog-hook t))))
+ (let* ((pmh-was-run nil)
+ (prog-mode-hook (lambda () (setq pmh-was-run t))))
(with-ess-test-r-file nil
(should (derived-mode-p 'prog-mode))
- (should ess-test-prog-hook)
+ (should pmh-was-run)
(should
;; Test that prog-mode-map is a keymap-parent
(let ((map (current-local-map))
@@ -156,7 +157,7 @@
(ert-deftest ess-r-run-presend-hooks-test ()
(with-r-running nil
- (let ((ess-presend-filter-functions (list (lambda (string) "\"bar\"")))
+ (let ((ess-presend-filter-functions (list (lambda (_string) "\"bar\"")))
(ess-r-evaluation-env "base")
ess-eval-visibly)
(insert "\"foo\"\n")
@@ -204,7 +205,7 @@
(defun ess-test-init-insert-assign ()
(let ((map (make-sparse-keymap)))
- (define-key map "_" 'ess-insert-assign)
+ (define-key map "_" #'ess-insert-assign)
(use-local-map map)))
(etest-deftest ess-insert-assign-test ()