]> Cypherpunks repositories - gostls13.git/commitdiff
all: zero mtimes in testdata gz files
authorCaleb Spare <cespare@gmail.com>
Thu, 24 Mar 2016 00:33:32 +0000 (17:33 -0700)
committerBrad Fitzpatrick <bradfitz@golang.org>
Fri, 25 Mar 2016 04:02:36 +0000 (04:02 +0000)
Fixes #14937.

Change-Id: Iea11a32230d44d5a43f8aec812d25f13bce85895
Reviewed-on: https://go-review.googlesource.com/21038
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>

src/compress/gzip/issue14937_test.go [new file with mode: 0644]
src/compress/gzip/testdata/issue6550.gz
src/debug/elf/testdata/hello-world-core.gz
src/encoding/json/testdata/code.json.gz

diff --git a/src/compress/gzip/issue14937_test.go b/src/compress/gzip/issue14937_test.go
new file mode 100644 (file)
index 0000000..cbce0aa
--- /dev/null
@@ -0,0 +1,52 @@
+package gzip
+
+import (
+       "os"
+       "path/filepath"
+       "runtime"
+       "strings"
+       "testing"
+       "time"
+)
+
+// Per golang.org/issue/14939, check that every .gz file
+// in the tree has a zero mtime.
+func TestGZIPFilesHaveZeroMTimes(t *testing.T) {
+       var files []string
+       err := filepath.Walk(runtime.GOROOT(), func(path string, info os.FileInfo, err error) error {
+               if err != nil {
+                       return err
+               }
+               if !info.IsDir() && strings.HasSuffix(path, ".gz") {
+                       files = append(files, path)
+               }
+               return nil
+       })
+       if err != nil {
+               t.Fatal("error collecting list of .gz files in GOROOT: ", err)
+       }
+       if len(files) == 0 {
+               t.Fatal("expected to find some .gz files under GOROOT")
+       }
+       for _, path := range files {
+               checkZeroMTime(t, path)
+       }
+}
+
+func checkZeroMTime(t *testing.T, path string) {
+       f, err := os.Open(path)
+       if err != nil {
+               t.Error(err)
+               return
+       }
+       defer f.Close()
+       gz, err := NewReader(f)
+       if err != nil {
+               t.Errorf("cannot read gzip file %s: %s", path, err)
+               return
+       }
+       defer gz.Close()
+       if !gz.ModTime.Equal(time.Unix(0, 0)) {
+               t.Errorf("gzip file %s has non-zero mtime (%s)", path, gz.ModTime)
+       }
+}
index 57972b636680170bbe26d3876481b24f54d4ab55..82b4af102632c3f97bd4957e71ea519751ea0ea8 100644 (file)
Binary files a/src/compress/gzip/testdata/issue6550.gz and b/src/compress/gzip/testdata/issue6550.gz differ
index 806af6edbc23bd0db45a9b1adfae9418ca6a969a..6d76ab0934a740bbd2966b9a56188c3881368183 100644 (file)
Binary files a/src/debug/elf/testdata/hello-world-core.gz and b/src/debug/elf/testdata/hello-world-core.gz differ
index 0e2895b53acb27b9486131d64420dc2ac422897b..1572a92bfbdfe99c28195104740d1f4b1e560f66 100644 (file)
Binary files a/src/encoding/json/testdata/code.json.gz and b/src/encoding/json/testdata/code.json.gz differ