############################################################################## # Modules Revision 3.0 # Providing a flexible user environment # # File: modules.50-cmds/%M% # Revision: %I% # First Edition: 95/12/06 # Last Mod.: %U%, %G% # # Authors: Jens Hamisch, Jens.Hamisch@Strawberry.COM # # Description: Testuite testsequence # Command: unload # Modulefiles: append/1.0 # Sub-Command: # # Comment: %C{ # Tests the reverse 'append-path' module subcommand for # all allowed shell types. # }C% # ############################################################################## # # Variables. This test forces a module unload command. It will result in the # environment variables "_LMFILES_", "LOADEDMODULES" and "PATH" to # be set up # set module "append/2.0" set modulefile "$env(MODULEPATH)/$module" set old_path $env(PATH) set ts_path "/this/is/the/modules/testsuite" set new_path "$old_path:$ts_path" # # Set up the environment for reversal ... # set env(PATH) "$new_path" set env(_LMFILES_) "$modulefile" set env(LOADEDMODULES) "$module" # # For the different shells ... # set lmf_sh "unset _LMFILES_;" set lm_sh "unset LOADEDMODULES;" set ts_sh "PATH='$old_path';export PATH;" set lmf_csh "unsetenv _LMFILES_;" set lm_csh "unsetenv LOADEDMODULES;" set ts_csh "setenv PATH '$old_path';" set lmf_perl "delete \$ENV{'_LMFILES_'};" set lm_perl "delete \$ENV{'LOADEDMODULES'};" set ts_perl "\$ENV{'PATH'} = '$old_path';" # # The tests # test_cmd "sh" "unload $module" "$ts_sh$lmf_sh$lm_sh" test_cmd "ksh" "unload $module" "$ts_sh$lmf_sh$lm_sh" test_cmd "zsh" "unload $module" "$ts_sh$lmf_sh$lm_sh" test_cmd "csh" "unload $module" "$ts_csh$lmf_csh$lm_csh" test_cmd "tcsh" "unload $module" "$ts_csh$lmf_csh$lm_csh" test_cmd "perl" "unload $module" "$ts_perl$lmf_perl$lm_perl" # # Clean up the environment # set env(PATH) "$old_path" unset env(_LMFILES_) unset env(LOADEDMODULES) # # Cleanup # unset new_path unset ts_path unset old_path unset ts_sh unset lm_sh unset lmf_sh unset ts_csh unset lm_csh unset lmf_csh unset ts_perl unset lm_perl unset lmf_perl unset modulefile unset module