Skip to content

Commit b111623

Browse files
authored
add missing properties to message request (#318)
1 parent 0135863 commit b111623

File tree

2 files changed

+27
-0
lines changed

2 files changed

+27
-0
lines changed

message.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,13 +93,16 @@ func (m *Message) toRequest() messageRequest {
9393
var req messageRequest
9494

9595
req.Message = messageRequestMessage{
96+
ID: m.ID,
9697
Text: m.Text,
9798
Type: m.Type,
9899
Attachments: m.Attachments,
99100
UserID: m.UserID,
100101
ExtraData: m.ExtraData,
102+
HTML: m.HTML,
101103
Pinned: m.Pinned,
102104
ParentID: m.ParentID,
105+
MML: m.MML,
103106
ShowInChannel: m.ShowInChannel,
104107
Silent: m.Silent,
105108
QuotedMessageID: m.QuotedMessageID,
@@ -128,14 +131,17 @@ type messageRequest struct {
128131

129132
type messageRequestMessage struct {
130133
Text string `json:"text"`
134+
ID string `json:"id,omitempty"`
131135
Type MessageType `json:"type" validate:"omitempty,oneof=system"`
132136
Attachments []*Attachment `json:"attachments"`
133137
UserID string `json:"user_id"`
134138
MentionedUsers []string `json:"mentioned_users"`
139+
MML string `json:"mml,omitempty"`
135140
ParentID string `json:"parent_id"`
136141
ShowInChannel bool `json:"show_in_channel"`
137142
Silent bool `json:"silent"`
138143
QuotedMessageID string `json:"quoted_message_id"`
144+
HTML string `json:"html,omitempty"`
139145
Pinned bool `json:"pinned,omitempty"`
140146
RestrictedVisibility []string `json:"restricted_visibility"`
141147
ExtraData map[string]interface{} `json:"-"`

message_test.go

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,27 @@ func TestClient_TranslateMessage(t *testing.T) {
2424
require.Equal(t, "mensaje de prueba", translated.Message.I18n["es_text"])
2525
}
2626

27+
func TestClient_SendMessage(t *testing.T) {
28+
c := initClient(t)
29+
user := randomUser(t, c)
30+
31+
ctx := context.Background()
32+
33+
ch := initChannel(t, c, user.ID)
34+
resp1, err := c.CreateChannel(ctx, ch.Type, ch.ID, user.ID, nil)
35+
require.NoError(t, err)
36+
37+
msg := &Message{ID: randomString(10), Text: "test message", MML: "test mml", HTML: "test HTML"}
38+
messageResp, err := resp1.Channel.SendMessage(ctx, msg, user.ID)
39+
require.NoError(t, err)
40+
require.Equal(t, ch.CID, messageResp.Message.CID)
41+
require.Equal(t, user.ID, messageResp.Message.User.ID)
42+
require.Equal(t, msg.ID, messageResp.Message.ID)
43+
require.Equal(t, msg.Text, messageResp.Message.Text)
44+
require.Equal(t, msg.MML, messageResp.Message.MML)
45+
require.Equal(t, msg.HTML, messageResp.Message.HTML)
46+
}
47+
2748
func TestClient_SendMessage_Pending(t *testing.T) {
2849
c := initClient(t)
2950
user := randomUser(t, c)

0 commit comments

Comments
 (0)