Files
git-automation-cli/internal/util/env_test.go
Dev 15bbfdcda2 feat: initial commit of Git Automation CLI
- Add comprehensive Git workflow automation tools
- Include branch management utilities
- Add commit helpers with conventional commit support
- Implement GitHub integration for PR management
- Add configuration management system
- Include comprehensive test coverage
- Add professional documentation and examples
2025-09-11 17:02:12 +03:00

44 lines
1.1 KiB
Go

package util
import (
"os"
"testing"
)
func TestGetenvOrDefault(t *testing.T) {
// Save original environment variable value
originalValue, exists := os.LookupEnv("TEST_ENV_VAR")
// Clean up after test
defer func() {
if exists {
os.Setenv("TEST_ENV_VAR", originalValue)
} else {
os.Unsetenv("TEST_ENV_VAR")
}
}()
// Test 1: Environment variable is not set
os.Unsetenv("TEST_ENV_VAR")
result := GetenvOrDefault("TEST_ENV_VAR", "default")
expected := "default"
if result != expected {
t.Errorf("Expected '%s', got '%s'", expected, result)
}
// Test 2: Environment variable is set to empty string
os.Setenv("TEST_ENV_VAR", "")
result = GetenvOrDefault("TEST_ENV_VAR", "default")
expected = "default"
if result != expected {
t.Errorf("Expected '%s', got '%s'", expected, result)
}
// Test 3: Environment variable is set to a value
os.Setenv("TEST_ENV_VAR", "test_value")
result = GetenvOrDefault("TEST_ENV_VAR", "default")
expected = "test_value"
if result != expected {
t.Errorf("Expected '%s', got '%s'", expected, result)
}
}