1
0
mirror of https://github.com/Tarrasch/zsh-autoenv.git synced 2024-11-14 21:00:58 +02:00
zsh-autoenv/tests/autoenv.t
Daniel Hahler ebef4c2613 tests: define/use $TEST_SOURCE_AUTOENV
This handled (re)loading autoenv for
ZDOTDIR=tests/ZDOTDIR.loadviafunction.
2015-04-23 16:00:15 +02:00

96 lines
2.0 KiB
Perl

$ source $TESTDIR/setup.sh || return 1
Lets set a simple .env action
$ echo 'echo ENTERED' > .env
Manually create auth file
$ test_autoenv_add_to_env $PWD/.env
$ cd .
ENTERED
Now try to make it accept it
$ _autoenv_stack_entered=()
$ rm $AUTOENV_ENV_FILENAME
$ _autoenv_ask_for_yes() { echo "yes" }
$ cd .
Attempting to load unauthorized env file!
-* /tmp/cramtests-*/autoenv.t/.env (glob)
**********************************************
echo ENTERED
**********************************************
Would you like to authorize it? (type 'yes') yes
ENTERED
The last "ENTERED" is because it executed the command.
Now lets see that it actually checks the shasum value.
$ _autoenv_stack_entered=()
$ cd .
ENTERED
$ _autoenv_stack_entered=()
$ rm $AUTOENV_ENV_FILENAME
$ test_autoenv_add_to_env $PWD/.env mischief
$ cd .
Attempting to load unauthorized env file!
-* /tmp/cramtests-*/autoenv.t/.env (glob)
**********************************************
echo ENTERED
**********************************************
Would you like to authorize it? (type 'yes') yes
ENTERED
Now, will it take no for an answer?
$ _autoenv_stack_entered=()
$ rm $AUTOENV_ENV_FILENAME
$ _autoenv_ask_for_yes() { echo "no"; return 1 }
$ cd .
Attempting to load unauthorized env file!
-* /tmp/cramtests-*/autoenv.t/.env (glob)
**********************************************
echo ENTERED
**********************************************
Would you like to authorize it? (type 'yes') no
Lets also try one more time to ensure it didn't add it.
$ _autoenv_ask_for_yes() { echo "yes"; return 0 }
$ cd .
Attempting to load unauthorized env file!
-* /tmp/cramtests-*/autoenv.t/.env (glob)
**********************************************
echo ENTERED
**********************************************
Would you like to authorize it? (type 'yes') yes
ENTERED
Reloading the script should keep the current state, e.g. when reloading your
~/.zshrc.
$ $TEST_SOURCE_AUTOENV
$ cd .