hugolib: Adjust error test to make it pass on Go tip
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Wed, 24 Oct 2018 12:02:34 +0000 (14:02 +0200)
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Wed, 24 Oct 2018 13:19:49 +0000 (15:19 +0200)
hugolib/hugo_sites_build_errors_test.go

index 8c5016225900d9c3382ea0c81b0fb543a262c8d7..a5825b35f43c0dcb054f6405b2a57726d24f0789 100644 (file)
@@ -3,6 +3,7 @@ package hugolib
 import (
        "fmt"
        "path/filepath"
+       "runtime"
        "strings"
        "testing"
 
@@ -199,14 +200,23 @@ func TestSiteBuildErrors(t *testing.T) {
                        },
                },
                {
+                       // See https://github.com/gohugoio/hugo/issues/5327
                        name:     "Panic in template Execute",
                        fileType: single,
                        fileFixer: func(content string) string {
                                return strings.Replace(content, ".Title", ".Parent.Parent.Parent", 1)
                        },
+
                        assertBuildError: func(a testSiteBuildErrorAsserter, err error) {
                                assert.Error(err)
-                               assert.Contains(err.Error(), `execute of template failed: panic in Execute`)
+                               // This is fixed in latest Go source
+                               if strings.Contains(runtime.Version(), "devel") {
+                                       fe := a.getFileError(err)
+                                       assert.Equal(5, fe.LineNumber)
+                                       assert.Equal(21, fe.ColumnNumber)
+                               } else {
+                                       assert.Contains(err.Error(), `execute of template failed: panic in Execute`)
+                               }
                        },
                },
        }