diff --git a/klog_test.go b/klog_test.go index 71717c0d0..1b5721042 100644 --- a/klog_test.go +++ b/klog_test.go @@ -764,6 +764,9 @@ func TestFileSizeCheck(t *testing.T) { } func TestInitFlags(t *testing.T) { + defer CaptureState().Restore() + setFlags() + fs1 := flag.NewFlagSet("test1", flag.PanicOnError) InitFlags(fs1) fs1.Set("log_dir", "/test1") @@ -779,6 +782,48 @@ func TestInitFlags(t *testing.T) { } } +func TestCommandLine(t *testing.T) { + var fs flag.FlagSet + InitFlags(&fs) + + expectedFlags := ` -add_dir_header + If true, adds the file directory to the header of the log messages + -alsologtostderr + log to standard error as well as files (no effect when -logtostderr=true) + -log_backtrace_at value + when logging hits line file:N, emit a stack trace + -log_dir string + If non-empty, write log files in this directory (no effect when -logtostderr=true) + -log_file string + If non-empty, use this log file (no effect when -logtostderr=true) + -log_file_max_size uint + Defines the maximum size a log file can grow to (no effect when -logtostderr=true). Unit is megabytes. If the value is 0, the maximum file size is unlimited. (default 1800) + -logtostderr + log to standard error instead of files (default true) + -one_output + If true, only write logs to their native severity level (vs also writing to each lower severity level; no effect when -logtostderr=true) + -skip_headers + If true, avoid header prefixes in the log messages + -skip_log_headers + If true, avoid headers when opening log files (no effect when -logtostderr=true) + -stderrthreshold value + logs at or above this threshold go to stderr when writing to files and stderr (no effect when -logtostderr=true or -alsologtostderr=false) (default 2) + -v value + number for the log level verbosity + -vmodule value + comma-separated list of pattern=N settings for file-filtered logging +` + + var output bytes.Buffer + fs.SetOutput(&output) + fs.PrintDefaults() + actualFlags := output.String() + + if expectedFlags != actualFlags { + t.Fatalf("Command line changed.\nExpected:\n%q\nActual:\n%q\n", expectedFlags, actualFlags) + } +} + func TestInfoObjectRef(t *testing.T) { defer CaptureState().Restore() setFlags()