summaryrefslogtreecommitdiffstats
path: root/Test
diff options
context:
space:
mode:
authorPeter Stephenson <pws@users.sourceforge.net>2007-07-06 21:52:38 +0000
committerPeter Stephenson <pws@users.sourceforge.net>2007-07-06 21:52:38 +0000
commit1b52f47cf285d5f3835bce7ad73f360bd327d4e8 (patch)
treeaf5f6637517084bc7914dacfc7fda0a5799f3220 /Test
parent23664: handle bts cache and cleancache subcommands. (diff)
downloadzsh-1b52f47cf285d5f3835bce7ad73f360bd327d4e8.tar
zsh-1b52f47cf285d5f3835bce7ad73f360bd327d4e8.tar.gz
zsh-1b52f47cf285d5f3835bce7ad73f360bd327d4e8.tar.bz2
zsh-1b52f47cf285d5f3835bce7ad73f360bd327d4e8.tar.lz
zsh-1b52f47cf285d5f3835bce7ad73f360bd327d4e8.tar.xz
zsh-1b52f47cf285d5f3835bce7ad73f360bd327d4e8.tar.zst
zsh-1b52f47cf285d5f3835bce7ad73f360bd327d4e8.zip
23665: autoloading of module features and related tweaks
Diffstat (limited to 'Test')
-rw-r--r--Test/V01zmodload.ztst85
1 files changed, 84 insertions, 1 deletions
diff --git a/Test/V01zmodload.ztst b/Test/V01zmodload.ztst
index 2308d3271..cbfde12d6 100644
--- a/Test/V01zmodload.ztst
+++ b/Test/V01zmodload.ztst
@@ -39,6 +39,9 @@
fi
}
+ mkdir zmodload.tmp
+ cd zmodload.tmp
+
%test
# This first test depends on knowing that zsh is run with +Z from the
@@ -118,10 +121,85 @@
zmodload -ab zsh/example example
builtin example
zmodload -e zsh/example
- else print -u8 Warning: zsh/example not linked: not checking autoloading
+ else print -u$ZTST_fd Warning: zsh/example not linked: not checking autoloading
fi
0d:Autoload a module via a builtin
+ zmodload -u zsh/example
+ builtin example
+0d:Autoloads are persistent
+
+ (zmodload -u zsh/parameter
+ zmodload -aF zsh/parameter b:fail
+ fail
+ print "Shouldn't get here.")
+1:Failed builtin autoload
+?(eval):3: module `zsh/parameter' has no such feature: `b:fail': autoload cancelled
+?(eval):3: unknown builtin: fail
+
+ (zmodload -u zsh/parameter
+ zmodload -aF zsh/parameter p:fail
+ print $fail
+ print "Shouldn't get here.")
+1:Failed parameter autoload
+?(eval):3: module `zsh/parameter' has no such feature: `p:fail': autoload cancelled
+?(eval):3: unknown parameter: fail
+
+ (zmodload -u zsh/parameter
+ zmodload -aF zsh/parameter c:fail
+ [[ -fail foo ]]
+ print "Shouldn't get here.")
+2:Failed condition autoload
+?(eval):3: module `zsh/parameter' has no such feature: `c:fail': autoload cancelled
+?(eval):3: unknown condition: -foo
+
+ (zmodload -u zsh/parameter
+ zmodload -aF zsh/parameter f:fail
+ (( fail() )) )
+2:Failed math function autoload
+?(eval):3: module `zsh/parameter' has no such feature: `f:fail': autoload cancelled
+?(eval):3: unknown function: fail
+
+ zmodload -aF zsh/parameter f:fail2
+1:Immediate autoload failure on non-existent feature when module loaded
+?(eval):zmodload:1: module `zsh/parameter' has no such feature: `f:fail2'
+
+ (zmodload -u zsh/parameter
+ zmodload -aF zsh/parameter p:fail
+ print $(( ${#modules} > 1 )) )
+0:Autoloads checked on loading but don't necessarily effect current command
+>1
+?(eval):3: module `zsh/parameter' has no such feature: `p:fail': autoload cancelled
+
+ zmodload -laF zsh/parameter
+0:List default autoloads
+>p:aliases
+>p:builtins
+>p:commands
+>p:dirstack
+>p:dis_aliases
+>p:dis_builtins
+>p:dis_functions
+>p:dis_galiases
+>p:dis_reswords
+>p:dis_saliases
+>p:funcstack
+>p:functions
+>p:functrace
+>p:galiases
+>p:history
+>p:historywords
+>p:jobdirs
+>p:jobstates
+>p:jobtexts
+>p:modules
+>p:nameddirs
+>p:options
+>p:parameters
+>p:reswords
+>p:saliases
+>p:userdirs
+
if [[ $mods[(r)zsh/example] == zsh/example ]]; then
zmodload -u zsh/example
zmodload -ac -I zsh/example ex
@@ -169,6 +247,11 @@
zmodload -e example
1:Delete the module alias again
+ zmodload >zmodload_list
+ print -l ${(o)mods} >mods_list
+ diff zmodload_list mods_list
+0:Listing with zmodload should give all our modules.
+
# Don't unload the main module.
# Do unload zsh/parameter, but reload it as it is needed.