Fix raw TOML dates in where/eq

Note that this has only been a problem with "raw dates" in TOML files in /data and similar. The predefined front matter
dates `.Date` etc. are converted to a Go Time and has worked fine even after upgrading to v2 of the go-toml lib.

Fixes #9979
This commit is contained in:
Bjørn Erik Pedersen
2022-06-06 09:48:40 +02:00
parent 534e7155bb
commit 0566bbf7c7
18 changed files with 216 additions and 87 deletions

View File

@@ -40,7 +40,7 @@ func TestAfter(t *testing.T) {
t.Parallel()
c := qt.New(t)
ns := New(&deps.Deps{})
ns := New(&deps.Deps{Language: langs.NewDefaultLanguage(config.New())})
for i, test := range []struct {
index any
@@ -97,7 +97,7 @@ func (g *tstGrouper2) Group(key any, items any) (any, error) {
func TestGroup(t *testing.T) {
t.Parallel()
c := qt.New(t)
ns := New(&deps.Deps{})
ns := New(&deps.Deps{Language: langs.NewDefaultLanguage(config.New())})
for i, test := range []struct {
key any
@@ -187,7 +187,7 @@ func TestDelimit(t *testing.T) {
func TestDictionary(t *testing.T) {
c := qt.New(t)
ns := New(&deps.Deps{})
ns := New(&deps.Deps{Language: langs.NewDefaultLanguage(config.New())})
for i, test := range []struct {
values []any
@@ -226,7 +226,7 @@ func TestDictionary(t *testing.T) {
func TestReverse(t *testing.T) {
t.Parallel()
c := qt.New(t)
ns := New(&deps.Deps{})
ns := New(&deps.Deps{Language: langs.NewDefaultLanguage(config.New())})
s := []string{"a", "b", "c"}
reversed, err := ns.Reverse(s)
@@ -245,7 +245,7 @@ func TestEchoParam(t *testing.T) {
t.Parallel()
c := qt.New(t)
ns := New(&deps.Deps{})
ns := New(&deps.Deps{Language: langs.NewDefaultLanguage(config.New())})
for i, test := range []struct {
a any
@@ -277,7 +277,7 @@ func TestFirst(t *testing.T) {
t.Parallel()
c := qt.New(t)
ns := New(&deps.Deps{})
ns := New(&deps.Deps{Language: langs.NewDefaultLanguage(config.New())})
for i, test := range []struct {
limit any
@@ -315,7 +315,7 @@ func TestIn(t *testing.T) {
t.Parallel()
c := qt.New(t)
ns := New(&deps.Deps{})
ns := New(&deps.Deps{Language: langs.NewDefaultLanguage(config.New())})
for i, test := range []struct {
l1 any
@@ -391,7 +391,7 @@ func TestIntersect(t *testing.T) {
t.Parallel()
c := qt.New(t)
ns := New(&deps.Deps{})
ns := New(&deps.Deps{Language: langs.NewDefaultLanguage(config.New())})
for i, test := range []struct {
l1, l2 any
@@ -518,7 +518,7 @@ func TestLast(t *testing.T) {
t.Parallel()
c := qt.New(t)
ns := New(&deps.Deps{})
ns := New(&deps.Deps{Language: langs.NewDefaultLanguage(config.New())})
for i, test := range []struct {
limit any
@@ -557,7 +557,7 @@ func TestLast(t *testing.T) {
func TestQuerify(t *testing.T) {
t.Parallel()
c := qt.New(t)
ns := New(&deps.Deps{})
ns := New(&deps.Deps{Language: langs.NewDefaultLanguage(config.New())})
for i, test := range []struct {
params []any
@@ -591,7 +591,7 @@ func TestQuerify(t *testing.T) {
}
func BenchmarkQuerify(b *testing.B) {
ns := New(&deps.Deps{})
ns := New(&deps.Deps{Language: langs.NewDefaultLanguage(config.New())})
params := []any{"a", "b", "c", "d", "f", " &"}
b.ResetTimer()
@@ -604,7 +604,7 @@ func BenchmarkQuerify(b *testing.B) {
}
func BenchmarkQuerifySlice(b *testing.B) {
ns := New(&deps.Deps{})
ns := New(&deps.Deps{Language: langs.NewDefaultLanguage(config.New())})
params := []string{"a", "b", "c", "d", "f", " &"}
b.ResetTimer()
@@ -619,7 +619,7 @@ func BenchmarkQuerifySlice(b *testing.B) {
func TestSeq(t *testing.T) {
t.Parallel()
c := qt.New(t)
ns := New(&deps.Deps{})
ns := New(&deps.Deps{Language: langs.NewDefaultLanguage(config.New())})
for i, test := range []struct {
args []any
@@ -663,7 +663,7 @@ func TestSeq(t *testing.T) {
func TestShuffle(t *testing.T) {
t.Parallel()
c := qt.New(t)
ns := New(&deps.Deps{})
ns := New(&deps.Deps{Language: langs.NewDefaultLanguage(config.New())})
for i, test := range []struct {
seq any
@@ -703,7 +703,7 @@ func TestShuffle(t *testing.T) {
func TestShuffleRandomising(t *testing.T) {
t.Parallel()
c := qt.New(t)
ns := New(&deps.Deps{})
ns := New(&deps.Deps{Language: langs.NewDefaultLanguage(config.New())})
// Note that this test can fail with false negative result if the shuffle
// of the sequence happens to be the same as the original sequence. However
@@ -734,7 +734,7 @@ func TestShuffleRandomising(t *testing.T) {
func TestSlice(t *testing.T) {
t.Parallel()
c := qt.New(t)
ns := New(&deps.Deps{})
ns := New(&deps.Deps{Language: langs.NewDefaultLanguage(config.New())})
for i, test := range []struct {
args []any
@@ -758,7 +758,7 @@ func TestUnion(t *testing.T) {
t.Parallel()
c := qt.New(t)
ns := New(&deps.Deps{})
ns := New(&deps.Deps{Language: langs.NewDefaultLanguage(config.New())})
for i, test := range []struct {
l1 any
@@ -847,7 +847,7 @@ func TestUnion(t *testing.T) {
func TestUniq(t *testing.T) {
t.Parallel()
c := qt.New(t)
ns := New(&deps.Deps{})
ns := New(&deps.Deps{Language: langs.NewDefaultLanguage(config.New())})
for i, test := range []struct {
l any
expect any
@@ -979,6 +979,7 @@ func newDeps(cfg config.Provider) *deps.Deps {
panic(err)
}
return &deps.Deps{
Language: l,
Cfg: cfg,
Fs: hugofs.NewMem(l),
ContentSpec: cs,