X-Git-Url: https://ruderich.org/simon/gitweb/?p=safcm%2Fsafcm.git;a=blobdiff_plain;f=remote%2Fsync%2Ffiles_test.go;h=34751ae360e6fb09f09b860ef690274790c81ca0;hp=3d19e7f9a3b950e180326f7930efd7d019d57369;hb=ca3a64ec7f80ee21f167fd2b1b3de03349c65028;hpb=9f7f26593d35a34e71da584278345732216d84d3 diff --git a/remote/sync/files_test.go b/remote/sync/files_test.go index 3d19e7f..34751ae 100644 --- a/remote/sync/files_test.go +++ b/remote/sync/files_test.go @@ -2207,6 +2207,59 @@ func TestSyncFile(t *testing.T) { fmt.Errorf("symlink not permitted in path: \"dir\""), }, + // Border cases + + { + "relative path with leading dot", + safcm.MsgSyncReq{}, + &safcm.File{ + Path: "./dir/file", + Mode: 0644, + Uid: -1, + Gid: -1, + OrigGroup: "group", + Data: []byte("content"), + }, + func() { + ft.CreateDirectory("dir", 0755) + }, + true, + []ft.File{ + root, + { + Path: "dir", + Mode: fs.ModeDir | 0755, + }, + { + Path: "dir/file", + Mode: 0644, + Data: []byte("content"), + }, + }, + safcm.MsgSyncResp{ + FileChanges: []safcm.FileChange{ + { + Path: "./dir/file", + Created: true, + New: safcm.FileChangeInfo{ + Mode: 0644, + User: user, + Uid: uid, + Group: group, + Gid: gid, + }, + }, + }, + }, + []string{ + `4: files: "./dir/file" (group): will create`, + `3: files: "./dir/file" (group): creating`, + `4: files: "./dir/file" (group): creating temporary file "dir/.file*"`, + `4: files: "./dir/file" (group): renaming "dir/.fileRND"`, + }, + nil, + }, + // Diffs {