MCPcopy
hub / github.com/caddyserver/caddy / TestFileCreationMode

Function TestFileCreationMode

modules/logging/filewriter_test.go:30–100  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

28)
29
30func TestFileCreationMode(t *testing.T) {
31 on := true
32 off := false
33
34 tests := []struct {
35 name string
36 fw FileWriter
37 wantMode os.FileMode
38 }{
39 {
40 name: "default mode no roll",
41 fw: FileWriter{
42 Roll: &off,
43 },
44 wantMode: 0o600,
45 },
46 {
47 name: "default mode roll",
48 fw: FileWriter{
49 Roll: &on,
50 },
51 wantMode: 0o600,
52 },
53 {
54 name: "custom mode no roll",
55 fw: FileWriter{
56 Roll: &off,
57 Mode: 0o666,
58 },
59 wantMode: 0o666,
60 },
61 {
62 name: "custom mode roll",
63 fw: FileWriter{
64 Roll: &on,
65 Mode: 0o666,
66 },
67 wantMode: 0o666,
68 },
69 }
70
71 m := syscall.Umask(0o000)
72 defer syscall.Umask(m)
73
74 for _, tt := range tests {
75 t.Run(tt.name, func(t *testing.T) {
76 dir, err := os.MkdirTemp("", "caddytest")
77 if err != nil {
78 t.Fatalf("failed to create tempdir: %v", err)
79 }
80 defer os.RemoveAll(dir)
81 fpath := filepath.Join(dir, "test.log")
82 tt.fw.Filename = fpath
83
84 logger, err := tt.fw.OpenWriter()
85 if err != nil {
86 t.Fatalf("failed to create file: %v", err)
87 }

Callers

nothing calls this directly

Calls 3

StatMethod · 0.80
OpenWriterMethod · 0.65
CloseMethod · 0.45

Tested by

no test coverage detected