github.com/kooksee/kchain@v0.0.0-20180613035215-4aef51c04906/k_test.go (about) 1 package kchain 2 3 import ( 4 "testing" 5 "path/filepath" 6 "os" 7 "strings" 8 "fmt" 9 "sort" 10 ) 11 12 func TestFile(t *testing.T) { 13 dataFilePath := make([]string, 0) 14 15 filepath.Walk("kdata", func(path string, fi os.FileInfo, err error) error { 16 if strings.Contains(path, "kdata/data") && fi.IsDir() && !strings.Contains(path, ".") { 17 fmt.Println(path) 18 return nil 19 } 20 21 if nil == fi { 22 return err 23 } 24 if !fi.IsDir() { 25 return nil 26 } 27 28 fs := strings.Split(fi.Name(), "_") 29 if len(fs) != 2 { 30 return nil 31 } 32 33 dataFilePath = append(dataFilePath, fi.Name()) 34 return nil 35 }) 36 a := []string{"a", "c", "b", "245", "123", "543"} 37 sort.Strings(a) 38 fmt.Println(a) 39 40 if len(dataFilePath) == 0 { 41 dataFilePath = append(dataFilePath, filepath.Join("kdata", "data")) 42 } 43 44 fmt.Println(dataFilePath) 45 46 }