diff --git a/etag.go b/etag.go index f94c13b..93feb1c 100644 --- a/etag.go +++ b/etag.go @@ -67,7 +67,7 @@ func Handler(h http.Handler, weak bool) http.Handler { return } - etag := fmt.Sprintf("%v-%v", strconv.Itoa(hw.len), + etag := fmt.Sprintf("\"%v-%v\"", strconv.Itoa(hw.len), hex.EncodeToString(hw.hash.Sum(nil))) if weak { diff --git a/etag_test.go b/etag_test.go index 668a538..9f0b862 100644 --- a/etag_test.go +++ b/etag_test.go @@ -69,7 +69,7 @@ func (s EtagSuite) TestEtagExists() { h := sha1.New() h.Write(testStrBytes) - s.Equal(fmt.Sprintf("%v-%v", len(testStrBytes), hex.EncodeToString(h.Sum(nil))), res.Header.Get(headers.ETag)) + s.Equal(fmt.Sprintf("\"%v-%v\"", len(testStrBytes), hex.EncodeToString(h.Sum(nil))), res.Header.Get(headers.ETag)) } func (s EtagSuite) TestWeakEtagExists() { @@ -81,7 +81,7 @@ func (s EtagSuite) TestWeakEtagExists() { h := sha1.New() h.Write(testStrBytes) - s.Equal(fmt.Sprintf("W/%v-%v", len(testStrBytes), hex.EncodeToString(h.Sum(nil))), res.Header.Get(headers.ETag)) + s.Equal(fmt.Sprintf("W/\"%v-%v\"", len(testStrBytes), hex.EncodeToString(h.Sum(nil))), res.Header.Get(headers.ETag)) } func (s EtagSuite) TestMatch() {