Documentation
¶
Index ¶
- func TrimSlackMsgTrailingLine(msg string) string
- type BotDriver
- type Channel
- type DiscordChannel
- type DiscordConfig
- type DiscordTester
- func (d *DiscordTester) BotName() string
- func (d *DiscordTester) BotUserID() string
- func (d *DiscordTester) Channel() Channel
- func (d *DiscordTester) CreateChannel(t *testing.T, prefix string) (Channel, func(t *testing.T))
- func (d *DiscordTester) InitChannels(t *testing.T) []func()
- func (d *DiscordTester) InitUsers(t *testing.T)
- func (d *DiscordTester) InviteBotToChannel(_ *testing.T, _ string)
- func (d *DiscordTester) MDFormatter() interactive.MDFormatter
- func (d *DiscordTester) PostInitialMessage(t *testing.T, channelID string)
- func (d *DiscordTester) PostMessageToBot(t *testing.T, channel, command string)
- func (d *DiscordTester) ReplaceBotNamePlaceholder(msg *interactive.CoreMessage, clusterName string)
- func (d *DiscordTester) SecondChannel() Channel
- func (d *DiscordTester) SetTimeout(timeout time.Duration)
- func (d *DiscordTester) TesterUserID() string
- func (d *DiscordTester) ThirdChannel() Channel
- func (d *DiscordTester) Timeout() time.Duration
- func (d *DiscordTester) Type() DriverType
- func (d *DiscordTester) WaitForInteractiveMessagePosted(userID, channelID string, limitMessages int, assertFn MessageAssertion) error
- func (d *DiscordTester) WaitForInteractiveMessagePostedRecentlyEqual(userID, channelID string, msg interactive.CoreMessage) error
- func (d *DiscordTester) WaitForLastInteractiveMessagePostedEqual(userID, channelID string, msg interactive.CoreMessage) error
- func (d *DiscordTester) WaitForLastInteractiveMessagePostedEqualWithCustomRender(userID, channelID string, renderedMsg string) error
- func (d *DiscordTester) WaitForLastMessageContains(userID, channelID, expectedMsgSubstring string) error
- func (d *DiscordTester) WaitForLastMessageEqual(userID, channelID, expectedMsg string) error
- func (d *DiscordTester) WaitForMessagePosted(userID, channelID string, limitMessages int, assertFn MessageAssertion) error
- func (d *DiscordTester) WaitForMessagePostedRecentlyEqual(userID, channelID, expectedMsg string) error
- func (d *DiscordTester) WaitForMessagePostedWithAttachment(userID, channelID string, limitMessages int, assertFn ExpAttachmentInput) error
- func (d *DiscordTester) WaitForMessagePostedWithFileUpload(userID, channelID string, assertFn FileUploadAssertion) error
- type DriverType
- type ExpAttachmentInput
- type FileUploadAssertion
- type MessageAssertion
- type SlackChannel
- type SlackConfig
- type SlackMessageAssertion
- type SlackTester
- func (s *SlackTester) BotName() string
- func (s *SlackTester) BotUserID() string
- func (s *SlackTester) Channel() Channel
- func (s *SlackTester) CreateChannel(t *testing.T, prefix string) (Channel, func(t *testing.T))
- func (s *SlackTester) InitChannels(t *testing.T) []func()
- func (s *SlackTester) InitUsers(t *testing.T)
- func (s *SlackTester) InviteBotToChannel(t *testing.T, channelID string)
- func (s *SlackTester) MDFormatter() interactive.MDFormatter
- func (s *SlackTester) PostInitialMessage(t *testing.T, channelName string)
- func (s *SlackTester) PostMessageToBot(t *testing.T, channel, command string)
- func (s *SlackTester) ReplaceBotNamePlaceholder(msg *interactive.CoreMessage, clusterName string)
- func (s *SlackTester) SecondChannel() Channel
- func (s *SlackTester) SetTimeout(timeout time.Duration)
- func (s *SlackTester) TesterUserID() string
- func (s *SlackTester) ThirdChannel() Channel
- func (s *SlackTester) Timeout() time.Duration
- func (s *SlackTester) Type() DriverType
- func (s *SlackTester) WaitForInteractiveMessagePosted(userID, channelID string, limitMessages int, assertFn MessageAssertion) error
- func (s *SlackTester) WaitForInteractiveMessagePostedRecentlyEqual(userID, channelID string, msg interactive.CoreMessage) error
- func (s *SlackTester) WaitForLastInteractiveMessagePostedEqual(userID, channelID string, msg interactive.CoreMessage) error
- func (s *SlackTester) WaitForLastInteractiveMessagePostedEqualWithCustomRender(userID, channelID string, renderedMsg string) error
- func (s *SlackTester) WaitForLastMessageContains(userID, channelID, expectedMsgSubstring string) error
- func (s *SlackTester) WaitForLastMessageEqual(userID, channelID, expectedMsg string) error
- func (s *SlackTester) WaitForMessagePosted(userID, channelID string, limitMessages int, assertFn MessageAssertion) error
- func (s *SlackTester) WaitForMessagePostedRecentlyEqual(userID, channelID, expectedMsg string) error
- func (s *SlackTester) WaitForMessagePostedWithAttachment(userID, channelID string, limitMessages int, assertFn ExpAttachmentInput) error
- func (s *SlackTester) WaitForMessagePostedWithFileUpload(userID, channelID string, assertFn FileUploadAssertion) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type BotDriver ¶
type BotDriver interface {
Type() DriverType
InitUsers(t *testing.T)
CreateChannel(t *testing.T, prefix string) (Channel, func(t *testing.T))
InitChannels(t *testing.T) []func()
PostInitialMessage(t *testing.T, channel string)
PostMessageToBot(t *testing.T, channel, command string)
InviteBotToChannel(t *testing.T, channel string)
WaitForMessagePostedRecentlyEqual(userID, channelID, expectedMsg string) error
WaitForLastMessageContains(userID, channel, expectedMsgSubstring string) error
WaitForLastMessageEqual(userID, channel, expectedMsg string) error
WaitForMessagePosted(userID, channel string, limitMessages int, assertFn MessageAssertion) error
WaitForInteractiveMessagePosted(userID, channelID string, limitMessages int, assertFn MessageAssertion) error
WaitForMessagePostedWithFileUpload(userID, channelID string, assertFn FileUploadAssertion) error
WaitForMessagePostedWithAttachment(userID, channel string, limitMessages int, expInput ExpAttachmentInput) error
Channel() Channel
SecondChannel() Channel
ThirdChannel() Channel
BotName() string
BotUserID() string
TesterUserID() string
MDFormatter() interactive.MDFormatter
WaitForInteractiveMessagePostedRecentlyEqual(userID string, channelID string, message interactive.CoreMessage) error
WaitForLastInteractiveMessagePostedEqual(userID string, channelID string, message interactive.CoreMessage) error
WaitForLastInteractiveMessagePostedEqualWithCustomRender(userID, channelID string, renderedMsg string) error
SetTimeout(timeout time.Duration)
Timeout() time.Duration
ReplaceBotNamePlaceholder(msg *interactive.CoreMessage, clusterName string)
}
func NewDiscordTester ¶
func NewDiscordTester(discordCfg DiscordConfig) (BotDriver, error)
func NewSlackTester ¶
func NewSlackTester(slackCfg SlackConfig, apiKey *string) (BotDriver, error)
type DiscordChannel ¶
func (*DiscordChannel) ID ¶
func (s *DiscordChannel) ID() string
func (*DiscordChannel) Identifier ¶
func (s *DiscordChannel) Identifier() string
func (*DiscordChannel) Name ¶
func (s *DiscordChannel) Name() string
type DiscordConfig ¶
type DiscordConfig struct {
BotName string `envconfig:"optional"`
BotID string `envconfig:"default=983294404108378154"`
TesterName string `envconfig:"optional"`
TesterID string `envconfig:"default=1020384322114572381"`
AdditionalContextMessage string `envconfig:"optional"`
GuildID string
TesterAppToken string
RecentMessagesLimit int `envconfig:"default=6"`
MessageWaitTimeout time.Duration `envconfig:"default=30s"`
}
type DiscordTester ¶
type DiscordTester struct {
// contains filtered or unexported fields
}
func (*DiscordTester) BotName ¶
func (d *DiscordTester) BotName() string
func (*DiscordTester) BotUserID ¶
func (d *DiscordTester) BotUserID() string
func (*DiscordTester) Channel ¶
func (d *DiscordTester) Channel() Channel
func (*DiscordTester) CreateChannel ¶
CreateChannel creates Discord channel.
func (*DiscordTester) InitChannels ¶
func (d *DiscordTester) InitChannels(t *testing.T) []func()
func (*DiscordTester) InitUsers ¶
func (d *DiscordTester) InitUsers(t *testing.T)
func (*DiscordTester) InviteBotToChannel ¶
func (d *DiscordTester) InviteBotToChannel(_ *testing.T, _ string)
func (*DiscordTester) MDFormatter ¶ added in v1.5.0
func (d *DiscordTester) MDFormatter() interactive.MDFormatter
func (*DiscordTester) PostInitialMessage ¶
func (d *DiscordTester) PostInitialMessage(t *testing.T, channelID string)
func (*DiscordTester) PostMessageToBot ¶
func (d *DiscordTester) PostMessageToBot(t *testing.T, channel, command string)
func (*DiscordTester) ReplaceBotNamePlaceholder ¶ added in v1.5.0
func (d *DiscordTester) ReplaceBotNamePlaceholder(msg *interactive.CoreMessage, clusterName string)
func (*DiscordTester) SecondChannel ¶
func (d *DiscordTester) SecondChannel() Channel
func (*DiscordTester) SetTimeout ¶ added in v1.5.0
func (d *DiscordTester) SetTimeout(timeout time.Duration)
func (*DiscordTester) TesterUserID ¶
func (d *DiscordTester) TesterUserID() string
func (*DiscordTester) ThirdChannel ¶
func (d *DiscordTester) ThirdChannel() Channel
func (*DiscordTester) Timeout ¶ added in v1.5.0
func (d *DiscordTester) Timeout() time.Duration
func (*DiscordTester) Type ¶
func (d *DiscordTester) Type() DriverType
func (*DiscordTester) WaitForInteractiveMessagePosted ¶
func (d *DiscordTester) WaitForInteractiveMessagePosted(userID, channelID string, limitMessages int, assertFn MessageAssertion) error
func (*DiscordTester) WaitForInteractiveMessagePostedRecentlyEqual ¶
func (d *DiscordTester) WaitForInteractiveMessagePostedRecentlyEqual(userID, channelID string, msg interactive.CoreMessage) error
func (*DiscordTester) WaitForLastInteractiveMessagePostedEqual ¶
func (d *DiscordTester) WaitForLastInteractiveMessagePostedEqual(userID, channelID string, msg interactive.CoreMessage) error
func (*DiscordTester) WaitForLastInteractiveMessagePostedEqualWithCustomRender ¶ added in v1.5.0
func (d *DiscordTester) WaitForLastInteractiveMessagePostedEqualWithCustomRender(userID, channelID string, renderedMsg string) error
func (*DiscordTester) WaitForLastMessageContains ¶
func (d *DiscordTester) WaitForLastMessageContains(userID, channelID, expectedMsgSubstring string) error
func (*DiscordTester) WaitForLastMessageEqual ¶
func (d *DiscordTester) WaitForLastMessageEqual(userID, channelID, expectedMsg string) error
func (*DiscordTester) WaitForMessagePosted ¶
func (d *DiscordTester) WaitForMessagePosted(userID, channelID string, limitMessages int, assertFn MessageAssertion) error
func (*DiscordTester) WaitForMessagePostedRecentlyEqual ¶
func (d *DiscordTester) WaitForMessagePostedRecentlyEqual(userID, channelID, expectedMsg string) error
func (*DiscordTester) WaitForMessagePostedWithAttachment ¶
func (d *DiscordTester) WaitForMessagePostedWithAttachment(userID, channelID string, limitMessages int, assertFn ExpAttachmentInput) error
func (*DiscordTester) WaitForMessagePostedWithFileUpload ¶
func (d *DiscordTester) WaitForMessagePostedWithFileUpload(userID, channelID string, assertFn FileUploadAssertion) error
type DriverType ¶
type DriverType string
DriverType to instrument
const ( SlackBot DriverType = "cloudSlack" DiscordBot DriverType = "discord" )
type ExpAttachmentInput ¶
type FileUploadAssertion ¶
type MessageAssertion ¶
func AssertContains ¶ added in v1.5.0
func AssertContains(expectedMessage string) MessageAssertion
AssertContains checks if message contains expected message
func AssertEquals ¶ added in v1.5.0
func AssertEquals(expectedMessage string) MessageAssertion
AssertEquals checks if message is equal to expected message
type SlackChannel ¶
func (*SlackChannel) ID ¶
func (s *SlackChannel) ID() string
func (*SlackChannel) Identifier ¶
func (s *SlackChannel) Identifier() string
func (*SlackChannel) Name ¶
func (s *SlackChannel) Name() string
type SlackConfig ¶
type SlackConfig struct {
BotName string `envconfig:"default=botkube"`
CloudBotName string `envconfig:"default=botkubedev"`
CloudBasedTestEnabled bool `envconfig:"default=true"`
TesterName string `envconfig:"default=tester"`
AdditionalContextMessage string `envconfig:"optional"`
TesterAppToken string `envconfig:"optional"`
TesterBotToken string `envconfig:"optional"`
CloudTesterAppToken string `envconfig:"optional"`
CloudTesterName string `envconfig:"default=tester2"`
RecentMessagesLimit int `envconfig:"default=6"`
MessageWaitTimeout time.Duration `envconfig:"default=50s"`
}
func (*SlackConfig) BotUsername ¶ added in v1.5.0
func (s *SlackConfig) BotUsername() string
type SlackMessageAssertion ¶ added in v1.5.0
type SlackTester ¶
type SlackTester struct {
// contains filtered or unexported fields
}
func (*SlackTester) BotName ¶
func (s *SlackTester) BotName() string
func (*SlackTester) BotUserID ¶
func (s *SlackTester) BotUserID() string
func (*SlackTester) Channel ¶
func (s *SlackTester) Channel() Channel
func (*SlackTester) CreateChannel ¶
func (*SlackTester) InitChannels ¶
func (s *SlackTester) InitChannels(t *testing.T) []func()
func (*SlackTester) InitUsers ¶
func (s *SlackTester) InitUsers(t *testing.T)
func (*SlackTester) InviteBotToChannel ¶
func (s *SlackTester) InviteBotToChannel(t *testing.T, channelID string)
func (*SlackTester) MDFormatter ¶ added in v1.5.0
func (s *SlackTester) MDFormatter() interactive.MDFormatter
func (*SlackTester) PostInitialMessage ¶
func (s *SlackTester) PostInitialMessage(t *testing.T, channelName string)
func (*SlackTester) PostMessageToBot ¶
func (s *SlackTester) PostMessageToBot(t *testing.T, channel, command string)
func (*SlackTester) ReplaceBotNamePlaceholder ¶ added in v1.5.0
func (s *SlackTester) ReplaceBotNamePlaceholder(msg *interactive.CoreMessage, clusterName string)
func (*SlackTester) SecondChannel ¶
func (s *SlackTester) SecondChannel() Channel
func (*SlackTester) SetTimeout ¶ added in v1.5.0
func (s *SlackTester) SetTimeout(timeout time.Duration)
func (*SlackTester) TesterUserID ¶
func (s *SlackTester) TesterUserID() string
func (*SlackTester) ThirdChannel ¶
func (s *SlackTester) ThirdChannel() Channel
func (*SlackTester) Timeout ¶ added in v1.5.0
func (s *SlackTester) Timeout() time.Duration
func (*SlackTester) Type ¶
func (s *SlackTester) Type() DriverType
func (*SlackTester) WaitForInteractiveMessagePosted ¶
func (s *SlackTester) WaitForInteractiveMessagePosted(userID, channelID string, limitMessages int, assertFn MessageAssertion) error
func (*SlackTester) WaitForInteractiveMessagePostedRecentlyEqual ¶
func (s *SlackTester) WaitForInteractiveMessagePostedRecentlyEqual(userID, channelID string, msg interactive.CoreMessage) error
func (*SlackTester) WaitForLastInteractiveMessagePostedEqual ¶
func (s *SlackTester) WaitForLastInteractiveMessagePostedEqual(userID, channelID string, msg interactive.CoreMessage) error
func (*SlackTester) WaitForLastInteractiveMessagePostedEqualWithCustomRender ¶ added in v1.5.0
func (s *SlackTester) WaitForLastInteractiveMessagePostedEqualWithCustomRender(userID, channelID string, renderedMsg string) error
func (*SlackTester) WaitForLastMessageContains ¶
func (s *SlackTester) WaitForLastMessageContains(userID, channelID, expectedMsgSubstring string) error
func (*SlackTester) WaitForLastMessageEqual ¶
func (s *SlackTester) WaitForLastMessageEqual(userID, channelID, expectedMsg string) error
func (*SlackTester) WaitForMessagePosted ¶
func (s *SlackTester) WaitForMessagePosted(userID, channelID string, limitMessages int, assertFn MessageAssertion) error
func (*SlackTester) WaitForMessagePostedRecentlyEqual ¶
func (s *SlackTester) WaitForMessagePostedRecentlyEqual(userID, channelID, expectedMsg string) error
func (*SlackTester) WaitForMessagePostedWithAttachment ¶
func (s *SlackTester) WaitForMessagePostedWithAttachment(userID, channelID string, limitMessages int, assertFn ExpAttachmentInput) error
func (*SlackTester) WaitForMessagePostedWithFileUpload ¶
func (s *SlackTester) WaitForMessagePostedWithFileUpload(userID, channelID string, assertFn FileUploadAssertion) error
Click to show internal directories.
Click to hide internal directories.