summaryrefslogtreecommitdiff
path: root/test/lisp
diff options
context:
space:
mode:
authorStefan Kangas <stefan@marxist.se>2022-01-31 07:42:50 +0100
committerStefan Kangas <stefan@marxist.se>2022-01-31 07:42:50 +0100
commit9a56b4e6864c4e0815bb67805cfa67910ab3eeb5 (patch)
treeb0b8eaf28fada595580503937122ee27765f341e /test/lisp
parentd464454f4502e337d4114e7b818aad11c9506497 (diff)
downloademacs-9a56b4e6864c4e0815bb67805cfa67910ab3eeb5.tar.gz
emacs-9a56b4e6864c4e0815bb67805cfa67910ab3eeb5.tar.bz2
emacs-9a56b4e6864c4e0815bb67805cfa67910ab3eeb5.zip
Factor out function to check for clang in tests
This also stops a flymake test from failing on my machine. * lisp/emacs-lisp/ert-x.el (ert-gcc-is-clang-p): New function factored out from ... * test/lisp/progmodes/flymake-tests.el (flymake-tests--gcc-is-clang): * test/lisp/cedet/semantic/bovine/gcc-tests.el (semantic-gcc-test-output-parser-this-machine): ... here. * test/lisp/progmodes/flymake-tests.el (different-diagnostic-types) (included-c-header-files): * test/lisp/cedet/semantic/bovine/gcc-tests.el (semantic-gcc-test-output-parser-this-machine): Use above new function.
Diffstat (limited to 'test/lisp')
-rw-r--r--test/lisp/cedet/semantic/bovine/gcc-tests.el11
-rw-r--r--test/lisp/progmodes/flymake-tests.el9
2 files changed, 5 insertions, 15 deletions
diff --git a/test/lisp/cedet/semantic/bovine/gcc-tests.el b/test/lisp/cedet/semantic/bovine/gcc-tests.el
index 2e61f91e58c..525843d9960 100644
--- a/test/lisp/cedet/semantic/bovine/gcc-tests.el
+++ b/test/lisp/cedet/semantic/bovine/gcc-tests.el
@@ -122,14 +122,9 @@ gcc version 2.95.2 19991024 (release)"
(ert-deftest semantic-gcc-test-output-parser-this-machine ()
"Test the output parser against the machine currently running Emacs."
- (skip-unless (executable-find "gcc"))
+ (skip-unless (and (executable-find "gcc")
+ (not (ert-gcc-is-clang-p))))
(let ((semantic-gcc-test-strings (list (semantic-gcc-query "gcc" "-v"))))
- ;; Some macOS machines run llvm when you type gcc. (!)
- ;; We can't even check if it's a symlink; it's a binary placed in
- ;; "/usr/bin/gcc". So check the output and just skip this test if
- ;; it looks like that's the case.
- (unless (string-match "Apple \\(LLVM\\|clang\\)\\|Xcode\\.app"
- (car semantic-gcc-test-strings))
- (semantic-gcc-test-output-parser))))
+ (semantic-gcc-test-output-parser)))
;;; gcc-tests.el ends here
diff --git a/test/lisp/progmodes/flymake-tests.el b/test/lisp/progmodes/flymake-tests.el
index ced7b5aaced..71b03b21e5c 100644
--- a/test/lisp/progmodes/flymake-tests.el
+++ b/test/lisp/progmodes/flymake-tests.el
@@ -140,15 +140,10 @@ SEVERITY-PREDICATE is used to setup
(flymake-goto-next-error)
(should (eq 'flymake-error (face-at-point)))))))
-(defun flymake-tests--gcc-is-clang ()
- "Whether the `gcc' command actually runs the Clang compiler."
- (string-match "[Cc]lang version "
- (shell-command-to-string "gcc --version")))
-
(ert-deftest different-diagnostic-types ()
"Test GCC warning via function predicate."
(skip-unless (and (executable-find "gcc")
- (not (flymake-tests--gcc-is-clang))
+ (not (ert-gcc-is-clang-p))
(version<=
"5" (string-trim
(shell-command-to-string "gcc -dumpversion")))
@@ -173,7 +168,7 @@ SEVERITY-PREDICATE is used to setup
(ert-deftest included-c-header-files ()
"Test inclusion of .h header files."
(skip-unless (and (executable-find "gcc")
- (not (flymake-tests--gcc-is-clang))
+ (not (ert-gcc-is-clang-p))
(executable-find "make")))
(let ((flymake-wrap-around nil))
(flymake-tests--with-flymake