forked from mirror/gorm
36 lines
715 B
Go
36 lines
715 B
Go
package utils
|
|
|
|
import (
|
|
"testing"
|
|
)
|
|
|
|
func TestSourceDir(t *testing.T) {
|
|
cases := []struct {
|
|
file string
|
|
want string
|
|
}{
|
|
{
|
|
file: `C:/Users/name/go/pkg/mod/gorm.io/gorm@v1.2.3/utils/utils.go`,
|
|
want: `C:/Users/name/go/pkg/mod/gorm.io/`,
|
|
},
|
|
{
|
|
file: `C:/go/work/proj/gorm/utils/utils.go`,
|
|
want: `C:/go/work/proj/gorm/`,
|
|
},
|
|
{
|
|
file: `C:/go/work/proj/gorm_alias/utils/utils.go`,
|
|
want: `C:/go/work/proj/gorm_alias/`,
|
|
},
|
|
{
|
|
file: `C:/go/work/proj/my.gorm.io/gorm@v1.2.3/utils/utils.go`,
|
|
want: `C:/go/work/proj/my.gorm.io/gorm@v1.2.3/`,
|
|
},
|
|
}
|
|
for _, c := range cases {
|
|
s := sourceDir(c.file)
|
|
if s != c.want {
|
|
t.Fatalf("%s: expected %s, got %s", c.file, c.want, s)
|
|
}
|
|
}
|
|
}
|