summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorStephen Herbein <SteVwonder@users.noreply.github.com>2018-08-01 03:58:54 -0700
committerMassimiliano Culpo <massimiliano.culpo@gmail.com>2018-08-01 12:58:54 +0200
commitde60e9d5829c47f26c6dced63470bec69538dd34 (patch)
tree79c45f48fcba124356f380c65b3b2f62eaa1fb33 /lib
parentdb79c86ed60db084033b160b64e94e23beb5f0cb (diff)
downloadspack-de60e9d5829c47f26c6dced63470bec69538dd34.tar.gz
spack-de60e9d5829c47f26c6dced63470bec69538dd34.tar.bz2
spack-de60e9d5829c47f26c6dced63470bec69538dd34.tar.xz
spack-de60e9d5829c47f26c6dced63470bec69538dd34.zip
lmod: fix use of custom separator in prepend_path etc. (#8737)
fixes #8736
Diffstat (limited to 'lib')
-rw-r--r--lib/spack/spack/test/data/modules/lmod/module_path_separator.yaml5
-rw-r--r--lib/spack/spack/test/modules/lmod.py14
2 files changed, 19 insertions, 0 deletions
diff --git a/lib/spack/spack/test/data/modules/lmod/module_path_separator.yaml b/lib/spack/spack/test/data/modules/lmod/module_path_separator.yaml
new file mode 100644
index 0000000000..208554968f
--- /dev/null
+++ b/lib/spack/spack/test/data/modules/lmod/module_path_separator.yaml
@@ -0,0 +1,5 @@
+enable:
+ - lmod
+lmod:
+ core_compilers:
+ - 'clang@3.3'
diff --git a/lib/spack/spack/test/modules/lmod.py b/lib/spack/spack/test/modules/lmod.py
index b615619a92..2b3949621d 100644
--- a/lib/spack/spack/test/modules/lmod.py
+++ b/lib/spack/spack/test/modules/lmod.py
@@ -23,6 +23,7 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
+import re
import pytest
import spack.modules.lmod
@@ -151,6 +152,19 @@ class TestLmod(object):
assert len([x for x in content if 'setenv("FOO", "foo")' in x]) == 0
assert len([x for x in content if 'unsetenv("BAR")' in x]) == 0
+ def test_prepend_path_separator(self, modulefile_content,
+ module_configuration):
+ """Tests modifications to run-time environment."""
+
+ module_configuration('module_path_separator')
+ content = modulefile_content('module-path-separator')
+
+ for line in content:
+ if re.match(r'[a-z]+_path\("COLON"', line):
+ assert line.endswith('"foo", ":")')
+ elif re.match(r'[a-z]+_path\("SEMICOLON"', line):
+ assert line.endswith('"bar", ";")')
+
def test_blacklist(self, modulefile_content, module_configuration):
"""Tests blacklisting the generation of selected modules."""