mirror of
https://github.com/ethauvin/sdkman-for-fish.git
synced 2025-04-25 05:17:11 -07:00
83 lines
3.1 KiB
Gherkin
83 lines
3.1 KiB
Gherkin
Feature: Support autoenv setting
|
|
When the user sets `sdkman_auto_env=true`, we should always `use` the
|
|
candidates specified in `./.sdkmanrc`, if any.
|
|
|
|
Background:
|
|
Given candidate ant is installed at version 1.9.7
|
|
And candidate ant is installed at version 1.9.9
|
|
And candidate ant is installed at version 1.10.1
|
|
And candidate kscript is installed at version 1.5.0
|
|
And candidate kscript is installed at version 1.6.0
|
|
|
|
Scenario: No action if autoenv turned off
|
|
Given SDKMAN! config sets sdkman_auto_env to false
|
|
And file /tmp/autoenv-test/.sdkmanrc exists with content
|
|
"""
|
|
ant=1.9.9
|
|
"""
|
|
When we run fish script
|
|
"""
|
|
echo (basename (realpath $ANT_HOME)) > /tmp/autoenv-test.log
|
|
cd /tmp/autoenv-test
|
|
echo (basename (realpath $ANT_HOME)) >> /tmp/autoenv-test.log
|
|
cd ..
|
|
echo (basename (realpath $ANT_HOME)) >> /tmp/autoenv-test.log
|
|
"""
|
|
Then file /tmp/autoenv-test.log contains
|
|
"""
|
|
1.10.1
|
|
1.10.1
|
|
1.10.1
|
|
"""
|
|
|
|
Scenario: .sdkmanrc loaded if autoenv turned on
|
|
Given SDKMAN! config sets sdkman_auto_env to true
|
|
And file /tmp/autoenv-test/.sdkmanrc exists with content
|
|
"""
|
|
ant=1.9.9
|
|
"""
|
|
When we run fish script
|
|
"""
|
|
echo (basename (realpath $ANT_HOME)) > /tmp/autoenv-test.log
|
|
cd /tmp/autoenv-test
|
|
echo (basename (realpath $ANT_HOME)) >> /tmp/autoenv-test.log
|
|
cd ..
|
|
echo (basename (realpath $ANT_HOME)) >> /tmp/autoenv-test.log
|
|
"""
|
|
Then file /tmp/autoenv-test.log contains
|
|
"""
|
|
1.10.1
|
|
1.9.9
|
|
1.10.1
|
|
"""
|
|
|
|
# TODO: But that PR had been merged back when -- re-investigate
|
|
@pending # This one doesn't work due to a bug in sdkman. Track: https://github.com/sdkman/sdkman-cli/pull/878
|
|
Scenario: Switching between directories with .sdkmanrc
|
|
Given SDKMAN! config sets sdkman_auto_env to true
|
|
And file /tmp/autoenv-test-1/.sdkmanrc exists with content
|
|
"""
|
|
ant=1.9.9
|
|
kscript=1.5.0
|
|
"""
|
|
And file /tmp/autoenv-test-2/.sdkmanrc exists with content
|
|
"""
|
|
ant=1.9.7
|
|
"""
|
|
When we run fish script
|
|
"""
|
|
echo (basename (realpath $ANT_HOME)),(basename (realpath $KSCRIPT_HOME)) > /tmp/autoenv-test.log
|
|
cd /tmp/autoenv-test-1
|
|
echo (basename (realpath $ANT_HOME)),(basename (realpath $KSCRIPT_HOME)) >> /tmp/autoenv-test.log
|
|
cd ../autoenv-test-2
|
|
echo (basename (realpath $ANT_HOME)),(basename (realpath $KSCRIPT_HOME)) >> /tmp/autoenv-test.log
|
|
cd ..
|
|
echo (basename (realpath $ANT_HOME)),(basename (realpath $KSCRIPT_HOME)) >> /tmp/autoenv-test.log
|
|
"""
|
|
Then file /tmp/autoenv-test.log contains
|
|
"""
|
|
1.10.1,1.6.0
|
|
1.9.9,1.5.0
|
|
1.9.7,1.6.0
|
|
1.10.1,1.6.0
|
|
"""
|