Commit 13b4c8c0 authored by ideahitme's avatar ideahitme
Browse files

add config validate tests

parent c6af349a
......@@ -33,7 +33,7 @@ func (cfg *config) parseFlags() {
}
// ValidateFlags custom validation for flags aside from pflag provided
func (cfg *config) validateFlags() error {
func (cfg *config) validate() error {
if cfg.logFormat != "text" && cfg.logFormat != "json" {
return fmt.Errorf("unsupported log format: %s", cfg.logFormat)
}
......
package main
import (
"testing"
)
func TestValidateFlags(t *testing.T) {
cfg := newConfig()
cfg.logFormat = "test"
if err := cfg.validate(); err == nil {
t.Errorf("unsupported log format should fail: %s", cfg.logFormat)
}
cfg.logFormat = ""
if err := cfg.validate(); err == nil {
t.Errorf("unsupported log format should fail: %s", cfg.logFormat)
}
for _, format := range []string{"text", "json"} {
cfg.logFormat = format
if err := cfg.validate(); err != nil {
t.Errorf("supported log format: %s should not fail", format)
}
}
}
......@@ -16,8 +16,8 @@ import (
func main() {
cfg := newConfig()
cfg.parseFlags()
if err := cfg.validateFlags(); err != nil {
log.Errorf("flag validation failed: %v", err)
if err := cfg.validate(); err != nil {
log.Errorf("config validation failed: %v", err)
}
if cfg.logFormat == "json" {
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment