Fix some ineffassign warnings.
[arvados.git] / sdk / go / keepclient / collectionreader_test.go
index 6e743f9a9e1a609c90dadbc86b22224ad8d77005..75603f1baa2bcd59f3af7249e7fc540a06d63dae 100644 (file)
@@ -1,3 +1,7 @@
+// Copyright (C) The Arvados Authors. All rights reserved.
+//
+// SPDX-License-Identifier: Apache-2.0
+
 package keepclient
 
 import (
@@ -11,8 +15,8 @@ import (
        "strconv"
        "strings"
 
-       "git.curoverse.com/arvados.git/sdk/go/arvadosclient"
-       "git.curoverse.com/arvados.git/sdk/go/arvadostest"
+       "git.arvados.org/arvados.git/sdk/go/arvadosclient"
+       "git.arvados.org/arvados.git/sdk/go/arvadostest"
        check "gopkg.in/check.v1"
 )
 
@@ -78,6 +82,7 @@ func (h SuccessHandler) ServeHTTP(resp http.ResponseWriter, req *http.Request) {
                if !ok {
                        resp.WriteHeader(http.StatusNotFound)
                } else {
+                       resp.Header().Set("Content-Length", fmt.Sprintf("%d", len(buf)))
                        resp.Write(buf)
                }
        default:
@@ -129,11 +134,11 @@ func (s *CollectionReaderUnit) TestCollectionReaderContent(c *check.C) {
                        c.Check(err, check.Equals, want)
                case string:
                        buf := make([]byte, len(want))
-                       n, err := io.ReadFull(rdr, buf)
+                       _, err := io.ReadFull(rdr, buf)
                        c.Check(err, check.IsNil)
                        for i := 0; i < 4; i++ {
                                c.Check(string(buf), check.Equals, want)
-                               n, err = rdr.Read(buf)
+                               n, err := rdr.Read(buf)
                                c.Check(n, check.Equals, 0)
                                c.Check(err, check.Equals, io.EOF)
                        }
@@ -146,6 +151,7 @@ func (s *CollectionReaderUnit) TestCollectionReaderContent(c *check.C) {
                                        c.Check(offset, check.Equals, int64(a))
                                        buf := make([]byte, b-a)
                                        n, err := io.ReadFull(rdr, buf)
+                                       c.Check(err, check.IsNil)
                                        c.Check(n, check.Equals, b-a)
                                        c.Check(string(buf), check.Equals, want[a:b])
                                }
@@ -161,12 +167,13 @@ func (s *CollectionReaderUnit) TestCollectionReaderContent(c *check.C) {
 
 func (s *CollectionReaderUnit) TestCollectionReaderManyBlocks(c *check.C) {
        h := md5.New()
-       var testdata []byte
        buf := make([]byte, 4096)
        locs := make([]string, len(buf))
+       testdata := make([]byte, 0, len(buf)*len(buf))
        filesize := 0
-       for i := 0; i < len(locs); i++ {
+       for i := range locs {
                _, err := rand.Read(buf[:i])
+               c.Assert(err, check.IsNil)
                h.Write(buf[:i])
                locs[i], _, err = s.kc.PutB(buf[:i])
                c.Assert(err, check.IsNil)
@@ -196,9 +203,9 @@ func (s *CollectionReaderUnit) TestCollectionReaderManyBlocks(c *check.C) {
                offset := rand.Intn(len(buf) - 1)
                count := rand.Intn(len(buf) - offset)
                if rand.Intn(2) == 0 {
-                       curPos, err = rdr.Seek(int64(offset)-curPos, io.SeekCurrent)
+                       curPos, _ = rdr.Seek(int64(offset)-curPos, io.SeekCurrent)
                } else {
-                       curPos, err = rdr.Seek(int64(offset), io.SeekStart)
+                       curPos, _ = rdr.Seek(int64(offset), io.SeekStart)
                }
                c.Check(curPos, check.Equals, int64(offset))
                for count > 0 {
@@ -209,16 +216,18 @@ func (s *CollectionReaderUnit) TestCollectionReaderManyBlocks(c *check.C) {
                        count -= n
                }
                curPos, err = rdr.Seek(0, io.SeekCurrent)
+               c.Check(err, check.IsNil)
                c.Check(curPos, check.Equals, int64(offset))
        }
        c.Check(md5.Sum(buf), check.DeepEquals, md5.Sum(testdata))
        c.Check(buf[:1000], check.DeepEquals, testdata[:1000])
 
+       expectPos := curPos + size + 12345
        curPos, err = rdr.Seek(size+12345, io.SeekCurrent)
        c.Check(err, check.IsNil)
-       c.Check(curPos, check.Equals, size)
+       c.Check(curPos, check.Equals, expectPos)
 
-       curPos, err = rdr.Seek(8-size, io.SeekCurrent)
+       curPos, err = rdr.Seek(8-curPos, io.SeekCurrent)
        c.Check(err, check.IsNil)
        c.Check(curPos, check.Equals, int64(8))