From 5ace856e72b23920d9448d4eb11e0bc4ccbf11f0 Mon Sep 17 00:00:00 2001 From: David Lu Date: Thu, 19 May 2016 07:35:12 -0400 Subject: Added /shortcuts (#3048) Added message and tests Remember that lower vs uppercase matters Accidentally removed \n Added more Formatted --- api/command_shortcuts.go | 37 +++++++++++++++++++++++++++++++++++++ api/command_shortcuts_test.go | 21 +++++++++++++++++++++ 2 files changed, 58 insertions(+) create mode 100644 api/command_shortcuts.go create mode 100644 api/command_shortcuts_test.go (limited to 'api') diff --git a/api/command_shortcuts.go b/api/command_shortcuts.go new file mode 100644 index 000000000..77f9f4441 --- /dev/null +++ b/api/command_shortcuts.go @@ -0,0 +1,37 @@ +// Copyright (c) 2016 Mattermost, Inc. All Rights Reserved. +// See License.txt for license information. + +package api + +import ( + "github.com/mattermost/platform/model" +) + +type ShortcutsProvider struct { +} + +const ( + CMD_SHORTCUTS = "shortcuts" +) + +func init() { + RegisterCommandProvider(&ShortcutsProvider{}) +} + +func (me *ShortcutsProvider) GetTrigger() string { + return CMD_SHORTCUTS +} + +func (me *ShortcutsProvider) GetCommand(c *Context) *model.Command { + return &model.Command{ + Trigger: CMD_SHORTCUTS, + AutoComplete: true, + AutoCompleteDesc: c.T("api.command_shortcuts.desc"), + AutoCompleteHint: "", + DisplayName: c.T("api.command_shortcuts.name"), + } +} + +func (me *ShortcutsProvider) DoCommand(c *Context, channelId string, message string) *model.CommandResponse { + return &model.CommandResponse{ResponseType: model.COMMAND_RESPONSE_TYPE_EPHEMERAL, Text: c.T("api.command_shortcuts.list")} +} diff --git a/api/command_shortcuts_test.go b/api/command_shortcuts_test.go new file mode 100644 index 000000000..a00bd3440 --- /dev/null +++ b/api/command_shortcuts_test.go @@ -0,0 +1,21 @@ +// Copyright (c) 2016 Mattermost, Inc. All Rights Reserved. +// See License.txt for license information. + +package api + +import ( + "github.com/mattermost/platform/model" + "strings" + "testing" +) + +func TestShortcutsCommand(t *testing.T) { + th := Setup().InitBasic() + Client := th.BasicClient + channel := th.BasicChannel + + rs := Client.Must(Client.Command(channel.Id, "/shortcuts ", false)).Data.(*model.CommandResponse) + if !strings.Contains(rs.Text, "ALT") { + t.Fatal("failed to display shortcuts") + } +} -- cgit v1.2.3-1-g7c22