Skip to content
This repository has been archived by the owner on Feb 7, 2024. It is now read-only.

Commit

Permalink
refactor: hoist loadRemoteVersion + NewMultiFileReader
Browse files Browse the repository at this point in the history
  • Loading branch information
hacdias committed Aug 17, 2023
1 parent 8d71863 commit 3ce3c5d
Show file tree
Hide file tree
Showing 6 changed files with 22 additions and 22 deletions.
11 changes: 4 additions & 7 deletions add.go
Original file line number Diff line number Diff line change
Expand Up @@ -65,11 +65,11 @@ func CidVersion(version int) AddOpts {
func (s *Shell) Add(r io.Reader, options ...AddOpts) (string, error) {
fr := files.NewReaderFile(r)
slf := files.NewSliceDirectory([]files.DirEntry{files.FileEntry("", fr)})
err := s.loadRemoteVersion()

fileReader, err := s.newMultiFileReader(slf)
if err != nil {
return "", err
}

Check warning on line 72 in add.go

View check run for this annotation

Codecov / codecov/patch

add.go#L71-L72

Added lines #L71 - L72 were not covered by tests
fileReader := files.NewMultiFileReader(slf, true, s.version.LT(encodedAbsolutePathVersion))

var out object
rb := s.Request("add")
Expand All @@ -95,11 +95,10 @@ func (s *Shell) AddLink(target string) (string, error) {
link := files.NewLinkFile(target, nil)
slf := files.NewSliceDirectory([]files.DirEntry{files.FileEntry("", link)})

err := s.loadRemoteVersion()
reader, err := s.newMultiFileReader(slf)
if err != nil {
return "", err
}

Check warning on line 101 in add.go

View check run for this annotation

Codecov / codecov/patch

add.go#L97-L101

Added lines #L97 - L101 were not covered by tests
reader := files.NewMultiFileReader(slf, true, s.version.LT(encodedAbsolutePathVersion))

var out object
return out.Hash, s.Request("add").Body(reader).Exec(context.Background(), &out)
Expand All @@ -118,13 +117,11 @@ func (s *Shell) AddDir(dir string, options ...AddOpts) (string, error) {
}
slf := files.NewSliceDirectory([]files.DirEntry{files.FileEntry(filepath.Base(dir), sf)})

err = s.loadRemoteVersion()
reader, err := s.newMultiFileReader(slf)
if err != nil {
return "", err
}

reader := files.NewMultiFileReader(slf, true, s.version.LT(encodedAbsolutePathVersion))

rb := s.Request("add").Option("recursive", true)
for _, option := range options {
option(rb)
Expand Down
8 changes: 1 addition & 7 deletions dag.go
Original file line number Diff line number Diff line change
Expand Up @@ -147,11 +147,5 @@ func (s *Shell) dagToFilesReader(data interface{}) (*files.MultiFileReader, erro

fr := files.NewReaderFile(r)
slf := files.NewSliceDirectory([]files.DirEntry{files.FileEntry("", fr)})
err := s.loadRemoteVersion()
if err != nil {
return nil, err
}
fileReader := files.NewMultiFileReader(slf, true, s.version.LT(encodedAbsolutePathVersion))

return fileReader, nil
return s.newMultiFileReader(slf)
}
3 changes: 1 addition & 2 deletions key.go
Original file line number Diff line number Diff line change
Expand Up @@ -118,11 +118,10 @@ func (keyImportOpt) AllowAnyKeyType(allow bool) KeyImportOpt {
func (s *Shell) KeyImport(ctx context.Context, name string, key io.Reader, options ...KeyImportOpt) error {
fr := files.NewReaderFile(key)
slf := files.NewSliceDirectory([]files.DirEntry{files.FileEntry("", fr)})
err := s.loadRemoteVersion()
fileReader, err := s.newMultiFileReader(slf)
if err != nil {
return err
}

Check warning on line 124 in key.go

View check run for this annotation

Codecov / codecov/patch

key.go#L123-L124

Added lines #L123 - L124 were not covered by tests
fileReader := files.NewMultiFileReader(slf, true, s.version.LT(encodedAbsolutePathVersion))

rb := s.Request("key/import", name)
for _, opt := range options {
Expand Down
3 changes: 1 addition & 2 deletions mfs.go
Original file line number Diff line number Diff line change
Expand Up @@ -338,11 +338,10 @@ func (s *Shell) FilesStat(ctx context.Context, path string, options ...FilesOpt)
func (s *Shell) FilesWrite(ctx context.Context, path string, data io.Reader, options ...FilesOpt) error {
fr := files.NewReaderFile(data)
slf := files.NewSliceDirectory([]files.DirEntry{files.FileEntry("", fr)})
err := s.loadRemoteVersion()
fileReader, err := s.newMultiFileReader(slf)
if err != nil {
return err
}

Check warning on line 344 in mfs.go

View check run for this annotation

Codecov / codecov/patch

mfs.go#L343-L344

Added lines #L343 - L344 were not covered by tests
fileReader := files.NewMultiFileReader(slf, true, s.version.LT(encodedAbsolutePathVersion))

rb := s.Request("files/write", path)
for _, opt := range options {
Expand Down
13 changes: 11 additions & 2 deletions shell.go
Original file line number Diff line number Diff line change
Expand Up @@ -150,6 +150,15 @@ func (s *Shell) loadRemoteVersion() error {
return nil
}

func (s *Shell) newMultiFileReader(dir files.Directory) (*files.MultiFileReader, error) {
err := s.loadRemoteVersion()
if err != nil {
return nil, err
}

return files.NewMultiFileReader(dir, true, s.version.LT(encodedAbsolutePathVersion)), nil
}

func (s *Shell) SetTimeout(d time.Duration) {
s.httpcli.Timeout = d
}
Expand Down Expand Up @@ -561,11 +570,11 @@ func (s *Shell) PubSubSubscribe(topic string) (*PubSubSubscription, error) {
func (s *Shell) PubSubPublish(topic, data string) (err error) {
fr := files.NewReaderFile(bytes.NewReader([]byte(data)))
slf := files.NewSliceDirectory([]files.DirEntry{files.FileEntry("", fr)})
err = s.loadRemoteVersion()

fileReader, err := s.newMultiFileReader(slf)
if err != nil {
return err
}

Check warning on line 577 in shell.go

View check run for this annotation

Codecov / codecov/patch

shell.go#L576-L577

Added lines #L576 - L577 were not covered by tests
fileReader := files.NewMultiFileReader(slf, true, s.version.LT(encodedAbsolutePathVersion))

encoder, _ := mbase.EncoderByName("base64url")
resp, err := s.Request("pubsub/pub", encoder.Encode([]byte(topic))).
Expand Down
6 changes: 4 additions & 2 deletions shell_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -484,7 +484,6 @@ func TestDagImportWithOpts(t *testing.T) {
func TestDagImportMultipleCARs(t *testing.T) {
is := is.New(t)
s := NewShell(shellUrl)
is.Nil(s.loadRemoteVersion())

carFile1, err := os.ReadFile("./tests/cars/1.car")
is.Nil(err)
Expand All @@ -497,8 +496,11 @@ func TestDagImportMultipleCARs(t *testing.T) {
files.FileEntry("", files.NewReaderFile(bytes.NewReader(carFile2))),
})

fileReader, err := s.newMultiFileReader(slf)
is.Nil(err)

dagImported, err := s.DagImportWithOpts(
files.NewMultiFileReader(slf, true, s.version.LT(encodedAbsolutePathVersion)),
fileReader,
options.Dag.Stats(true),
options.Dag.Silent(false),
)
Expand Down

0 comments on commit 3ce3c5d

Please sign in to comment.