diff options
| author | Tomas Aschan <[email protected]> | 2025-08-02 06:30:24 +0200 |
|---|---|---|
| committer | GitHub <[email protected]> | 2025-08-02 06:30:24 +0200 |
| commit | bfb56184cc124b2a206273c751d7144ec4a8533a (patch) | |
| tree | 878a2dedc3c9386172ee78fe799e24b6a22c9166 /time_test.go | |
| parent | c78f730fb023e4012c4097b24408867cd5c5bdde (diff) | |
| parent | 1b52f7648f880d6ef6aaa19e45b102edadd6c50a (diff) | |
Merge pull request #438 from mologie/fix-time-default-text
Omit zero time.Time default from usage line
Diffstat (limited to 'time_test.go')
| -rw-r--r-- | time_test.go | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/time_test.go b/time_test.go index 46a5ada..62d9a79 100644 --- a/time_test.go +++ b/time_test.go @@ -2,13 +2,14 @@ package pflag import ( "fmt" + "strings" "testing" "time" ) func setUpTimeVar(t *time.Time, formats []string) *FlagSet { f := NewFlagSet("test", ContinueOnError) - f.TimeVar(t, "time", time.Time{}, formats, "Time") + f.TimeVar(t, "time", *t, formats, "Time") return f } @@ -60,3 +61,28 @@ func TestTime(t *testing.T) { } } } + +func usageForTimeFlagSet(t *testing.T, timeVar time.Time) string { + t.Helper() + formats := []string{time.RFC3339Nano, time.RFC1123Z} + f := setUpTimeVar(&timeVar, formats) + if err := f.Parse([]string{}); err != nil { + t.Fatalf("expected success, got %q", err) + } + return f.FlagUsages() +} + +func TestTimeDefaultZero(t *testing.T) { + usage := usageForTimeFlagSet(t, time.Time{}) + if strings.Contains(usage, "default") { + t.Errorf("expected no default value in usage, got %q", usage) + } +} + +func TestTimeDefaultNonZero(t *testing.T) { + timeVar := time.Date(2025, 1, 1, 1, 1, 1, 0, time.UTC) + usage := usageForTimeFlagSet(t, timeVar) + if !strings.Contains(usage, "default") || !strings.Contains(usage, "2025") { + t.Errorf("expected default value in usage, got %q", usage) + } +} |
