MCPcopy
hub / github.com/rs/zerolog / TestMultiLevelWriter_WriteLevel

Function TestMultiLevelWriter_WriteLevel

writer_test.go:419–452  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

417}
418
419func TestMultiLevelWriter_WriteLevel(t *testing.T) {
420 // Test successful writes
421 buf1 := &bytes.Buffer{}
422 buf2 := &bytes.Buffer{}
423
424 multiWriter := MultiLevelWriter(buf1, buf2)
425
426 data := []byte("test level data")
427 n, err := multiWriter.WriteLevel(InfoLevel, data)
428 if err != nil {
429 t.Errorf("WriteLevel failed: %v", err)
430 }
431 if n != len(data) {
432 t.Errorf("WriteLevel returned wrong length: got %d, want %d", n, len(data))
433 }
434
435 if got1 := buf1.String(); got1 != string(data) {
436 t.Errorf("First writer got wrong data: got %q, want %q", got1, string(data))
437 }
438 if got2 := buf2.String(); got2 != string(data) {
439 t.Errorf("Second writer got wrong data: got %q, want %q", got2, string(data))
440 }
441
442 // Test with error writer
443 errorWriter1 := &errorWriter{writeError: io.EOF}
444 buf3 := &bytes.Buffer{}
445
446 errorMultiWriter := MultiLevelWriter(errorWriter1, buf3)
447
448 _, err = errorMultiWriter.WriteLevel(InfoLevel, data)
449 if err != io.EOF {
450 t.Errorf("WriteLevel should have returned EOF error, got: %v", err)
451 }
452}
453
454func TestMultiLevelWriter_Close(t *testing.T) {
455 buf1 := &closableBuffer{Buffer: &bytes.Buffer{}, closed: false}

Callers

nothing calls this directly

Calls 3

MultiLevelWriterFunction · 0.85
WriteLevelMethod · 0.65
StringMethod · 0.45

Tested by

no test coverage detected