Files
modules/testsuite/modulefiles.deep/modtr/3.0
Xavier Delaruelle 06f79c50fd Let setModuleResolution handle g_moduleVersion
Register all symbolic module version in g_moduleVersion array by letting
setModuleResolution procedure handle this array. So now module-version
procedure deleguates g_moduleVersion handling to setModuleResolution.

With this change all symbols are now registered in g_moduleVersion which
enables to search on these names during an 'avail' command. It was
previously possible to match these symbols only if they were explicitely
defined on a 'module-version' statement and were not about the 'default'
symbol. Symbols inherited by transitivity are now also registered in
g_moduleVersion and resolution structure by recursive call to
setModuleResolution procedure.

setModuleResolution procedure has also been adapted to withdraw its
'override_default' argument. When called, setModuleResolution will now
always override an already defined symbolic version, but 'module-version'
procedure will refrain from calling setModuleResolution if this symbol
is already set in g_moduleVersion.

Introduce non-regression tests 068-transitive in 20-locate and 80-deep
suites and add new tests in 060-rc in 20-locate suite to check
transitive definitions in various conditions.
2017-08-17 17:07:43 +02:00

37 lines
834 B
Plaintext

#%Module1.0
##############################################################################
# Modules Revision 3.0
# Providing a flexible user environment
#
# File: modtr/%M%
# Revision: %I%
# First Edition: 2017/08/16
# Last Mod.: %U%, %G%
#
# Authors: Xavier Delaruelle, xavier.delaruelle@cea.fr
#
# Description: Testuite modulefile
# Command: ModulesHelp, ModulesTest, module-whatis, setenv
# Sub-Command:
#
# Invocation:
# Result: %R{
# }R%
# Comment: %C{
# Test the correct resolution of module aliases and symbolic
# versions set in a transitive manner on deep modules
# }C%
#
##############################################################################
proc ModulesHelp {} {
}
proc ModulesTest {} {
return 1
}
module-whatis "modtr/3.0"
setenv testsuite "yes"