* replace "(Not)Nil" test checks for errors with with "(No)Error" * unify error text checks style * clarify error check in tests in memory_store
40 lines
1.2 KiB
Go
40 lines
1.2 KiB
Go
package cmd
|
|
|
|
import (
|
|
"testing"
|
|
"time"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
func TestExport_ParseFileName(t *testing.T) {
|
|
tbl := []struct {
|
|
p fileParser
|
|
res string
|
|
err bool
|
|
}{
|
|
{fileParser{}, "", false},
|
|
{fileParser{path: "/tmp/blah", file: "fname.gz"}, "/tmp/blah/fname.gz", false},
|
|
{fileParser{site: "remark", path: "/tmp/blah", file: "fname-{{.SITE}}-{{.YYYYMMDD}}.gz"},
|
|
"/tmp/blah/fname-remark-20180821.gz", false},
|
|
{fileParser{site: "remark", path: "/tmp/blah", file: "fname-{{.SITE}}-{{.YYYY}}-{{.MM}}.gz"},
|
|
"/tmp/blah/fname-remark-2018-08.gz", false},
|
|
{fileParser{site: "remark", path: "/tmp/blah", file: "/tmp/fname-{{.SITE}}-{{.YYYY}}-{{.MM}}.gz"},
|
|
"/tmp/fname-remark-2018-08.gz", false},
|
|
{fileParser{site: "remark", path: "/tmp/blah", file: "/tmp/fname-{{.SITE}}-{{.TS}}.gz"},
|
|
"/tmp/fname-remark-20180821T212615.gz", false},
|
|
{fileParser{site: "remark", path: "/tmp/blah", file: "fname-{{.XXX}}-{{.YYYY}}-{{.MM}}.gz"},
|
|
"", true},
|
|
}
|
|
|
|
now := time.Date(2018, 8, 21, 21, 26, 15, 0, time.UTC)
|
|
for i, tt := range tbl {
|
|
r, err := tt.p.parse(now)
|
|
if tt.err {
|
|
assert.Error(t, err)
|
|
continue
|
|
}
|
|
assert.Equal(t, tt.res, r, "check #%d", i)
|
|
}
|
|
}
|