diff --git a/test/framework/easyblock.py b/test/framework/easyblock.py index e7218b2273..33ab2501bb 100644 --- a/test/framework/easyblock.py +++ b/test/framework/easyblock.py @@ -749,6 +749,7 @@ def test_make_module_dep(self): " ('FFTW', '3.3.7'),", " ('OpenBLAS', '0.2.20', '', ('GCC', '6.4.0-2.28')),", ']', + 'module_depends_on = False', ]) self.writeEC() eb = EasyBlock(EasyConfig(self.eb_file)) @@ -873,10 +874,10 @@ def test_make_module_dep_hmns(self): with self.mocked_stdout_stderr(): mod_dep_txt = eb.make_module_dep() for mod in ['GCC/6.4.0-2.28', 'OpenMPI/2.1.2']: - regex = re.compile('load.*%s' % mod) + regex = re.compile('(load|depends[-_]on).*%s' % mod) self.assertFalse(regex.search(mod_dep_txt), "Pattern '%s' found in: %s" % (regex.pattern, mod_dep_txt)) - regex = re.compile('load.*FFTW/3.3.7') + regex = re.compile('(load|depends[-_]on).*FFTW/3.3.7') self.assertTrue(regex.search(mod_dep_txt), "Pattern '%s' found in: %s" % (regex.pattern, mod_dep_txt)) def test_make_module_dep_of_dep_hmns(self): @@ -1361,27 +1362,27 @@ def test_make_module_step(self): for (name, ver) in [('GCC', '6.4.0-2.28')]: if get_module_syntax() == 'Tcl': - regex = re.compile(r'^\s*module load %s\s*$' % os.path.join(name, ver), re.M) + regex = re.compile(r'^\s*(module load|depends-on) %s\s*$' % os.path.join(name, ver), re.M) elif get_module_syntax() == 'Lua': - regex = re.compile(r'^\s*load\("%s"\)$' % os.path.join(name, ver), re.M) + regex = re.compile(r'^\s*(load|depends_on)\("%s"\)$' % os.path.join(name, ver), re.M) else: self.fail("Unknown module syntax: %s" % get_module_syntax()) self.assertTrue(regex.search(txt), "Pattern %s found in %s" % (regex.pattern, txt)) for (name, ver) in [('test', '1.2.3')]: if get_module_syntax() == 'Tcl': - regex = re.compile(r'^\s*module load %s/.%s\s*$' % (name, ver), re.M) + regex = re.compile(r'^\s*(module load|depends-on) %s/.%s\s*$' % (name, ver), re.M) elif get_module_syntax() == 'Lua': - regex = re.compile(r'^\s*load\("%s/.%s"\)$' % (name, ver), re.M) + regex = re.compile(r'^\s*(load|depends_on)\("%s/.%s"\)$' % (name, ver), re.M) else: self.fail("Unknown module syntax: %s" % get_module_syntax()) self.assertTrue(regex.search(txt), "Pattern %s found in %s" % (regex.pattern, txt)) for (name, ver) in [('OpenMPI', '2.1.2-GCC-6.4.0-2.28')]: if get_module_syntax() == 'Tcl': - regex = re.compile(r'^\s*module load %s/.?%s\s*$' % (name, ver), re.M) + regex = re.compile(r'^\s*(module load|depends-on) %s/.?%s\s*$' % (name, ver), re.M) elif get_module_syntax() == 'Lua': - regex = re.compile(r'^\s*load\("%s/.?%s"\)$' % (name, ver), re.M) + regex = re.compile(r'^\s*(load|depends_on)\("%s/.?%s"\)$' % (name, ver), re.M) else: self.fail("Unknown module syntax: %s" % get_module_syntax()) self.assertFalse(regex.search(txt), "Pattern '%s' *not* found in %s" % (regex.pattern, txt)) diff --git a/test/framework/easyconfig.py b/test/framework/easyconfig.py index 827e01f1e0..afe1520c30 100644 --- a/test/framework/easyconfig.py +++ b/test/framework/easyconfig.py @@ -4785,6 +4785,8 @@ def test_recursive_module_unload(self): toy_ec = os.path.join(test_ecs_dir, 'f', 'foss', 'foss-2018a.eb') test_ec = os.path.join(self.test_prefix, 'test.eb') test_ec_txt = read_file(toy_ec) + # this test only makes sense if depends_on is not used + test_ec_txt += '\nmodule_depends_on = False' write_file(test_ec, test_ec_txt) test_module = os.path.join(self.test_installpath, 'modules', 'all', 'foss', '2018a') @@ -4827,6 +4829,8 @@ def test_recursive_module_unload(self): # recursive_module_unload easyconfig parameter is honored test_ec_bis = os.path.join(self.test_prefix, 'test_bis.eb') test_ec_bis_txt = read_file(toy_ec) + '\nrecursive_module_unload = True' + # this test only makes sense if depends_on is not used + test_ec_bis_txt += '\nmodule_depends_on = False' write_file(test_ec_bis, test_ec_bis_txt) ec_bis = EasyConfig(test_ec_bis) @@ -4871,6 +4875,8 @@ def test_recursive_module_unload(self): self.assertTrue(build_option('recursive_mod_unload')) test_ec_bis = os.path.join(self.test_prefix, 'test_bis.eb') test_ec_bis_txt = read_file(toy_ec) + '\nrecursive_module_unload = False' + # this test only makes sense if depends_on is not used + test_ec_bis_txt += '\nmodule_depends_on = False' write_file(test_ec_bis, test_ec_bis_txt) ec_bis = EasyConfig(test_ec_bis) self.assertEqual(ec_bis['recursive_module_unload'], False)