1package discordgo 2 3import ( 4 "testing" 5) 6 7func TestContentWithMoreMentionsReplaced(t *testing.T) { 8 s := &Session{StateEnabled: true, State: NewState()} 9 10 user := &User{ 11 ID: "user", 12 Username: "User Name", 13 } 14 15 s.State.GuildAdd(&Guild{ID: "guild"}) 16 s.State.RoleAdd("guild", &Role{ 17 ID: "role", 18 Name: "Role Name", 19 Mentionable: true, 20 }) 21 s.State.MemberAdd(&Member{ 22 User: user, 23 Nick: "User Nick", 24 GuildID: "guild", 25 }) 26 s.State.ChannelAdd(&Channel{ 27 Name: "Channel Name", 28 GuildID: "guild", 29 ID: "channel", 30 }) 31 m := &Message{ 32 Content: "<@&role> <@!user> <@user> <#channel>", 33 ChannelID: "channel", 34 MentionRoles: []string{"role"}, 35 Mentions: []*User{user}, 36 } 37 if result, _ := m.ContentWithMoreMentionsReplaced(s); result != "@Role Name @User Nick @User Name #Channel Name" { 38 t.Error(result) 39 } 40} 41