SYMBOL INDEX (121 symbols across 34 files) FILE: cmd/dingtalk/actionCard.go function runActionCardCmd (line 18) | func runActionCardCmd(_ *cobra.Command, args []string) { function init (line 89) | func init() { FILE: cmd/dingtalk/actionCard_test.go function Test_runActionCardCmd (line 16) | func Test_runActionCardCmd(t *testing.T) { FILE: cmd/dingtalk/feedCard.go function runFeedCardCmd (line 18) | func runFeedCardCmd(_ *cobra.Command, args []string) { type FeedCardVars (line 49) | type FeedCardVars struct function init (line 57) | func init() { FILE: cmd/dingtalk/feedCard_test.go function Test_runFeedCardCmd (line 16) | func Test_runFeedCardCmd(t *testing.T) { FILE: cmd/dingtalk/link.go function runLinkCmd (line 18) | func runLinkCmd(_ *cobra.Command, args []string) { type LinkVars (line 52) | type LinkVars struct function init (line 61) | func init() { FILE: cmd/dingtalk/link_test.go function Test_runLinkCmd (line 16) | func Test_runLinkCmd(t *testing.T) { FILE: cmd/dingtalk/markdown.go function runMarkdownCmd (line 18) | func runMarkdownCmd(_ *cobra.Command, args []string) { type MarkdownVars (line 48) | type MarkdownVars struct function init (line 55) | func init() { FILE: cmd/dingtalk/markdown_test.go function Test_runMarkdownCmd (line 16) | func Test_runMarkdownCmd(t *testing.T) { FILE: cmd/dingtalk/root.go function Execute (line 24) | func Execute() { function newClient (line 31) | func newClient() (*dingtalk.Client, error) { function getAccessToken (line 42) | func getAccessToken() string { function getSecret (line 54) | func getSecret() string { function init (line 71) | func init() { FILE: cmd/dingtalk/root_test.go function Test_newClient (line 13) | func Test_newClient(t *testing.T) { function Test_getAccessToken (line 37) | func Test_getAccessToken(t *testing.T) { function Test_getSecret (line 76) | func Test_getSecret(t *testing.T) { FILE: cmd/dingtalk/text.go function runTextCmd (line 18) | func runTextCmd(_ *cobra.Command, _ []string) { type TextVars (line 43) | type TextVars struct function init (line 49) | func init() { FILE: cmd/dingtalk/text_test.go function Test_runTextCmd (line 16) | func Test_runTextCmd(t *testing.T) { FILE: cmd/dingtalk/version.go constant version (line 11) | version = "1.5.0" constant buildTime (line 12) | buildTime = "2022/04/20" function runVersionCmd (line 23) | func runVersionCmd(_ *cobra.Command, _ []string) { function init (line 28) | func init() { FILE: cmd/dingtalk/version_test.go function Test_runVersionCmd (line 15) | func Test_runVersionCmd(t *testing.T) { FILE: configs/app.go constant AccessToken (line 5) | AccessToken string = "access_token" constant Secret (line 7) | Secret string = "secret" FILE: configs/configs.go function InitConfig (line 14) | func InitConfig() { function GetConfig (line 38) | func GetConfig(key string) (string, error) { FILE: configs/configs_test.go function TestInitConfig (line 12) | func TestInitConfig(t *testing.T) { function shouldPanic (line 45) | func shouldPanic(t *testing.T, f func()) { function TestGetConfig (line 54) | func TestGetConfig(t *testing.T) { FILE: internal/security/security.go constant dingTalkOAPI (line 16) | dingTalkOAPI = "oapi.dingtalk.com" function URL (line 27) | func URL(accessToken string, secret string) (string, error) { function URLWithTimestamp (line 33) | func URLWithTimestamp(timestamp string, accessToken string, secret strin... function Validate (line 57) | func Validate(signStr, timestamp, secret string) (bool, error) { function sign (line 75) | func sign(timestamp string, secret string) (string, error) { FILE: internal/security/security_test.go constant timestamp (line 13) | timestamp = "1582163555000" constant accessToken (line 14) | accessToken = "1c53e149ba5de6597ca2442f0e901fd86156780b8ac141e4a75afdc44... constant secret (line 15) | secret = "SECb90923e19e58b466481e9e7b7a5b4f108a4531abde590ad3967fb2... constant signed (line 16) | signed = "BQKsG%2BQOCl%2BbYJOLc6pxDHxjVquzlZPWgvRzeN2J5zY%3D" function TestURL (line 19) | func TestURL(t *testing.T) { function TestURLWithTimestamp (line 37) | func TestURLWithTimestamp(t *testing.T) { function TestValidate (line 80) | func TestValidate(t *testing.T) { FILE: main.go function main (line 10) | func main() { FILE: pkg/dingtalk/actionCard.go type ActionCardMessage (line 6) | type ActionCardMessage struct method ToByte (line 29) | func (m *ActionCardMessage) ToByte() ([]byte, error) { method SetOverallJump (line 42) | func (m *ActionCardMessage) SetOverallJump( method SetIndependentJump (line 61) | func (m *ActionCardMessage) SetIndependentJump( type ActionCard (line 12) | type ActionCard struct type Btn (line 23) | type Btn struct function NewActionCardMessage (line 36) | func NewActionCardMessage() *ActionCardMessage { FILE: pkg/dingtalk/actionCard_test.go function TestActionCardMessage_ToByte (line 8) | func TestActionCardMessage_ToByte(t *testing.T) { function TestNewActionCardMessage (line 16) | func TestNewActionCardMessage(t *testing.T) { function TestActionCardMessage_SetOverallJump (line 35) | func TestActionCardMessage_SetOverallJump(t *testing.T) { function TestActionCardMessage_SetIndependentJump (line 55) | func TestActionCardMessage_SetIndependentJump(t *testing.T) { FILE: pkg/dingtalk/client.go type Client (line 15) | type Client struct method Send (line 37) | func (d *Client) Send(message Message) (string, *Response, error) { function NewClient (line 21) | func NewClient(accessToken, secret string) *Client { type Response (line 29) | type Response struct constant httpTimoutSecond (line 34) | httpTimoutSecond = time.Duration(30) * time.Second FILE: pkg/dingtalk/client_test.go function TestNewClient (line 17) | func TestNewClient(t *testing.T) { function TestClient_Send (line 48) | func TestClient_Send(t *testing.T) { FILE: pkg/dingtalk/feedCard.go type FeedCardMessage (line 6) | type FeedCardMessage struct method ToByte (line 24) | func (m *FeedCardMessage) ToByte() ([]byte, error) { method AppendLink (line 37) | func (m *FeedCardMessage) AppendLink( type FeedCard (line 12) | type FeedCard struct type FeedCardLink (line 17) | type FeedCardLink struct function NewFeedCardMessage (line 31) | func NewFeedCardMessage() *FeedCardMessage { FILE: pkg/dingtalk/feedCard_test.go function TestFeedCardMessage_ToByte (line 8) | func TestFeedCardMessage_ToByte(t *testing.T) { function TestNewFeedCardMessage (line 16) | func TestNewFeedCardMessage(t *testing.T) { function TestFeedCardMessage_AppendLink (line 35) | func TestFeedCardMessage_AppendLink(t *testing.T) { FILE: pkg/dingtalk/link.go type LinkMessage (line 6) | type LinkMessage struct method ToByte (line 20) | func (m *LinkMessage) ToByte() ([]byte, error) { method SetLink (line 33) | func (m *LinkMessage) SetLink( type Link (line 12) | type Link struct function NewLinkMessage (line 27) | func NewLinkMessage() *LinkMessage { FILE: pkg/dingtalk/link_test.go function TestLinkMessage_ToByte (line 8) | func TestLinkMessage_ToByte(t *testing.T) { function TestNewLinkMessage (line 16) | func TestNewLinkMessage(t *testing.T) { function TestLinkMessage_SetLink (line 35) | func TestLinkMessage_SetLink(t *testing.T) { FILE: pkg/dingtalk/markdown.go type MarkdownMessage (line 6) | type MarkdownMessage struct method ToByte (line 19) | func (m *MarkdownMessage) ToByte() ([]byte, error) { method SetMarkdown (line 32) | func (m *MarkdownMessage) SetMarkdown(title string, text string) *Mark... method SetAt (line 41) | func (m *MarkdownMessage) SetAt(atMobiles []string, isAtAll bool) *Mar... type Markdown (line 13) | type Markdown struct function NewMarkdownMessage (line 26) | func NewMarkdownMessage() *MarkdownMessage { FILE: pkg/dingtalk/markdown_test.go function TestMarkdownMessage_ToByte (line 8) | func TestMarkdownMessage_ToByte(t *testing.T) { function TestNewMarkdownMessage (line 16) | func TestNewMarkdownMessage(t *testing.T) { function TestMarkdownMessage_SetMarkdown (line 35) | func TestMarkdownMessage_SetMarkdown(t *testing.T) { function TestMarkdownMessage_SetAt (line 50) | func TestMarkdownMessage_SetAt(t *testing.T) { FILE: pkg/dingtalk/message.go type MsgType (line 4) | type MsgType constant MsgTypeText (line 8) | MsgTypeText MsgType = "text" constant MsgTypeMarkdown (line 10) | MsgTypeMarkdown MsgType = "markdown" constant MsgTypeLink (line 12) | MsgTypeLink MsgType = "link" constant MsgTypeActionCard (line 14) | MsgTypeActionCard MsgType = "actionCard" constant MsgTypeFeedCard (line 16) | MsgTypeFeedCard MsgType = "feedCard" type Message (line 20) | type Message interface type At (line 25) | type At struct FILE: pkg/dingtalk/text.go type TextMessage (line 6) | type TextMessage struct method ToByte (line 18) | func (m *TextMessage) ToByte() ([]byte, error) { method SetContent (line 31) | func (m *TextMessage) SetContent(content string) *TextMessage { method SetAt (line 39) | func (m *TextMessage) SetAt(atMobiles []string, isAtAll bool) *TextMes... type Text (line 13) | type Text struct function NewTextMessage (line 25) | func NewTextMessage() *TextMessage { FILE: pkg/dingtalk/text_test.go function TestTextMessage_ToByte (line 8) | func TestTextMessage_ToByte(t *testing.T) { function TestNewTextMessage (line 16) | func TestNewTextMessage(t *testing.T) { function TestTextMessage_SetContent (line 35) | func TestTextMessage_SetContent(t *testing.T) { function TestTextMessage_SetAt (line 49) | func TestTextMessage_SetAt(t *testing.T) { FILE: test/mocks/message/message.go type MockMessage (line 14) | type MockMessage struct method EXPECT (line 32) | func (m *MockMessage) EXPECT() *MockMessageMockRecorder { method ToByte (line 37) | func (m *MockMessage) ToByte() ([]byte, error) { type MockMessageMockRecorder (line 20) | type MockMessageMockRecorder struct method ToByte (line 46) | func (mr *MockMessageMockRecorder) ToByte() *gomock.Call { function NewMockMessage (line 25) | func NewMockMessage(ctrl *gomock.Controller) *MockMessage {