github.com/snowflakedb/gosnowflake@v1.9.0/file_util_test.go (about)

     1  package gosnowflake
     2  
     3  import (
     4  	"os/user"
     5  	"path/filepath"
     6  	"testing"
     7  )
     8  
     9  func TestGetDigestAndSizeForInvalidDir(t *testing.T) {
    10  	fileUtil := new(snowflakeFileUtil)
    11  	digest, size, err := fileUtil.getDigestAndSizeForFile("/home/file.txt")
    12  	if digest != "" {
    13  		t.Fatal("should be empty")
    14  	}
    15  	if size != 0 {
    16  		t.Fatal("should be 0")
    17  	}
    18  	if err == nil {
    19  		t.Fatal("should have failed")
    20  	}
    21  }
    22  
    23  type tcBaseName struct {
    24  	in  string
    25  	out string
    26  }
    27  
    28  func TestBaseName(t *testing.T) {
    29  	testcases := []tcBaseName{
    30  		{"/tmp", "tmp"},
    31  		{"/home/desktop/.", ""},
    32  		{"/home/desktop/..", ""},
    33  	}
    34  
    35  	for _, test := range testcases {
    36  		t.Run(test.in, func(t *testing.T) {
    37  			base := baseName(test.in)
    38  			if test.out != base {
    39  				t.Errorf("Failed to get base, input %v, expected: %v, got: %v", test.in, test.out, base)
    40  			}
    41  		})
    42  	}
    43  }
    44  
    45  func TestExpandUser(t *testing.T) {
    46  	usr, err := user.Current()
    47  	if err != nil {
    48  		t.Fatal(err)
    49  	}
    50  	homeDir := usr.HomeDir
    51  	user, err := expandUser("~")
    52  	if err != nil {
    53  		t.Fatal(err)
    54  	}
    55  	if homeDir != user {
    56  		t.Fatalf("failed to expand user, expected: %v, got: %v", homeDir, user)
    57  	}
    58  
    59  	user, err = expandUser("~/storage")
    60  	if err != nil {
    61  		t.Fatal(err)
    62  	}
    63  	expectedPath := filepath.Join(homeDir, "storage")
    64  	if expectedPath != user {
    65  		t.Fatalf("failed to expand user, expected: %v, got: %v", expectedPath, user)
    66  	}
    67  }