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
This commit is contained in:
44
internal/util/env_test.go
Normal file
44
internal/util/env_test.go
Normal file
@@ -0,0 +1,44 @@
|
||||
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)
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user