Files
jabba/command/deactivate_test.go
T

49 lines
1.3 KiB
Go

package command
import (
"testing"
"os"
"github.com/shyiko/jabba/cfg"
"reflect"
)
func TestDeactivate(t *testing.T) {
prevPath := os.Getenv("PATH")
defer func() { os.Setenv("PATH", prevPath) }()
os.Setenv("PATH", "/usr/local/bin:" + cfg.Dir() + "/jdk/zulu@1.8.72/bin:/system-jdk/bin:/usr/bin")
os.Setenv("JAVA_HOME", cfg.Dir() + "/jdk/zulu@1.8.72")
os.Setenv("JAVA_HOME_BEFORE_JABBA", "/system-jdk")
actual, err := Deactivate()
if err != nil {
t.Fatalf("err: %v", err)
}
expected := []string{
"export PATH=/usr/local/bin:/system-jdk/bin:/usr/bin",
"export JAVA_HOME=/system-jdk",
"unset JAVA_HOME_BEFORE_JABBA",
}
if !reflect.DeepEqual(actual, expected) {
t.Fatalf("actual: %v != expected: %v", actual, expected)
}
}
func TestDeactivateInUnusedEnv(t *testing.T) {
prevPath := os.Getenv("PATH")
defer func() { os.Setenv("PATH", prevPath) }()
os.Setenv("PATH", "/usr/local/bin:/system-jdk/bin:/usr/bin")
os.Setenv("JAVA_HOME", "/system-jdk")
os.Unsetenv("JAVA_HOME_BEFORE_JABBA")
actual, err := Deactivate()
if err != nil {
t.Fatalf("err: %v", err)
}
expected := []string{
"export PATH=/usr/local/bin:/system-jdk/bin:/usr/bin",
"export JAVA_HOME=/system-jdk",
"unset JAVA_HOME_BEFORE_JABBA",
}
if !reflect.DeepEqual(actual, expected) {
t.Fatalf("actual: %v != expected: %v", actual, expected)
}
}