testsuite

package
v0.0.0-...-3008fd9 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 25, 2025 License: MIT Imports: 18 Imported by: 0

README

IMAP backend test suite

Tests moved to separate package because they are reusable.

Tested backend must implement IMAPUsersDB interface defined in go-sqlmail package. Tests for IMAP extensions may require other interfaces, check messages printed for skipped tests.

Just call testsuite.RunTests(t, newBackend, closeBackend) from your backend (or backend_test) package. Each invocation of newBackend callback should provide clean instance of backend (e.g. with empty storage, etc). closeBackend will be called for backend after usage. New instance is created for each test.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Backend_AppendLimit

func Backend_AppendLimit(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func GetFunctionName

func GetFunctionName(i interface{}) string

func Mailbox_AppendLimit

func Mailbox_AppendLimit(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func Mailbox_CopyMessages

func Mailbox_CopyMessages(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func Mailbox_CreateMessage

func Mailbox_CreateMessage(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func Mailbox_Expunge

func Mailbox_Expunge(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func Mailbox_Info

func Mailbox_Info(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func Mailbox_ListMessages

func Mailbox_ListMessages(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func Mailbox_ListMessages_Body

func Mailbox_ListMessages_Body(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func Mailbox_ListMessages_BodyStruct

func Mailbox_ListMessages_BodyStruct(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func Mailbox_MonotonicUid

func Mailbox_MonotonicUid(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func Mailbox_MoveMessages

func Mailbox_MoveMessages(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func Mailbox_SearchMessages_Body

func Mailbox_SearchMessages_Body(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func Mailbox_SearchMessages_Flags

func Mailbox_SearchMessages_Flags(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func Mailbox_SetMessageFlags

func Mailbox_SetMessageFlags(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func Mailbox_SetSubscribed

func Mailbox_SetSubscribed(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func Mailbox_Status

func Mailbox_Status(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func RunTests

func RunTests(t *testing.T, newBackend newBackFunc, closeBackend closeBackFunc)

func TestInit

func TestInit(t *testing.T, newBackend newBackFunc, closeBackend closeBackFunc)

func UserDB_CreateUser

func UserDB_CreateUser(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func UserDB_DeleteUser

func UserDB_DeleteUser(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func UserDB_Login

func UserDB_Login(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func UserDB_SetPassword

func UserDB_SetPassword(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func User_AppendLimit

func User_AppendLimit(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func User_CreateMailbox

func User_CreateMailbox(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func User_CreateMailbox_Parents

func User_CreateMailbox_Parents(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func User_DeleteMailbox

func User_DeleteMailbox(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func User_DeleteMailbox_Parents

func User_DeleteMailbox_Parents(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func User_ListMailboxes

func User_ListMailboxes(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func User_RenameMailbox

func User_RenameMailbox(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func User_RenameMailbox_Childrens

func User_RenameMailbox_Childrens(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func User_RenameMailbox_INBOX

func User_RenameMailbox_INBOX(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

func User_Username

func User_Username(t *testing.T, newBack newBackFunc, closeBack closeBackFunc)

Types

type Backend

type Backend interface {
	backend.Backend
	sqlmail.IMAPUsersDB
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL