func TestFormatFileChanges(t *testing.T) {
changes := []safcm.FileChange{
- {
- Path: "created: file",
- Created: true,
- New: safcm.FileChangeInfo{
- Mode: 0644,
- User: "user",
- Uid: 1000,
- Group: "group",
- Gid: 2000,
- },
- },
- {
- Path: "created: link",
- Created: true,
- New: safcm.FileChangeInfo{
- Mode: fs.ModeSymlink | 0777,
- User: "user",
- Uid: 1000,
- Group: "group",
- Gid: 2000,
- },
- },
- {
- Path: "type change: file -> dir",
- Old: safcm.FileChangeInfo{
- Mode: 0751,
- User: "user",
- Uid: 1000,
- Group: "group",
- Gid: 2000,
- },
- New: safcm.FileChangeInfo{
- Mode: fs.ModeDir | 0751,
- User: "user",
- Uid: 1000,
- Group: "group",
- Gid: 2000,
- },
- DataDiff: `@@ -1,2 +1 @@
+ {
+ Path: "created: file",
+ Created: true,
+ New: safcm.FileChangeInfo{
+ Mode: 0644,
+ User: "user",
+ Uid: 1000,
+ Group: "group",
+ Gid: 2000,
+ },
+ },
+ {
+ Path: "created: link",
+ Created: true,
+ New: safcm.FileChangeInfo{
+ Mode: fs.ModeSymlink | 0777,
+ User: "user",
+ Uid: 1000,
+ Group: "group",
+ Gid: 2000,
+ },
+ },
+ {
+ Path: "type change: file -> dir",
+ Old: safcm.FileChangeInfo{
+ Mode: 0751,
+ User: "user",
+ Uid: 1000,
+ Group: "group",
+ Gid: 2000,
+ },
+ New: safcm.FileChangeInfo{
+ Mode: fs.ModeDir | 0751,
+ User: "user",
+ Uid: 1000,
+ Group: "group",
+ Gid: 2000,
+ },
+ DataDiff: `@@ -1,2 +1 @@
-content
`,
- },
- {
- Path: "user change",
- Old: safcm.FileChangeInfo{
- Mode: 0755,
- User: "user",
- Uid: 1000,
- Group: "group",
- Gid: 2000,
- },
- New: safcm.FileChangeInfo{
- Mode: 0755,
- User: "user2",
- Uid: 1001,
- Group: "group",
- Gid: 2000,
- },
- },
- {
- Path: "group change",
- Old: safcm.FileChangeInfo{
- Mode: 0755,
- User: "user",
- Uid: 1000,
- Group: "group",
- Gid: 2000,
- },
- New: safcm.FileChangeInfo{
- Mode: 0755,
- User: "user",
- Uid: 1000,
- Group: "group2",
- Gid: 2001,
- },
- },
- {
- Path: "mode change",
- Old: safcm.FileChangeInfo{
- Mode: 0755,
- User: "user",
- Uid: 1000,
- Group: "group",
- Gid: 2000,
- },
- New: safcm.FileChangeInfo{
- Mode: 0750,
- User: "user",
- Uid: 1000,
- Group: "group",
- Gid: 2000,
- },
- },
- {
- Path: "mode change (setuid)",
- Old: safcm.FileChangeInfo{
- Mode: 0755,
- User: "user",
- Uid: 1000,
- Group: "group",
- Gid: 2000,
- },
- New: safcm.FileChangeInfo{
- Mode: 0755 | fs.ModeSetuid,
- User: "user",
- Uid: 1000,
- Group: "group",
- Gid: 2000,
- },
- },
- {
- Path: "content change",
- Old: safcm.FileChangeInfo{
- Mode: 0644,
- User: "user",
- Uid: 1000,
- Group: "group",
- Gid: 2000,
- },
- New: safcm.FileChangeInfo{
- Mode: 0644,
- User: "user",
- Uid: 1000,
- Group: "group",
- Gid: 2000,
- },
- DataDiff: `@@ -1,2 +1,2 @@
+ },
+ {
+ Path: "user change",
+ Old: safcm.FileChangeInfo{
+ Mode: 0755,
+ User: "user",
+ Uid: 1000,
+ Group: "group",
+ Gid: 2000,
+ },
+ New: safcm.FileChangeInfo{
+ Mode: 0755,
+ User: "user2",
+ Uid: 1001,
+ Group: "group",
+ Gid: 2000,
+ },
+ },
+ {
+ Path: "group change",
+ Old: safcm.FileChangeInfo{
+ Mode: 0755,
+ User: "user",
+ Uid: 1000,
+ Group: "group",
+ Gid: 2000,
+ },
+ New: safcm.FileChangeInfo{
+ Mode: 0755,
+ User: "user",
+ Uid: 1000,
+ Group: "group2",
+ Gid: 2001,
+ },
+ },
+ {
+ Path: "mode change",
+ Old: safcm.FileChangeInfo{
+ Mode: 0755,
+ User: "user",
+ Uid: 1000,
+ Group: "group",
+ Gid: 2000,
+ },
+ New: safcm.FileChangeInfo{
+ Mode: 0750,
+ User: "user",
+ Uid: 1000,
+ Group: "group",
+ Gid: 2000,
+ },
+ },
+ {
+ Path: "mode change (setuid)",
+ Old: safcm.FileChangeInfo{
+ Mode: 0755,
+ User: "user",
+ Uid: 1000,
+ Group: "group",
+ Gid: 2000,
+ },
+ New: safcm.FileChangeInfo{
+ Mode: 0755 | fs.ModeSetuid,
+ User: "user",
+ Uid: 1000,
+ Group: "group",
+ Gid: 2000,
+ },
+ },
+ {
+ Path: "content change",
+ Old: safcm.FileChangeInfo{
+ Mode: 0644,
+ User: "user",
+ Uid: 1000,
+ Group: "group",
+ Gid: 2000,
+ },
+ New: safcm.FileChangeInfo{
+ Mode: 0644,
+ User: "user",
+ Uid: 1000,
+ Group: "group",
+ Gid: 2000,
+ },
+ DataDiff: `@@ -1,2 +1,2 @@
-old content
+content
`,
- },
- {
- Path: "multiple changes",
- Old: safcm.FileChangeInfo{
- Mode: 0644,
- User: "user",
- Uid: 1000,
- Group: "group",
- Gid: 2000,
- },
- New: safcm.FileChangeInfo{
- Mode: fs.ModeDir | 0755,
- User: "user2",
- Uid: 1001,
- Group: "group2",
- Gid: 2001,
- },
- DataDiff: `@@ -1,2 +1 @@
+ },
+ {
+ Path: "multiple changes",
+ Old: safcm.FileChangeInfo{
+ Mode: 0644,
+ User: "user",
+ Uid: 1000,
+ Group: "group",
+ Gid: 2000,
+ },
+ New: safcm.FileChangeInfo{
+ Mode: fs.ModeDir | 0755,
+ User: "user2",
+ Uid: 1001,
+ Group: "group2",
+ Gid: 2001,
+ },
+ DataDiff: `@@ -1,2 +1 @@
-content
`,
- },
- }
+ },
+ }
tests := []struct {
name string