feat: keep perm

This commit is contained in:
franklin 2023-02-20 10:35:21 +01:00
parent ff90391ffa
commit 1072c6f3ef

View File

@ -21,6 +21,11 @@ func Inline(t *testing.T, skip int, msgAndArgs ...interface{}) (string, bool) {
t.Fatal("failed to retrieve caller") t.Fatal("failed to retrieve caller")
} }
fileStat, err := os.Stat(file)
if err != nil {
t.Fatal("failed to stat caller file", log.FError(err))
}
// read file // read file
fileBytes, err := os.ReadFile(file) fileBytes, err := os.ReadFile(file)
if err != nil { if err != nil {
@ -41,7 +46,7 @@ func Inline(t *testing.T, skip int, msgAndArgs ...interface{}) (string, bool) {
t.Fatal("missing inline message") t.Fatal("missing inline message")
} else { } else {
fileLines[line-1] = fmt.Sprintf("%s // INLINE: %s", fileLine, value) fileLines[line-1] = fmt.Sprintf("%s // INLINE: %s", fileLine, value)
if err := os.WriteFile(file, []byte(strings.Join(fileLines, "\n")), 0644); err != nil { if err := os.WriteFile(file, []byte(strings.Join(fileLines, "\n")), fileStat.Mode().Perm()); err != nil {
t.Fatal("failed to write inline", log.FError(err)) t.Fatal("failed to write inline", log.FError(err))
} }
t.Errorf("wrote inline for %s:%d", file, line) t.Errorf("wrote inline for %s:%d", file, line)