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

Function TestFileModeModification

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

Source from the content-addressed store, hash-verified

389}
390
391func TestFileModeModification(t *testing.T) {
392 m := syscall.Umask(0o000)
393 defer syscall.Umask(m)
394
395 dir, err := os.MkdirTemp("", "caddytest")
396 if err != nil {
397 t.Fatalf("failed to create tempdir: %v", err)
398 }
399 defer os.RemoveAll(dir)
400
401 fpath := path.Join(dir, "test.log")
402 f_tmp, err := os.OpenFile(fpath, os.O_WRONLY|os.O_APPEND|os.O_CREATE, os.FileMode(0o600))
403 if err != nil {
404 t.Fatalf("failed to create test file: %v", err)
405 }
406 f_tmp.Close()
407
408 fw := FileWriter{
409 Mode: 0o666,
410 Filename: fpath,
411 }
412
413 logger, err := fw.OpenWriter()
414 if err != nil {
415 t.Fatalf("failed to create file: %v", err)
416 }
417 defer logger.Close()
418
419 st, err := os.Stat(fpath)
420 if err != nil {
421 t.Fatalf("failed to check file permissions: %v", err)
422 }
423
424 want := os.FileMode(fw.Mode)
425 if st.Mode() != want {
426 t.Errorf("file mode is %v, want %v", st.Mode(), want)
427 }
428}
429
430func TestDirMode_Inherit(t *testing.T) {
431 m := syscall.Umask(0)

Callers

nothing calls this directly

Calls 3

OpenWriterMethod · 0.95
StatMethod · 0.80
CloseMethod · 0.45

Tested by

no test coverage detected