diff --git a/fs/diff_test.go b/fs/diff_test.go index 327cab724..d9c6d34e2 100644 --- a/fs/diff_test.go +++ b/fs/diff_test.go @@ -322,20 +322,20 @@ func changesString(c []TestChange) string { func Add(p string) TestChange { return TestChange{ Kind: ChangeKindAdd, - Path: p, + Path: filepath.FromSlash(p), } } func Delete(p string) TestChange { return TestChange{ Kind: ChangeKindDelete, - Path: p, + Path: filepath.FromSlash(p), } } func Modify(p string) TestChange { return TestChange{ Kind: ChangeKindModify, - Path: p, + Path: filepath.FromSlash(p), } } diff --git a/fs/diff_windows.go b/fs/diff_windows.go index 7bbd66284..8eed36507 100644 --- a/fs/diff_windows.go +++ b/fs/diff_windows.go @@ -1,14 +1,25 @@ package fs -import "os" +import ( + "os" + + "golang.org/x/sys/windows" +) func detectDirDiff(upper, lower string) *diffDirOptions { return nil } func compareSysStat(s1, s2 interface{}) (bool, error) { - // TODO: Use windows specific sys type - return false, nil + f1, ok := s1.(windows.Win32FileAttributeData) + if !ok { + return false, nil + } + f2, ok := s2.(windows.Win32FileAttributeData) + if !ok { + return false, nil + } + return f1.FileAttributes == f2.FileAttributes, nil } func compareCapabilities(p1, p2 string) (bool, error) {