(t *testing.T)
| 417 | } |
| 418 | |
| 419 | func 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 | |
| 454 | func TestMultiLevelWriter_Close(t *testing.T) { |
| 455 | buf1 := &closableBuffer{Buffer: &bytes.Buffer{}, closed: false} |
nothing calls this directly
no test coverage detected