1
0
mirror of https://github.com/rclone/rclone.git synced 2026-01-06 18:43:50 +00:00

Create fs.Directory interface and use it everywhere

This commit is contained in:
Nick Craig-Wood
2017-06-30 13:37:29 +01:00
parent e2d7d413ef
commit e7d04fc103
31 changed files with 226 additions and 250 deletions

View File

@@ -307,12 +307,7 @@ func (f *Fs) List(dir string) (entries fs.DirEntries, err error) {
name = strings.TrimRight(name, "/")
remote := path.Join(dir, name)
if isDir {
dir := &fs.Dir{
Name: remote,
When: timeUnset,
Bytes: 0,
Count: 0,
}
dir := fs.NewDir(remote, timeUnset)
entries = append(entries, dir)
} else {
file := &Object{

View File

@@ -67,8 +67,8 @@ func testListRoot(t *testing.T, f fs.Fs) {
e := entries[0]
assert.Equal(t, "four", e.Remote())
assert.Equal(t, int64(0), e.Size())
_, ok := e.(*fs.Dir)
assert.Equal(t, int64(-1), e.Size())
_, ok := e.(fs.Directory)
assert.True(t, ok)
e = entries[1]
@@ -79,8 +79,8 @@ func testListRoot(t *testing.T, f fs.Fs) {
e = entries[2]
assert.Equal(t, "three", e.Remote())
assert.Equal(t, int64(0), e.Size())
_, ok = e.(*fs.Dir)
assert.Equal(t, int64(-1), e.Size())
_, ok = e.(fs.Directory)
assert.True(t, ok)
e = entries[3]