summaryrefslogtreecommitdiff
path: root/fileinfo_test.go
blob: 9a188a1183348b4897fbd6b7cf295b679dd40f8f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package s3

import (
	"io/fs"
	"testing"
	"time"

	"github.com/matryer/is"
	"github.com/minio/minio-go/v7"
)

func TestTransformObjectInfo(t *testing.T) {
	now := time.Now()
	objInfo := minio.ObjectInfo{
		Key:          "directory/filename",
		Size:         1245,
		LastModified: now,
	}
	info := fromObjectInfo(objInfo)
	is := is.New(t)
	is.Equal(info.IsDir(), false)
	is.Equal(info.Mode(), fs.FileMode(0o400))
	is.Equal(info.Name(), "filename")
	is.Equal(info.Size(), int64(1245))
	is.Equal(info.ModTime(), now)

	switch i := info.Sys().(type) {
	case *minio.ObjectInfo:
		is.Equal(i.Key, "directory/filename")
		is.Equal(i.Size, int64(1245))
		is.Equal(i.LastModified, now)
	default:
		t.Error("invalid type")
	}
}