fixed format tests

This commit is contained in:
2025-09-25 20:53:30 +02:00
parent 22d9da642a
commit 25138cc144
5 changed files with 13 additions and 9 deletions

View File

@@ -23,6 +23,7 @@ import (
"io"
"log"
"os"
"time"
"github.com/knadh/koanf/providers/posflag"
"github.com/knadh/koanf/v2"
@@ -80,7 +81,7 @@ Example durations for second parameter:
ModeDiff int = iota
ModeAdd
DefaultFormat string = "Mon Jan 02 15:04:05 MST"
DefaultFormat string = "Mon Jan 02 15:04:05 MST 2006"
)
type Config struct {
@@ -95,7 +96,10 @@ type Config struct {
Args []string
Output io.Writer
Mode int
TZ string // for unit tests
// internal flags for [unit] tests
tz string
refTime time.Time
}
func InitConfig(output io.Writer) (*Config, error) {

View File

@@ -73,9 +73,9 @@ func (tp *TimestampProccessor) Parse(timestamp string) (time.Time, error) {
return ts, err
}
if tp.TZ != "" {
if tp.tz != "" {
// apply custom timezone
zone, _ := time.LoadLocation(tp.TZ)
zone, _ := time.LoadLocation(tp.tz)
ts = ts.In(zone)
}

View File

@@ -73,7 +73,7 @@ func TestParseTimestamps(t *testing.T) {
testname := fmt.Sprintf("parsetimestamp-%s", strings.ReplaceAll(tt.input, " ", "-"))
t.Run(testname, func(t *testing.T) {
var writer bytes.Buffer
tp := NewTP(&Config{Args: []string{tt.input}, Output: &writer, TZ: "UTC"}, now)
tp := NewTP(&Config{Args: []string{tt.input}, Output: &writer, tz: "UTC"}, now)
// writer.String()
ts, err := tp.Parse(tt.input)
@@ -82,7 +82,7 @@ func TestParseTimestamps(t *testing.T) {
err = tp.ProcessTimestamps()
assert.NoError(t, err)
assert.EqualValues(t, tt.want.String()+"\n", writer.String())
assert.EqualValues(t, tt.want.Format(DefaultFormat)+"\n", writer.String())
})
}
}
@@ -148,7 +148,7 @@ func TestAddTimestamps(t *testing.T) {
err := tp.ProcessTimestamps()
assert.NoError(t, err)
assert.EqualValues(t, tt.want.String()+"\n", writer.String())
assert.EqualValues(t, tt.want.Format(DefaultFormat)+"\n", writer.String())
})
}
}

View File

@@ -65,7 +65,7 @@ func TestDatetime(t *testing.T) {
{"date", now, "2025-09-25"},
{"time", now, "12:30:00"},
{"unix", now, "1758803400"},
{"datetime", now, "2025-09-25 12:30:00 +0000 UTC"},
{"datetime", now, "Thu Sep 25 12:30:00 UTC 2025"},
}
for _, tt := range tests {

View File

@@ -5,6 +5,6 @@ exec ts -e
stdout 'yesterday'
exec ts 3/1/2014
stdout 2014-01-03
stdout 'Fri Jan 03'