From 0d999e1db6cd8736ab697de8ce848fa3a5274b9f Mon Sep 17 00:00:00 2001 From: Joshua Sjoding Date: Wed, 24 Feb 2016 22:40:30 -0800 Subject: Refactor to use core.ObjectReader and core.ObjectWriter * New function signatures provide the necessary interface to stream data from disk when using filesystem-based storage in the future * New function signatures provide proper error handling * ObjectReader and ObjectWriter interfaces added to avoid future refactoring, currently are type aliases for io.ReadCloser and io.WriteCloser respectively * Object.Reader now returns (ObjectReader, error) * Object.Writer now returns (ObjectWriter, error) * File.Contents now returns (string, error) * File.Lines now returns ([]string, error) * Blob.Reader now returns (core.ObjectReader, error) * Added internal close helper function for deferred calls to Close that need to check the return value --- file_test.go | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'file_test.go') diff --git a/file_test.go b/file_test.go index e3b9b4b..d9024b0 100644 --- a/file_test.go +++ b/file_test.go @@ -125,7 +125,9 @@ func (s *SuiteFile) TestContents(c *C) { file, err := commit.File(t.path) c.Assert(err, IsNil) - c.Assert(file.Contents(), Equals, t.contents, Commentf( + content, err := file.Contents() + c.Assert(err, IsNil) + c.Assert(content, Equals, t.contents, Commentf( "subtest %d: commit=%s, path=%s", i, t.commit, t.path)) } } @@ -172,7 +174,9 @@ func (s *SuiteFile) TestLines(c *C) { file, err := commit.File(t.path) c.Assert(err, IsNil) - c.Assert(file.Lines(), DeepEquals, t.lines, Commentf( + lines, err := file.Lines() + c.Assert(err, IsNil) + c.Assert(lines, DeepEquals, t.lines, Commentf( "subtest %d: commit=%s, path=%s", i, t.commit, t.path)) } } @@ -201,7 +205,7 @@ func (s *SuiteFile) TestIgnoreEmptyDirEntries(c *C) { iter := commit.Tree().Files() defer iter.Close() for file, err := iter.Next(); err == nil; file, err = iter.Next() { - _ = file.Contents() + _, _ = file.Contents() // this would probably panic if we are not ignoring empty dirs } } -- cgit