aboutsummaryrefslogtreecommitdiff
path: root/internal/config/config_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/config/config_test.go')
-rw-r--r--internal/config/config_test.go187
1 files changed, 181 insertions, 6 deletions
diff --git a/internal/config/config_test.go b/internal/config/config_test.go
index 18bfe4ce..7734a4fc 100644
--- a/internal/config/config_test.go
+++ b/internal/config/config_test.go
@@ -8,6 +8,181 @@ import (
"testing"
)
+func TestLogFileDefaultValue(t *testing.T) {
+ os.Clearenv()
+
+ parser := NewParser()
+ opts, err := parser.ParseEnvironmentVariables()
+ if err != nil {
+ t.Fatalf(`Parsing failure: %v`, err)
+ }
+
+ if opts.LogFile() != defaultLogFile {
+ t.Fatalf(`Unexpected log file value, got %q`, opts.LogFile())
+ }
+}
+
+func TestLogFileWithCustomFilename(t *testing.T) {
+ os.Clearenv()
+ os.Setenv("LOG_FILE", "foobar.log")
+
+ parser := NewParser()
+ opts, err := parser.ParseEnvironmentVariables()
+ if err != nil {
+ t.Fatalf(`Parsing failure: %v`, err)
+ }
+ if opts.LogFile() != "foobar.log" {
+ t.Fatalf(`Unexpected log file value, got %q`, opts.LogFile())
+ }
+}
+
+func TestLogFileWithEmptyValue(t *testing.T) {
+ os.Clearenv()
+ os.Setenv("LOG_FILE", "")
+
+ parser := NewParser()
+ opts, err := parser.ParseEnvironmentVariables()
+ if err != nil {
+ t.Fatalf(`Parsing failure: %v`, err)
+ }
+
+ if opts.LogFile() != defaultLogFile {
+ t.Fatalf(`Unexpected log file value, got %q`, opts.LogFile())
+ }
+}
+
+func TestLogLevelDefaultValue(t *testing.T) {
+ os.Clearenv()
+
+ parser := NewParser()
+ opts, err := parser.ParseEnvironmentVariables()
+ if err != nil {
+ t.Fatalf(`Parsing failure: %v`, err)
+ }
+
+ if opts.LogLevel() != defaultLogLevel {
+ t.Fatalf(`Unexpected log level value, got %q`, opts.LogLevel())
+ }
+}
+
+func TestLogLevelWithCustomValue(t *testing.T) {
+ os.Clearenv()
+ os.Setenv("LOG_LEVEL", "warning")
+
+ parser := NewParser()
+ opts, err := parser.ParseEnvironmentVariables()
+ if err != nil {
+ t.Fatalf(`Parsing failure: %v`, err)
+ }
+
+ if opts.LogLevel() != "warning" {
+ t.Fatalf(`Unexpected log level value, got %q`, opts.LogLevel())
+ }
+}
+
+func TestLogLevelWithInvalidValue(t *testing.T) {
+ os.Clearenv()
+ os.Setenv("LOG_LEVEL", "invalid")
+
+ parser := NewParser()
+ opts, err := parser.ParseEnvironmentVariables()
+ if err != nil {
+ t.Fatalf(`Parsing failure: %v`, err)
+ }
+
+ if opts.LogLevel() != defaultLogLevel {
+ t.Fatalf(`Unexpected log level value, got %q`, opts.LogLevel())
+ }
+}
+
+func TestLogDateTimeDefaultValue(t *testing.T) {
+ os.Clearenv()
+
+ parser := NewParser()
+ opts, err := parser.ParseEnvironmentVariables()
+ if err != nil {
+ t.Fatalf(`Parsing failure: %v`, err)
+ }
+
+ if opts.LogDateTime() != defaultLogDateTime {
+ t.Fatalf(`Unexpected log date time value, got %v`, opts.LogDateTime())
+ }
+}
+
+func TestLogDateTimeWithCustomValue(t *testing.T) {
+ os.Clearenv()
+ os.Setenv("LOG_DATETIME", "false")
+
+ parser := NewParser()
+ opts, err := parser.ParseEnvironmentVariables()
+ if err != nil {
+ t.Fatalf(`Parsing failure: %v`, err)
+ }
+
+ if opts.LogDateTime() != false {
+ t.Fatalf(`Unexpected log date time value, got %v`, opts.LogDateTime())
+ }
+}
+
+func TestLogDateTimeWithInvalidValue(t *testing.T) {
+ os.Clearenv()
+ os.Setenv("LOG_DATETIME", "invalid")
+
+ parser := NewParser()
+ opts, err := parser.ParseEnvironmentVariables()
+ if err != nil {
+ t.Fatalf(`Parsing failure: %v`, err)
+ }
+
+ if opts.LogDateTime() != defaultLogDateTime {
+ t.Fatalf(`Unexpected log date time value, got %v`, opts.LogDateTime())
+ }
+}
+
+func TestLogFormatDefaultValue(t *testing.T) {
+ os.Clearenv()
+
+ parser := NewParser()
+ opts, err := parser.ParseEnvironmentVariables()
+ if err != nil {
+ t.Fatalf(`Parsing failure: %v`, err)
+ }
+
+ if opts.LogFormat() != defaultLogFormat {
+ t.Fatalf(`Unexpected log format value, got %q`, opts.LogFormat())
+ }
+}
+
+func TestLogFormatWithCustomValue(t *testing.T) {
+ os.Clearenv()
+ os.Setenv("LOG_FORMAT", "json")
+
+ parser := NewParser()
+ opts, err := parser.ParseEnvironmentVariables()
+ if err != nil {
+ t.Fatalf(`Parsing failure: %v`, err)
+ }
+
+ if opts.LogFormat() != "json" {
+ t.Fatalf(`Unexpected log format value, got %q`, opts.LogFormat())
+ }
+}
+
+func TestLogFormatWithInvalidValue(t *testing.T) {
+ os.Clearenv()
+ os.Setenv("LOG_FORMAT", "invalid")
+
+ parser := NewParser()
+ opts, err := parser.ParseEnvironmentVariables()
+ if err != nil {
+ t.Fatalf(`Parsing failure: %v`, err)
+ }
+
+ if opts.LogFormat() != defaultLogFormat {
+ t.Fatalf(`Unexpected log format value, got %q`, opts.LogFormat())
+ }
+}
+
func TestDebugModeOn(t *testing.T) {
os.Clearenv()
os.Setenv("DEBUG", "1")
@@ -18,8 +193,8 @@ func TestDebugModeOn(t *testing.T) {
t.Fatalf(`Parsing failure: %v`, err)
}
- if !opts.HasDebugMode() {
- t.Fatalf(`Unexpected debug mode value, got "%v"`, opts.HasDebugMode())
+ if opts.LogLevel() != "debug" {
+ t.Fatalf(`Unexpected debug mode value, got %q`, opts.LogLevel())
}
}
@@ -32,8 +207,8 @@ func TestDebugModeOff(t *testing.T) {
t.Fatalf(`Parsing failure: %v`, err)
}
- if opts.HasDebugMode() {
- t.Fatalf(`Unexpected debug mode value, got "%v"`, opts.HasDebugMode())
+ if opts.LogLevel() != "info" {
+ t.Fatalf(`Unexpected debug mode value, got %q`, opts.LogLevel())
}
}
@@ -1544,8 +1719,8 @@ Invalid text
t.Errorf(`Parsing failure: %v`, err)
}
- if opts.HasDebugMode() != true {
- t.Errorf(`Unexpected debug mode value, got "%v"`, opts.HasDebugMode())
+ if opts.LogLevel() != "debug" {
+ t.Errorf(`Unexpected debug mode value, got %q`, opts.LogLevel())
}
expected := ">#1234"