(t *testing.T)
| 549 | } |
| 550 | |
| 551 | func TestLoggerNames(t *testing.T) { |
| 552 | tests := []struct { |
| 553 | names []string |
| 554 | expected string |
| 555 | }{ |
| 556 | {nil, ""}, |
| 557 | {[]string{""}, ""}, |
| 558 | {[]string{"foo"}, "foo"}, |
| 559 | {[]string{"foo", ""}, "foo"}, |
| 560 | {[]string{"foo", "bar"}, "foo.bar"}, |
| 561 | {[]string{"foo.bar", "baz"}, "foo.bar.baz"}, |
| 562 | // Garbage in, garbage out. |
| 563 | {[]string{"foo.", "bar"}, "foo..bar"}, |
| 564 | {[]string{"foo", ".bar"}, "foo..bar"}, |
| 565 | {[]string{"foo.", ".bar"}, "foo...bar"}, |
| 566 | } |
| 567 | |
| 568 | for _, tt := range tests { |
| 569 | withLogger(t, DebugLevel, nil, func(log *Logger, logs *observer.ObservedLogs) { |
| 570 | for _, n := range tt.names { |
| 571 | log = log.Named(n) |
| 572 | } |
| 573 | log.Info("") |
| 574 | require.Equal(t, 1, logs.Len(), "Expected only one log entry to be written.") |
| 575 | assert.Equal(t, tt.expected, logs.AllUntimed()[0].LoggerName, "Unexpected logger name from entry.") |
| 576 | assert.Equal(t, tt.expected, log.Name(), "Unexpected logger name.") |
| 577 | }) |
| 578 | withSugar(t, DebugLevel, nil, func(log *SugaredLogger, logs *observer.ObservedLogs) { |
| 579 | for _, n := range tt.names { |
| 580 | log = log.Named(n) |
| 581 | } |
| 582 | log.Infow("") |
| 583 | require.Equal(t, 1, logs.Len(), "Expected only one log entry to be written.") |
| 584 | assert.Equal(t, tt.expected, logs.AllUntimed()[0].LoggerName, "Unexpected logger name from entry.") |
| 585 | assert.Equal(t, tt.expected, log.base.Name(), "Unexpected logger name.") |
| 586 | }) |
| 587 | } |
| 588 | } |
| 589 | |
| 590 | func TestLoggerWriteFailure(t *testing.T) { |
| 591 | errSink := &ztest.Buffer{} |
nothing calls this directly
no test coverage detected