]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix accessing regex-resources in out-of-tree test runs in regex-tests
authorMichal Nazarewicz <mina86@mina86.com>
Wed, 3 Aug 2016 02:37:29 +0000 (04:37 +0200)
committerMichal Nazarewicz <mina86@mina86.com>
Wed, 3 Aug 2016 12:44:29 +0000 (14:44 +0200)
[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.

test/src/regex-tests.el

index 898548d7650bb6c560b8a6a2fa0ddbf79914e694..85addcab537c8cec09b6ccf65e68470c131c2955 100644 (file)
 
 (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))