1
0
mirror of https://github.com/Tarrasch/zsh-autoenv.git synced 2025-12-14 02:15:11 +02:00

Add tests

This commit is contained in:
Arash Rouhani
2013-09-08 18:32:16 +02:00
parent b849670591
commit 08fec15f31
5 changed files with 101 additions and 1 deletions

4
tests/.zshenv Normal file
View File

@@ -0,0 +1,4 @@
test -f "$TESTDIR/.zcompdump" && rm "$TESTDIR/.zcompdump"
source "$TESTDIR/../autoenv.plugin.zsh"
export ENV_AUTHORIZATION_FILE="$PWD/.env_auth"

77
tests/autoenv.t Normal file
View File

@@ -0,0 +1,77 @@
Ensure we have our mocked out ENV_AUTHORIZATION_FILE
$ [[ $ENV_AUTHORIZATION_FILE[0,4] == '/tmp' ]] || return 1
Lets set a simple .env action
$ echo 'echo blah' >> .env
Manually create auth file
$ echo "$PWD/.env:$(echo echo blah | shasum)" > $ENV_AUTHORIZATION_FILE
$ cd .
blah
Now try to make it accept it
$ rm $ENV_AUTHORIZATION_FILE
$ _dotenv_read_answer() { answer='y' }
$ cd .
Attempting to load unauthorized env: /tmp/cramtests-??????/autoenv.t/.env (glob)
**********************************************
echo blah
**********************************************
Would you like to authorize it? (y/n)
blah
The last "blah" is because it executed the command
Now lets see that it actually checks the shasum value
$ cd .
blah
$ rm $ENV_AUTHORIZATION_FILE
$ echo "$PWD/.env:$(echo mischief | shasum)" > $ENV_AUTHORIZATION_FILE
$ cd .
Attempting to load unauthorized env: /tmp/cramtests-??????/autoenv.t/.env (glob)
**********************************************
echo blah
**********************************************
Would you like to authorize it? (y/n)
blah
Now, will it take no for an answer?
$ rm $ENV_AUTHORIZATION_FILE
$ _dotenv_read_answer() { answer='n' }
$ cd .
Attempting to load unauthorized env: /tmp/cramtests-??????/autoenv.t/.env (glob)
**********************************************
echo blah
**********************************************
Would you like to authorize it? (y/n)
Lets also try one more time to ensure it didnt add it
$ cd .
Attempting to load unauthorized env: /tmp/cramtests-??????/autoenv.t/.env (glob)
**********************************************
echo blah
**********************************************
Would you like to authorize it? (y/n)