MCPcopy
hub / github.com/wavetermdev/waveterm / TestAtomicWriteFile

Function TestAtomicWriteFile

pkg/util/fileutil/fileutil_test.go:9–28  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

7)
8
9func TestAtomicWriteFile(t *testing.T) {
10 tmpDir := t.TempDir()
11 fileName := filepath.Join(tmpDir, "settings.json")
12
13 err := AtomicWriteFile(fileName, []byte(`{"key":"value"}`), 0644)
14 if err != nil {
15 t.Fatalf("AtomicWriteFile failed: %v", err)
16 }
17
18 data, err := os.ReadFile(fileName)
19 if err != nil {
20 t.Fatalf("ReadFile failed: %v", err)
21 }
22 if string(data) != `{"key":"value"}` {
23 t.Fatalf("unexpected file contents: %q", string(data))
24 }
25 if _, err := os.Stat(fileName + TempFileSuffix); !os.IsNotExist(err) {
26 t.Fatalf("temporary file should not exist, stat err: %v", err)
27 }
28}
29
30func TestAtomicWriteFileRenameErrorCleansTempFile(t *testing.T) {
31 tmpDir := t.TempDir()

Callers

nothing calls this directly

Calls 3

AtomicWriteFileFunction · 0.85
ReadFileMethod · 0.80
StatMethod · 0.80

Tested by

no test coverage detected