Verify (re-)initialization of SDKMAN env vars works.

- Add new test that covers the two cases considered so far.

Housekeeping:

 - Add `.gitignore`
 - Add `.editorconfig`
This commit is contained in:
Raphael Reitzig 2019-07-30 22:19:32 +02:00
parent ddb3b3042b
commit 0d080212d2
4 changed files with 33 additions and 0 deletions

5
.editorconfig Normal file
View file

@ -0,0 +1,5 @@
[*]
indent_style = space
indent_size = 2
trim_trailing_whitespace = true
insert_final_newline = true

2
.gitignore vendored Normal file
View file

@ -0,0 +1,2 @@
test/*_fish
test/*_bash

View file

@ -23,5 +23,6 @@ install:
script: script:
- ruby test/completion.rb - ruby test/completion.rb
- fish test/wrapper.fish - fish test/wrapper.fish
- fish test/reinitialize.fish
- bash -c "sdk install crash 1.3.0; sdk uninstall crash 1.3.0"; fish test/10_zombies_new.fish - bash -c "sdk install crash 1.3.0; sdk uninstall crash 1.3.0"; fish test/10_zombies_new.fish

25
test/reinitialize.fish Executable file
View file

@ -0,0 +1,25 @@
# If either of
# - $SDKMAN_DIR is unset
# - $SDKMAN_DIR points to a directory not owned by the current user
# is true, sdkman-for-fish should run sdkman's init script.
# Assumes sdkman-for-fish is installed
set proper_value "$SDKMAN_DIR"
begin
set -e SDKMAN_DIR
set in_new_shell (fish -lc 'echo $SDKMAN_DIR')
if [ "$in_new_shell" != "$proper_value" ]
echo "SDKMAN_DIR initialized to $in_new_shell instead of $proper_value"
exit 1
end
end
begin
set SDKMAN_DIR "/" # belongs to root, who hopefully doesn't run this
set in_new_shell (fish -lc 'echo $SDKMAN_DIR')
if [ "$in_new_shell" != "$proper_value" ]
echo "SDKMAN_DIR reinitialized to $in_new_shell instead of $proper_value"
exit 1
end
end