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

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

[elpa] externals/m-buffer a2b935896f 111/115: Support Emacs-24 series


From: ELPA Syncer
Subject: [elpa] externals/m-buffer a2b935896f 111/115: Support Emacs-24 series
Date: Tue, 19 Jul 2022 15:58:53 -0400 (EDT)

branch: externals/m-buffer
commit a2b935896f90701563797ec29f0aa5dacb200992
Author: Phillip Lord <phillip.lord@russet.org.uk>
Commit: Phillip Lord <phillip.lord@russet.org.uk>

    Support Emacs-24 series
    
    Ensure m-buffer works with Emacs-24, Emacs-25 and Emacs-26 to be. This is
    mainly because it is a dependency of assess which needs to work across
    multiple version.
    
    Add test support to travis, and makefile. Duplicate assess-discover to avoid
    circular dependency, and update header.
---
 .travis.yml            |  7 ++++-
 Cask                   |  4 +--
 Makefile               | 12 +++++++-
 dev/assess-discover.el | 83 ++++++++++++++++++++++++++++++++++++++++++++++++++
 m-buffer.el            |  3 +-
 5 files changed, 103 insertions(+), 6 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index b2e055b082..c4dfc6c8c8 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,7 +1,12 @@
 language: generic
 sudo: no
 env:
-  - EVM_EMACS=emacs-25-pre-travis
+ - EVM_EMACS=emacs-24.1-travis
+ - EVM_EMACS=emacs-24.2-travis
+ - EVM_EMACS=emacs-24.3-travis
+ - EVM_EMACS=emacs-24.4-travis
+ - EVM_EMACS=emacs-24.5-travis
+ - EVM_EMACS=emacs-25.1-travis
 install:
   - curl -fsSkL https://gist.github.com/rejeep/ebcd57c3af83b049833b/raw > 
travis.sh && source ./travis.sh
   - evm install $EVM_EMACS --use --skip
diff --git a/Cask b/Cask
index 504b1c3b6d..1b38a9f935 100644
--- a/Cask
+++ b/Cask
@@ -6,6 +6,4 @@
 
 (development
  (depends-on "htmlize")
- (depends-on "lentic")
- (depends-on "load-relative")
- (depends-on "assess"))
+ (depends-on "load-relative"))
diff --git a/Makefile b/Makefile
index de5eba61c4..ab97db67a4 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,8 @@
 EMACS ?= emacs
 CASK ?= cask
 
+EMACSES=there-is-no-sensible-default-here
+
 -include makefile-local
 
 ifdef EMACS
@@ -16,7 +18,7 @@ install:
 just-test:
        $(EMACS_ENV) $(CASK) emacs --batch -q \
        --directory=. \
-       --load "assess-discover" \
+       --load "dev/assess-discover" \
        --funcall assess-discover-run-and-exit-batch
 
 test: install just-test
@@ -46,5 +48,13 @@ clean:
           -exec rm {} \;
        - rm m-buffer-doc.html
 
+multi-test:
+       make EMACS=$(EMACSES)/master/src/emacs test
+       make EMACS=$(EMACSES)/emacs-25/src/emacs test
+       make EMACS=$(EMACSES)/emacs-25.1/src/emacs test
+       make EMACS=$(EMACSES)/emacs-24.5/src/emacs test
+       make EMACS=$(EMACSES)/emacs-24.4/src/emacs test
+       make EMACS=$(EMACSES)/emacs-24.3/src/emacs test
+       make EMACS=$(EMACSES)/emacs-24.2/src/emacs test
 
 .PHONY: test
diff --git a/dev/assess-discover.el b/dev/assess-discover.el
new file mode 100644
index 0000000000..a580d2c903
--- /dev/null
+++ b/dev/assess-discover.el
@@ -0,0 +1,83 @@
+;;; assess-discover.el --- Test support functions -*- lexical-binding: t -*-
+
+;;; Header:
+
+;; This file is not part of Emacs
+
+;; Author: Phillip Lord <phillip.lord@russet.org.uk>
+;; Maintainer: Phillip Lord <phillip.lord@russet.org.uk>
+
+;; The contents of this file are subject to the GPL License, Version 3.0.
+
+;; Copyright (C) 2015, 2016, Phillip Lord
+
+;; This program 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.
+
+;; This program 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 this program.  If not, see <http://www.gnu.org/licenses/>.
+
+;;; Code:
+
+(defun assess-discover-tests (directory)
+  "Discover tests in directory.
+
+Tests must conform to one (and only one!) of several naming
+schemes.
+
+ - End with -test.el
+ - End with -tests.el
+ - Start with test-
+ - Any .el file in a directory called test
+ - Any .el file in a directory called tests
+
+Each of these is tried until one matches. So, a top-level file
+called \"blah-test.el\" will prevent discovery of files in a
+tests directory."
+  (or
+   ;; files with
+   (directory-files directory nil ".*-test.el$")
+   (directory-files directory nil ".*-tests.el$")
+   (directory-files directory nil "test-.*.el$")
+   (let ((dir-test
+          (concat directory "test/")))
+     (when (file-exists-p dir-test)
+       (mapcar
+        (lambda (file)
+          (concat dir-test file))
+        (directory-files dir-test nil ".*.el"))))
+   (let ((dir-tests
+          (concat directory "tests/")))
+     (when (file-exists-p dir-tests)
+       (mapcar
+        (lambda (file)
+          (concat dir-tests file))
+        (directory-files dir-tests nil ".*.el"))))))
+
+(defun assess-discover--load-all-tests (directory)
+  (mapc
+   'load
+   (assess-discover-tests directory)))
+
+(defun assess-discover-load-tests ()
+  (interactive)
+  (assess-discover--load-all-tests default-directory))
+
+;;;###autoload
+(defun assess-discover-run-batch (&optional selector)
+  (assess-discover--load-all-tests default-directory)
+  (ert-run-tests-batch selector))
+
+;;;###autoload
+(defun assess-discover-run-and-exit-batch (&optional selector)
+  (assess-discover--load-all-tests default-directory)
+  (ert-run-tests-batch-and-exit selector))
+
+(provide 'assess-discover)
diff --git a/m-buffer.el b/m-buffer.el
index 95cc9e4771..3778360f1f 100644
--- a/m-buffer.el
+++ b/m-buffer.el
@@ -7,7 +7,7 @@
 ;; Author: Phillip Lord <phillip.lord@russet.org.uk>
 ;; Maintainer: Phillip Lord <phillip.lord@russet.rg.uk>
 ;; Version: 0.14
-;; Package-Requires: ((emacs "25.0"))
+;; Package-Requires: ((seq "2.14"))
 
 ;; The contents of this file are subject to the GPL License, Version 3.0.
 
@@ -65,6 +65,7 @@
 ;; #+begin_src emacs-lisp
 (require 'seq)
 (require 'm-buffer-macro)
+
 ;; #+end_src
 
 ;; ** Regexp Matching



reply via email to

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