229 lines
5.3 KiB
Markdown
229 lines
5.3 KiB
Markdown
# antidote tests for real
|
|
|
|
## antidote bundle
|
|
|
|
### Setup
|
|
|
|
```zsh
|
|
% TESTDATA=$PWD/tests/testdata/real
|
|
% source ./tests/_setup.zsh
|
|
% # do it for real!
|
|
% t_setup_real
|
|
%
|
|
```
|
|
|
|
### Config
|
|
|
|
```zsh
|
|
% zstyle ':antidote:bundle:*' zcompile 'yes'
|
|
%
|
|
```
|
|
|
|
### Bundle
|
|
|
|
Clone and generate bundle script
|
|
|
|
```zsh
|
|
% antidote bundle <$TESTDATA/.zsh_plugins.txt >$ZDOTDIR/.zsh_plugins.zsh 2>/dev/null
|
|
% cat $ZDOTDIR/.zsh_plugins.zsh | subenv ANTIDOTE_HOME #=> --file testdata/real/.zsh_plugins.zsh
|
|
%
|
|
```
|
|
|
|
Check to see that everything cloned
|
|
|
|
```zsh
|
|
% antidote list | subenv ANTIDOTE_HOME #=> --file testdata/real/repo-list.txt
|
|
%
|
|
```
|
|
|
|
Test that everything compiled
|
|
|
|
```zsh
|
|
% zwcfiles=($(ls $(antidote home)/**/*.zwc(N) | wc -l))
|
|
% test $zwcfiles -gt 100 #=> --exit 0
|
|
%
|
|
```
|
|
|
|
Test that everything updated
|
|
|
|
```zsh
|
|
% rm -rf -- $(antidote home)/**/*.zwc(N)
|
|
% antidote update &>/dev/null
|
|
% zwcfiles=($(ls $(antidote home)/**/*.zwc(N) | wc -l))
|
|
% test $zwcfiles -gt 100 #=> --exit 0
|
|
%
|
|
```
|
|
|
|
Check to see that branch:br annotations properly changed the cloned branch
|
|
|
|
```zsh
|
|
% branched_plugin="$ANTIDOTE_HOME/mattmc3/antidote"
|
|
% git -C $branched_plugin branch --show-current 2>/dev/null
|
|
pz
|
|
%
|
|
```
|
|
|
|
Test that `antidote purge --all` aborts when told "no".
|
|
|
|
```zsh
|
|
% function test_exists { [[ -e "$1" ]] }
|
|
% zstyle ':antidote:purge:all' answer 'n'
|
|
% antidote purge --all #=> --exit 1
|
|
% antidote list | subenv ANTIDOTE_HOME #=> --file testdata/real/repo-list.txt
|
|
% antidote list | wc -l | awk '{print $1}'
|
|
15
|
|
% test_exists $ZDOTDIR/.zsh_plugins.zsh(.N) #=> --exit 0
|
|
% test_exists $ZDOTDIR/.zsh_plugins*.bak(.N) #=> --exit 1
|
|
%
|
|
```
|
|
|
|
Test that `antidote purge --all` does the work when told "yes".
|
|
|
|
```zsh
|
|
% function test_exists { [[ -e "$1" ]] }
|
|
% zstyle ':antidote:purge:all' answer 'y'
|
|
% antidote purge --all | tail -n 1 #=> --exit 0
|
|
Antidote purge complete. Be sure to start a new Zsh session.
|
|
% antidote list | wc -l | awk '{print $1}'
|
|
0
|
|
% test_exists $ZDOTDIR/.zsh_plugins.zsh(.N) #=> --exit 1
|
|
% test_exists $ZDOTDIR/.zsh_plugins*.bak(.N) #=> --exit 0
|
|
%
|
|
```
|
|
|
|
### Teardown
|
|
|
|
```zsh
|
|
% zstyle -d ':antidote:purge:all' answer
|
|
% t_teardown
|
|
%
|
|
```
|
|
|
|
## CRLF testing
|
|
|
|
### Redo setup
|
|
|
|
```zsh
|
|
% TESTDATA=$PWD/tests/testdata/real
|
|
% source ./tests/_setup.zsh
|
|
% t_setup_real
|
|
%
|
|
```
|
|
|
|
Clone and generate bundle script
|
|
|
|
```zsh
|
|
% antidote bundle <$TESTDATA/.zsh_plugins.crlf.txt >$ZDOTDIR/.zsh_plugins.zsh 2>/dev/null
|
|
% cat $ZDOTDIR/.zsh_plugins.zsh | subenv ANTIDOTE_HOME
|
|
fpath+=( $ANTIDOTE_HOME/rupa/z )
|
|
source $ANTIDOTE_HOME/rupa/z/z.sh
|
|
fpath+=( $ANTIDOTE_HOME/zsh-users/zsh-syntax-highlighting )
|
|
source $ANTIDOTE_HOME/zsh-users/zsh-syntax-highlighting/zsh-syntax-highlighting.plugin.zsh
|
|
fpath+=( $ANTIDOTE_HOME/zsh-users/zsh-completions )
|
|
source $ANTIDOTE_HOME/zsh-users/zsh-completions/zsh-completions.plugin.zsh
|
|
fpath+=( $ANTIDOTE_HOME/zsh-users/zsh-autosuggestions )
|
|
source $ANTIDOTE_HOME/zsh-users/zsh-autosuggestions/zsh-autosuggestions.plugin.zsh
|
|
fpath+=( $ANTIDOTE_HOME/zsh-users/zsh-history-substring-search )
|
|
source $ANTIDOTE_HOME/zsh-users/zsh-history-substring-search/zsh-history-substring-search.plugin.zsh
|
|
%
|
|
```
|
|
|
|
Check to see that everything cloned
|
|
|
|
```zsh
|
|
% antidote list | subenv ANTIDOTE_HOME
|
|
https://github.com/rupa/z $ANTIDOTE_HOME/rupa/z
|
|
https://github.com/zsh-users/zsh-autosuggestions $ANTIDOTE_HOME/zsh-users/zsh-autosuggestions
|
|
https://github.com/zsh-users/zsh-completions $ANTIDOTE_HOME/zsh-users/zsh-completions
|
|
https://github.com/zsh-users/zsh-history-substring-search $ANTIDOTE_HOME/zsh-users/zsh-history-substring-search
|
|
https://github.com/zsh-users/zsh-syntax-highlighting $ANTIDOTE_HOME/zsh-users/zsh-syntax-highlighting
|
|
%
|
|
```
|
|
|
|
### Teardown
|
|
|
|
```zsh
|
|
% t_teardown
|
|
%
|
|
```
|
|
|
|
## antidote load
|
|
|
|
### Redo setup
|
|
|
|
```zsh
|
|
% TESTDATA=$PWD/tests/testdata/real
|
|
% source ./tests/_setup.zsh
|
|
% t_setup_real
|
|
%
|
|
```
|
|
|
|
### Load
|
|
|
|
Load rupa/z
|
|
|
|
```zsh
|
|
% zstyle ':antidote:bundle' use-friendly-names on
|
|
% echo "rupa/z" > $ZDOTDIR/.zsh_plugins.txt
|
|
% antidote load 2>&1
|
|
# antidote cloning rupa/z...
|
|
% echo $+aliases[z]
|
|
1
|
|
% wc -l <$ZDOTDIR/.zsh_plugins.zsh | sed 's/ //g'
|
|
2
|
|
% (( ! $+aliases[z] )) || unalias z
|
|
%
|
|
```
|
|
|
|
Load re-generates .zsh_plugins.zsh when .zsh_plugins.txt changes
|
|
|
|
```zsh
|
|
% compdir=$ANTIDOTE_HOME/zsh-users/zsh-completions/src
|
|
% (( $fpath[(Ie)$compdir] )) || echo "completions are not in fpath"
|
|
completions are not in fpath
|
|
% echo $+aliases[z]
|
|
0
|
|
%
|
|
```
|
|
|
|
...add a new plugin
|
|
|
|
```zsh
|
|
% wc -l <$ZDOTDIR/.zsh_plugins.txt | sed 's/ //g'
|
|
1
|
|
% cat $ZDOTDIR/.zsh_plugins.zsh | subenv ANTIDOTE_HOME
|
|
fpath+=( $ANTIDOTE_HOME/rupa/z )
|
|
source $ANTIDOTE_HOME/rupa/z/z.sh
|
|
% echo "zsh-users/zsh-completions path:src kind:fpath" >> $ZDOTDIR/.zsh_plugins.txt
|
|
% # static cache file hasn't changed yet
|
|
% cat $ZDOTDIR/.zsh_plugins.zsh | subenv ANTIDOTE_HOME
|
|
fpath+=( $ANTIDOTE_HOME/rupa/z )
|
|
source $ANTIDOTE_HOME/rupa/z/z.sh
|
|
%
|
|
```
|
|
|
|
...now do `antidote load` and show that it actually loaded all plugins
|
|
|
|
```zsh
|
|
% antidote load 2>&1
|
|
# antidote cloning zsh-users/zsh-completions...
|
|
% cat $ZDOTDIR/.zsh_plugins.zsh | subenv ANTIDOTE_HOME
|
|
fpath+=( $ANTIDOTE_HOME/rupa/z )
|
|
source $ANTIDOTE_HOME/rupa/z/z.sh
|
|
fpath+=( $ANTIDOTE_HOME/zsh-users/zsh-completions/src )
|
|
% echo $+aliases[z]
|
|
1
|
|
% (( $fpath[(Ie)$compdir] )) && echo "completions are in fpath"
|
|
completions are in fpath
|
|
%
|
|
% wc -l <$ZDOTDIR/.zsh_plugins.zsh | sed 's/ //g'
|
|
3
|
|
%
|
|
```
|
|
|
|
### Teardown
|
|
|
|
```zsh
|
|
% t_teardown
|
|
%
|
|
```
|