1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-23 18:47:57 +00:00

Protect Flymake tests against older Ruby and Perl (bug#29187)

* test/lisp/progmodes/flymake-tests.el (perl-backend): Search
for the error from the bottom.
(ruby-backend): Protect against situation of bug#29187
This commit is contained in:
João Távora 2017-11-09 09:34:58 +00:00
parent 781f276cc1
commit 0da08f2f8e

View File

@ -114,17 +114,24 @@ SEVERITY-PREDICATE is used to setup
(flymake-tests--with-flymake ("test.pl")
(flymake-goto-next-error)
(should (eq 'flymake-warning (face-at-point)))
(flymake-goto-next-error)
(goto-char (point-max))
(flymake-goto-prev-error)
(should (eq 'flymake-error (face-at-point)))))
(ert-deftest ruby-backend ()
"Test the ruby backend"
(skip-unless (executable-find "ruby"))
(flymake-tests--with-flymake ("test.rb")
(flymake-goto-next-error)
(should (eq 'flymake-warning (face-at-point)))
(flymake-goto-next-error)
(should (eq 'flymake-error (face-at-point)))))
;; Some versions of ruby fail if HOME doesn't exist (bug#29187).
(let* ((tempdir (make-temp-file "flymake-tests-ruby" t))
(process-environment (cons (format "HOME=%s" tempdir)
process-environment)))
(unwind-protect
(flymake-tests--with-flymake ("test.rb")
(flymake-goto-next-error)
(should (eq 'flymake-warning (face-at-point)))
(flymake-goto-next-error)
(should (eq 'flymake-error (face-at-point))))
(delete-directory tempdir t))))
(ert-deftest different-diagnostic-types ()
"Test GCC warning via function predicate."