mirror of
https://github.com/hanzoskill/sogcli.git
synced 2026-10-30 21:03:29 +00:00
49 lines
1.2 KiB
Go
49 lines
1.2 KiB
Go
package discover
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func TestDiscoverGmail(t *testing.T) {
|
|
result, err := Discover("[email protected]")
|
|
require.NoError(t, err)
|
|
require.NotNil(t, result)
|
|
|
|
assert.Equal(t, "imap.gmail.com", result.IMAP.Host)
|
|
assert.Equal(t, 993, result.IMAP.Port)
|
|
assert.Equal(t, "smtp.gmail.com", result.SMTP.Host)
|
|
assert.Equal(t, 587, result.SMTP.Port)
|
|
}
|
|
|
|
func TestDiscoverCustomDomain(t *testing.T) {
|
|
// Test discovery for a domain with mail servers
|
|
result, err := Discover("[email protected]")
|
|
require.NoError(t, err)
|
|
require.NotNil(t, result)
|
|
|
|
// Should find IMAP and SMTP servers
|
|
require.NotNil(t, result.IMAP)
|
|
require.NotNil(t, result.SMTP)
|
|
assert.NotEmpty(t, result.IMAP.Host)
|
|
assert.NotEmpty(t, result.SMTP.Host)
|
|
}
|
|
|
|
func TestDiscoverInvalidEmail(t *testing.T) {
|
|
_, err := Discover("invalid-email")
|
|
assert.Error(t, err)
|
|
}
|
|
|
|
func TestIsGoogleDomain(t *testing.T) {
|
|
assert.True(t, isGoogleDomain("gmail.com"))
|
|
assert.True(t, isGoogleDomain("googlemail.com"))
|
|
}
|
|
|
|
func TestIsMicrosoftDomain(t *testing.T) {
|
|
assert.True(t, isMicrosoftDomain("outlook.com"))
|
|
assert.True(t, isMicrosoftDomain("hotmail.com"))
|
|
assert.True(t, isMicrosoftDomain("live.com"))
|
|
}
|