mirror of
https://github.com/wneessen/go-mail.git
synced 2024-12-23 11:00:39 +01:00
60 lines
1.9 KiB
Go
60 lines
1.9 KiB
Go
|
// SPDX-FileCopyrightText: Copyright 2010 The Go Authors. All rights reserved.
|
||
|
// SPDX-FileCopyrightText: Copyright (c) 2022-2023 The go-mail Authors
|
||
|
//
|
||
|
// Original net/smtp code from the Go stdlib by the Go Authors.
|
||
|
// Use of this source code is governed by a BSD-style
|
||
|
// LICENSE file that can be found in this directory.
|
||
|
//
|
||
|
// go-mail specific modifications by the go-mail Authors.
|
||
|
// Licensed under the MIT License.
|
||
|
// See [PROJECT ROOT]/LICENSES directory for more information.
|
||
|
//
|
||
|
// SPDX-License-Identifier: BSD-3-Clause AND MIT
|
||
|
|
||
|
//go:build go1.21
|
||
|
// +build go1.21
|
||
|
|
||
|
package smtp
|
||
|
|
||
|
import (
|
||
|
"fmt"
|
||
|
"os"
|
||
|
"strings"
|
||
|
"testing"
|
||
|
|
||
|
"github.com/wneessen/go-mail/log"
|
||
|
)
|
||
|
|
||
|
func TestClient_SetDebugLog_JSON(t *testing.T) {
|
||
|
t.Run("set debug loggging to on should not override logger", func(t *testing.T) {
|
||
|
client := &Client{logger: log.NewJSON(os.Stderr, log.LevelDebug)}
|
||
|
client.SetDebugLog(true)
|
||
|
if !client.debug {
|
||
|
t.Fatalf("expected debug log to be true")
|
||
|
}
|
||
|
if client.logger == nil {
|
||
|
t.Fatalf("expected logger to be defined")
|
||
|
}
|
||
|
if !strings.EqualFold(fmt.Sprintf("%T", client.logger), "*log.JSONlog") {
|
||
|
t.Errorf("expected logger to be of type *log.JSONlog, got: %T", client.logger)
|
||
|
}
|
||
|
})
|
||
|
}
|
||
|
|
||
|
func TestClient_SetLogger_JSON(t *testing.T) {
|
||
|
t.Run("set logger to JSONlog logger", func(t *testing.T) {
|
||
|
client := &Client{}
|
||
|
client.SetLogger(log.NewJSON(os.Stderr, log.LevelDebug))
|
||
|
if !strings.EqualFold(fmt.Sprintf("%T", client.logger), "*log.JSONlog") {
|
||
|
t.Errorf("expected logger to be of type *log.JSONlog, got: %T", client.logger)
|
||
|
}
|
||
|
})
|
||
|
t.Run("nil logger should just return and not set/override", func(t *testing.T) {
|
||
|
client := &Client{logger: log.NewJSON(os.Stderr, log.LevelDebug)}
|
||
|
client.SetLogger(nil)
|
||
|
if !strings.EqualFold(fmt.Sprintf("%T", client.logger), "*log.JSONlog") {
|
||
|
t.Errorf("expected logger to be of type *log.JSONlog, got: %T", client.logger)
|
||
|
}
|
||
|
})
|
||
|
}
|