emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[nongnu] elpa/rust-mode 351cc91 112/486: Merge pull request #16 from Mic


From: ELPA Syncer
Subject: [nongnu] elpa/rust-mode 351cc91 112/486: Merge pull request #16 from MicahChalmer/add-travis
Date: Sat, 7 Aug 2021 09:25:00 -0400 (EDT)

branch: elpa/rust-mode
commit 351cc916938f13a354f2ffe471bda8eb30765fa3
Merge: fd92bfd 8a69f69
Author: Niko Matsakis <niko@alum.mit.edu>
Commit: Niko Matsakis <niko@alum.mit.edu>

    Merge pull request #16 from MicahChalmer/add-travis
    
    Add travis config (and make tests runnable on emacs 23)
---
 .travis.yml        | 41 +++++++++++++++++++++++++++++++++++++++++
 rust-mode-tests.el | 21 ++++++++++++---------
 2 files changed, 53 insertions(+), 9 deletions(-)

diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 0000000..04231a7
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,41 @@
+language: generic
+
+env:
+  matrix:
+    - EMACS=emacs23
+    - EMACS=emacs24
+    - EMACS=emacs-snapshot
+
+install:
+  - if [ "$EMACS" = 'emacs23' ]; then
+       sudo apt-get -qq update &&
+       sudo apt-get -qq -f install &&
+       sudo apt-get -qq install emacs23-gtk emacs23-el;
+    fi
+  - if [ "$EMACS" = 'emacs24' ]; then
+       sudo add-apt-repository -y ppa:cassou/emacs &&
+       sudo apt-get -qq update &&
+       sudo apt-get -qq -f install &&
+       sudo apt-get -qq install emacs24 emacs24-el;
+    fi
+  - if [ "$EMACS" = 'emacs-snapshot' ]; then
+       sudo add-apt-repository -y ppa:ubuntu-elisp/ppa &&
+       sudo apt-get -qq update &&
+       sudo apt-get -qq -f install &&
+       sudo apt-get -qq install emacs-snapshot &&
+       sudo apt-get -qq install emacs-snapshot-el;
+    fi
+
+# Emacs 23 does not come with ERT.  Download it and have emacs find it
+before_script:
+  - if [ "$EMACS" = 'emacs23' ]; then
+       curl -Os 
https://raw.githubusercontent.com/ohler/ert/c619b56c5bc6a866e33787489545b87d79973205/lisp/emacs-lisp/ert.el
 &&
+       export EMACSLOADPATH=$(emacs -batch -eval "(princ (mapconcat 'identity 
load-path \":\"))") &&
+       export EMACSLOADPATH="$EMACSLOADPATH:$PWD";
+    fi
+
+script:
+  - ./run_rust_emacs_tests.sh
+
+notifications:
+  email: false
diff --git a/rust-mode-tests.el b/rust-mode-tests.el
index 2b18728..3ef4cb6 100644
--- a/rust-mode-tests.el
+++ b/rust-mode-tests.el
@@ -628,7 +628,10 @@ fn indented_already() {
 POS-SYMBOL is a symbol found in `rust-test-positions-alist'.
 Convert the line-column information from that list into a buffer position 
value."
   (interactive "P")
-  (pcase-let ((`(,line ,column) (cadr (assoc pos-symbol 
rust-test-positions-alist))))
+  (let* (
+         (line-and-column (cadr (assoc pos-symbol rust-test-positions-alist)))
+         (line (nth 0 line-and-column))
+         (column (nth 1 line-and-column)))
     (save-excursion
       (goto-line line)
       (move-to-column column)
@@ -856,14 +859,14 @@ All positions are position symbols found in 
`rust-test-positions-alist'."
 (defun rust-test-group-str-by-face (str)
   "Fontify `STR' in rust-mode and group it by face, returning a
 list of substrings of `STR' each followed by its face."
-  (cl-loop with fontified = (rust-test-fontify-string str)
-           for start = 0 then end
-           while start
-           for end   = (next-single-property-change start 'face fontified)
-           for prop  = (get-text-property start 'face fontified)
-           for text  = (substring-no-properties fontified start end)
-           if prop
-           append (list text prop)))
+  (loop with fontified = (rust-test-fontify-string str)
+        for start = 0 then end
+        while start
+        for end   = (next-single-property-change start 'face fontified)
+        for prop  = (get-text-property start 'face fontified)
+        for text  = (substring-no-properties fontified start end)
+        if prop
+        append (list text prop)))
 
 (defun rust-test-font-lock (source face-groups)
   "Test that `SOURCE' fontifies to the expected `FACE-GROUPS'"



reply via email to

[Prev in Thread] Current Thread [Next in Thread]