Fix accessing regex-resources in out-of-tree test runs in regex-tests

[82a487d: Fix reading of regex-resources in regex-tests] attempted to
fix regex-tests failing when run from the source tree (i.e. via make)
by hard-coding path to regex-resources directory relative to the test
directory.

This fixed runs from the tree but broke the test when run using other
methods.

Fix by trying ‘load-file-name’ or ‘buffer-file-name’, whichever is set.

* test/src/regex-tests.el (regex-tests--resources-dir): New variable
storing path to the regex-resources directory.
(regex-tests-generic-line): Use aforementioned variable.
This commit is contained in:
Michal Nazarewicz 2016-08-03 04:37:29 +02:00
parent f0b5d4bd3e
commit 9a68740d96

View file

@ -21,6 +21,11 @@
(require 'ert)
(defvar regex-tests--resources-dir
(concat (concat (file-name-directory (or load-file-name buffer-file-name))
"/regex-resources/"))
"Path to regex-resources directory next to the \"regex-tests.el\" file.")
(ert-deftest regex-word-cc-fallback-test ()
"Test that [[:cc:]]*x matches x (bug#24020).
@ -98,7 +103,7 @@ are known failures, and are skipped."
`(with-temp-buffer
(modify-syntax-entry ?_ "w;; ") ; tests expect _ to be a word
(insert-file-contents ,(concat "src/regex-resources/" test-file))
(insert-file-contents (concat regex-tests--resources-dir ,test-file))
(let ((case-fold-search nil)
(line-number 1)
(whitelist-idx 0))