summaryrefslogtreecommitdiffstats
path: root/app/post_test.go
diff options
context:
space:
mode:
authorChris <ccbrown112@gmail.com>2017-11-28 15:02:56 -0600
committerChristopher Speller <crspeller@gmail.com>2017-11-28 13:02:56 -0800
commitb87fae646a624507f5b2c1270cae1d3585f589ac (patch)
treed81b683cda11b08ed04d7e2431b04a84a715d851 /app/post_test.go
parent27ba68a7894d5204b8d75dc7353774977d62fa15 (diff)
downloadchat-b87fae646a624507f5b2c1270cae1d3585f589ac.tar.gz
chat-b87fae646a624507f5b2c1270cae1d3585f589ac.tar.bz2
chat-b87fae646a624507f5b2c1270cae1d3585f589ac.zip
PLT-5458: If someone posts a channel link to channel_A that you don't belong to, it doesn't render properly (#7833)
* add channel link hints to post props * optimization * update regex, add unit test * fix rebase issue
Diffstat (limited to 'app/post_test.go')
-rw-r--r--app/post_test.go38
1 files changed, 38 insertions, 0 deletions
diff --git a/app/post_test.go b/app/post_test.go
index e2e9a7261..3b7e8d039 100644
--- a/app/post_test.go
+++ b/app/post_test.go
@@ -138,3 +138,41 @@ func TestPostAction(t *testing.T) {
err = th.App.DoPostAction(post.Id, attachments[0].Actions[0].Id, th.BasicUser.Id)
require.Nil(t, err)
}
+
+func TestPostChannelMentions(t *testing.T) {
+ th := Setup().InitBasic()
+ defer th.TearDown()
+
+ channel := th.BasicChannel
+ user := th.BasicUser
+
+ channelToMention, err := th.App.CreateChannel(&model.Channel{
+ DisplayName: "Mention Test",
+ Name: "mention-test",
+ Type: model.CHANNEL_OPEN,
+ TeamId: th.BasicTeam.Id,
+ }, false)
+ if err != nil {
+ t.Fatal(err.Error())
+ }
+ defer th.App.PermanentDeleteChannel(channelToMention)
+
+ _, err = th.App.AddUserToChannel(user, channel)
+ require.Nil(t, err)
+
+ post := &model.Post{
+ Message: fmt.Sprintf("hello, ~%v!", channelToMention.Name),
+ ChannelId: channel.Id,
+ PendingPostId: model.NewId() + ":" + fmt.Sprint(model.GetMillis()),
+ UserId: user.Id,
+ CreateAt: 0,
+ }
+
+ result, err := th.App.CreatePostAsUser(post)
+ require.Nil(t, err)
+ assert.Equal(t, map[string]interface{}{
+ "mention-test": map[string]interface{}{
+ "display_name": "Mention Test",
+ },
+ }, result.Props["channel_mentions"])
+}