diff options
Diffstat (limited to 'api/telegram')
| -rw-r--r-- | api/telegram/bot/message.go | 1 | ||||
| -rw-r--r-- | api/telegram/bot/message_test.go | 13 |
2 files changed, 13 insertions, 1 deletions
diff --git a/api/telegram/bot/message.go b/api/telegram/bot/message.go index 69e406d7..85502d6e 100644 --- a/api/telegram/bot/message.go +++ b/api/telegram/bot/message.go @@ -187,6 +187,7 @@ func (msg *Message) parseCommandArgs() bool { end := start + cmdEntity.Length msg.Command = strings.TrimPrefix(msg.Text[start:end], "/") + msg.Command = strings.Split(msg.Command, "@")[0] msg.CommandArgs = strings.TrimSpace(msg.Text[end:]) return true diff --git a/api/telegram/bot/message_test.go b/api/telegram/bot/message_test.go index ee0dceb8..07310faa 100644 --- a/api/telegram/bot/message_test.go +++ b/api/telegram/bot/message_test.go @@ -36,12 +36,23 @@ func TestMessage_parseCommandArgs(t *testing.T) { }, expCommand: "definisi", expArgs: "analisis", + }, { + msg: Message{ + Text: "/definisi@KamuskuBot analisis", + Entities: []MessageEntity{{ + Type: EntityTypeBotCommand, + Offset: 0, + Length: 20, + }}, + }, + expCommand: "definisi", + expArgs: "analisis", }} for _, c := range cases { c.msg.parseCommandArgs() test.Assert(t, "Command", c.expCommand, c.msg.Command, true) - test.Assert(t, "Command", c.expArgs, c.msg.CommandArgs, true) + test.Assert(t, "CommandArgs", c.expArgs, c.msg.CommandArgs, true) } } |
