github.com/Files-com/files-sdk-go/v3@v3.1.81/file/remotefs_test.go (about) 1 package file 2 3 import ( 4 "context" 5 "path/filepath" 6 "strings" 7 "testing" 8 9 "github.com/stretchr/testify/require" 10 11 "github.com/stretchr/testify/assert" 12 ) 13 14 func TestFS_Open(t *testing.T) { 15 client, r, err := CreateClient("TestFS_Open") 16 if err != nil { 17 t.Fatal(err) 18 } 19 defer r.Stop() 20 21 assert := assert.New(t) 22 client.Upload( 23 UploadWithReader(strings.NewReader("testing 3")), 24 UploadWithSize(9), 25 UploadWithDestinationPath(filepath.Join("remotefs_test", "1.text")), 26 ) 27 28 fs := (&FS{}).Init(client.Config, true) 29 fs = fs.WithContext(context.TODO()).(*FS) 30 f, err := fs.Open("remotefs_test") 31 assert.NoError(err) 32 rf, ok := f.(*ReadDirFile) 33 assert.Equal(true, ok) 34 entry, err := rf.ReadDir(0) 35 assert.NoError(err) 36 assert.Equal(1, len(entry)) 37 assert.Equal(false, entry[0].IsDir()) 38 info, err := entry[0].Info() 39 assert.NoError(err) 40 assert.Equal("1.text", info.Name()) 41 fsFile, ok := entry[0].(*File) 42 assert.Equal(true, ok) 43 buf := make([]byte, 8) 44 _, err = fsFile.Read(buf) 45 assert.NoError(err) 46 err = fsFile.Close() 47 assert.NoError(err) 48 assert.Equal("testing ", string(buf)) 49 50 buf = make([]byte, 9) 51 _, err = fsFile.Read(buf) 52 assert.NoError(err) 53 err = fsFile.Close() 54 assert.NoError(err) 55 56 assert.Equal("testing 3", string(buf)) 57 58 _, err = fs.ReadDir(".") 59 require.NoError(t, err) 60 61 _, err = fs.Open(".") 62 require.NoError(t, err) 63 }