Compare commits

..

No commits in common. "21d7b367bdc3821cf69b21e14d9b9fd1e5f4bfee" and "b2f735854dc8efdbed2671a57df23cc8e9588295" have entirely different histories.

2 changed files with 0 additions and 71 deletions

13
msg.go
View file

@ -117,9 +117,6 @@ type Msg struct {
// sendError holds the SendError in case a Msg could not be delivered during the Client.Send operation // sendError holds the SendError in case a Msg could not be delivered during the Client.Send operation
sendError error sendError error
// noDefaultUserAgent indicates whether the default User Agent will be excluded for the Msg when it's sent.
noDefaultUserAgent bool
} }
// SendmailPath is the default system path to the sendmail binary // SendmailPath is the default system path to the sendmail binary
@ -195,13 +192,6 @@ func WithPGPType(pt PGPType) MsgOption {
} }
} }
// WithNoDefaultUserAgent configures the Msg to not use the default User Agent
func WithNoDefaultUserAgent() MsgOption {
return func(m *Msg) {
m.noDefaultUserAgent = true
}
}
// SetCharset sets the encoding charset of the Msg // SetCharset sets the encoding charset of the Msg
func (m *Msg) SetCharset(c Charset) { func (m *Msg) SetCharset(c Charset) {
m.charset = c m.charset = c
@ -1191,9 +1181,6 @@ func (m *Msg) setEncoder() {
// checkUserAgent checks if a useragent/x-mailer is set and if not will set a default // checkUserAgent checks if a useragent/x-mailer is set and if not will set a default
// version string // version string
func (m *Msg) checkUserAgent() { func (m *Msg) checkUserAgent() {
if m.noDefaultUserAgent {
return
}
_, uaok := m.genHeader[HeaderUserAgent] _, uaok := m.genHeader[HeaderUserAgent]
_, xmok := m.genHeader[HeaderXMailer] _, xmok := m.genHeader[HeaderXMailer]
if !uaok && !xmok { if !uaok && !xmok {

View file

@ -3161,61 +3161,3 @@ func TestMsg_BccFromString(t *testing.T) {
}) })
} }
} }
// TestMsg_checkUserAgent tests the checkUserAgent method of the Msg
func TestMsg_checkUserAgent(t *testing.T) {
tests := []struct {
name string
noDefaultUserAgent bool
genHeader map[Header][]string
wantUserAgent string
sf bool
}{
{
name: "check default user agent",
noDefaultUserAgent: false,
wantUserAgent: fmt.Sprintf("go-mail v%s // https://github.com/wneessen/go-mail", VERSION),
sf: false,
},
{
name: "check no default user agent",
noDefaultUserAgent: true,
wantUserAgent: "",
sf: true,
},
{
name: "check if ua and xm is already set",
noDefaultUserAgent: false,
genHeader: map[Header][]string{
HeaderUserAgent: {"custom UA"},
HeaderXMailer: {"custom XM"},
},
wantUserAgent: "custom UA",
sf: false,
},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
msg := &Msg{
noDefaultUserAgent: tt.noDefaultUserAgent,
genHeader: tt.genHeader,
}
msg.checkUserAgent()
gotUserAgent := ""
if val, ok := msg.genHeader[HeaderUserAgent]; ok {
gotUserAgent = val[0] // Assuming the first one is the needed value
}
if gotUserAgent != tt.wantUserAgent && !tt.sf {
t.Errorf("UserAgent got = %v, want = %v", gotUserAgent, tt.wantUserAgent)
}
})
}
}
// TestNewMsgWithMIMEVersion tests WithMIMEVersion and Msg.SetMIMEVersion
func TestNewMsgWithNoDefaultUserAgent(t *testing.T) {
m := NewMsg(WithNoDefaultUserAgent())
if m.noDefaultUserAgent != true {
t.Errorf("WithNoDefaultUserAgent() failed. Expected: %t, got: %t", true, false)
}
}