MCPcopy Index your code
hub / github.com/php/frankenphp / TestWriteFile

Function TestWriteFile

internal/extgen/utils_test.go:12–79  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

10)
11
12func TestWriteFile(t *testing.T) {
13 tests := []struct {
14 name string
15 filename string
16 content string
17 expectError bool
18 }{
19 {
20 name: "write simple file",
21 filename: "test.txt",
22 content: "hello world",
23 expectError: false,
24 },
25 {
26 name: "write empty file",
27 filename: "empty.txt",
28 content: "",
29 expectError: false,
30 },
31 {
32 name: "write file with special characters",
33 filename: "special.txt",
34 content: "hello\nworld\t!@#$%^&*()",
35 expectError: false,
36 },
37 {
38 name: "write to invalid directory",
39 filename: "/nonexistent/directory/file.txt",
40 content: "test",
41 expectError: true,
42 },
43 }
44
45 for _, tt := range tests {
46 t.Run(tt.name, func(t *testing.T) {
47 var filename string
48 if !tt.expectError {
49 tempDir := t.TempDir()
50 filename = filepath.Join(tempDir, tt.filename)
51 } else {
52 filename = tt.filename
53 }
54
55 err := writeFile(filename, tt.content)
56
57 if tt.expectError {
58 assert.Error(t, err, "writeFile() should return an error")
59 return
60 }
61
62 assert.NoError(t, err, "writeFile() should not return an error")
63
64 content, err := os.ReadFile(filename)
65 assert.NoError(t, err, "Failed to read written file")
66 assert.Equal(t, tt.content, string(content), "writeFile() content mismatch")
67
68 info, err := os.Stat(filename)
69 assert.NoError(t, err, "Failed to stat file")

Callers

nothing calls this directly

Calls 2

writeFileFunction · 0.85
ErrorMethod · 0.45

Tested by

no test coverage detected