mime: remove test ordering dependency Backport CL 421442 from upstream. Original description: Arrange for tests that call setMimeInit to fully restore the old values, by clearing the sync.Once that controls initialization. Once we've done that, call initMime in initMimeUnixTest because otherwise the test types loaded there will be cleared by the call to initMime that previously was not being done. For golang/go#51648 Change-Id: Ie21bb1e891479d2d842e831dc5225a9386ec6ef1 Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/483117 Reviewed-by: Than McIntosh <thanm@google.com> Reviewed-by: Cherry Mui <cherryyz@google.com>
diff --git a/libgo/go/mime/type_test.go b/libgo/go/mime/type_test.go index 5e4d25c..5769c6a 100644 --- a/libgo/go/mime/type_test.go +++ b/libgo/go/mime/type_test.go
@@ -14,7 +14,10 @@ func setMimeInit(fn func()) (cleanup func()) { once = sync.Once{} testInitMime = fn - return func() { testInitMime = nil } + return func() { + testInitMime = nil + once = sync.Once{} + } } func clearMimeTypes() {
diff --git a/libgo/go/mime/type_unix_test.go b/libgo/go/mime/type_unix_test.go index 4d109aa..43db44b 100644 --- a/libgo/go/mime/type_unix_test.go +++ b/libgo/go/mime/type_unix_test.go
@@ -11,6 +11,7 @@ ) func initMimeUnixTest(t *testing.T) { + once.Do(initMime) err := loadMimeGlobsFile("testdata/test.types.globs2") if err != nil { t.Fatal(err)