You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
openim-sdk-cpp/go/chao-sdk-core/testv2/conversation_test.go

298 lines
8.5 KiB

// Copyright © 2023 OpenIM SDK. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package testv2
import (
"context"
"github.com/openimsdk/openim-sdk-core/v3/open_im_sdk"
"github.com/openimsdk/openim-sdk-core/v3/pkg/sdk_params_callback"
"github.com/openimsdk/openim-sdk-core/v3/sdk_struct"
"testing"
)
func Test_GetAllConversationList(t *testing.T) {
conversations, err := open_im_sdk.UserForSDK.Conversation().GetAllConversationList(ctx)
if err != nil {
t.Fatal(err)
}
for _, conversation := range conversations {
t.Log(conversation)
}
}
func Test_GetConversationListSplit(t *testing.T) {
conversations, err := open_im_sdk.UserForSDK.Conversation().GetConversationListSplit(ctx, 0, 20)
if err != nil {
t.Fatal(err)
}
for _, conversation := range conversations {
t.Log(conversation)
}
}
//func Test_SetConversationRecvMessageOpt(t *testing.T) {
// err := open_im_sdk.UserForSDK.Conversation().SetConversationRecvMessageOpt(ctx, []string{"asdasd"}, 1)
// if err != nil {
// t.Fatal(err)
// }
//}
func Test_HideConversation(t *testing.T) {
err := open_im_sdk.UserForSDK.Conversation().HideConversation(ctx, "asdasd")
if err != nil {
t.Fatal(err)
}
}
func Test_GetConversationRecvMessageOpt(t *testing.T) {
opts, err := open_im_sdk.UserForSDK.Conversation().GetConversationRecvMessageOpt(ctx, []string{"asdasd"})
if err != nil {
t.Fatal(err)
}
for _, v := range opts {
t.Log(v.ConversationID, *v.Result)
}
}
func Test_GetGlobalRecvMessageOpt(t *testing.T) {
opt, err := open_im_sdk.UserForSDK.Conversation().GetOneConversation(ctx, 2, "1772958501")
if err != nil {
t.Fatal(err)
}
t.Log(*opt)
}
func Test_GetGetMultipleConversation(t *testing.T) {
conversations, err := open_im_sdk.UserForSDK.Conversation().GetMultipleConversation(ctx, []string{"asdasd"})
if err != nil {
t.Fatal(err)
}
for _, v := range conversations {
t.Log(v)
}
}
// funcation Test_DeleteConversation(t *testing.T) {
// err := open_im_sdk.UserForSDK.Conversation().DeleteConversation(ctx, "group_17729585012")
// if err != nil {
// if !strings.Contains(err.Error(), "no update") {
// t.Fatal(err)
// }
// }
// }
func Test_SetConversationDraft(t *testing.T) {
err := open_im_sdk.UserForSDK.Conversation().SetConversationDraft(ctx, "group_17729585012", "draft")
if err != nil {
t.Fatal(err)
}
}
func Test_ResetConversationGroupAtType(t *testing.T) {
err := open_im_sdk.UserForSDK.Conversation().ResetConversationGroupAtType(ctx, "group_17729585012")
if err != nil {
t.Fatal(err)
}
}
func Test_PinConversation(t *testing.T) {
err := open_im_sdk.UserForSDK.Conversation().PinConversation(ctx, "group_17729585012", true)
if err != nil {
t.Fatal(err)
}
}
func Test_SetOneConversationPrivateChat(t *testing.T) {
err := open_im_sdk.UserForSDK.Conversation().SetOneConversationPrivateChat(ctx, "single_3411008330", true)
if err != nil {
t.Fatal(err)
}
}
func Test_SetOneConversationBurnDuration(t *testing.T) {
err := open_im_sdk.UserForSDK.Conversation().SetOneConversationBurnDuration(ctx, "single_3411008330", 10)
if err != nil {
t.Fatal(err)
}
}
func Test_SetOneConversationRecvMessageOpt(t *testing.T) {
err := open_im_sdk.UserForSDK.Conversation().SetOneConversationRecvMessageOpt(ctx, "single_3411008330", 1)
if err != nil {
t.Fatal(err)
}
}
func Test_GetTotalUnreadMsgCount(t *testing.T) {
count, err := open_im_sdk.UserForSDK.Conversation().GetTotalUnreadMsgCount(ctx)
if err != nil {
t.Fatal(err)
}
t.Log(count)
}
func Test_SendMessage(t *testing.T) {
ctx = context.WithValue(ctx, "callback", TestSendMsg{})
msg, _ := open_im_sdk.UserForSDK.Conversation().CreateTextMessage(ctx, "textMsg")
_, err := open_im_sdk.UserForSDK.Conversation().SendMessage(ctx, msg, "3411008330", "", nil, false)
if err != nil {
t.Fatal(err)
}
}
func Test_SendMessageNotOss(t *testing.T) {
ctx = context.WithValue(ctx, "callback", TestSendMsg{})
msg, _ := open_im_sdk.UserForSDK.Conversation().CreateTextMessage(ctx, "textMsg")
_, err := open_im_sdk.UserForSDK.Conversation().SendMessageNotOss(ctx, msg, "3411008330", "", nil, false)
if err != nil {
t.Fatal(err)
}
}
func Test_FindMessageList(t *testing.T) {
msgs, err := open_im_sdk.UserForSDK.Conversation().FindMessageList(ctx, []*sdk_params_callback.ConversationArgs{})
if err != nil {
t.Fatal(err)
}
t.Log(msgs.TotalCount)
for _, v := range msgs.FindResultItems {
t.Log(v)
}
}
func Test_GetAdvancedHistoryMessageList(t *testing.T) {
msgs, err := open_im_sdk.UserForSDK.Conversation().GetAdvancedHistoryMessageList(ctx, sdk_params_callback.GetAdvancedHistoryMessageListParams{})
if err != nil {
t.Fatal(err)
}
for _, v := range msgs.MessageList {
t.Log(v)
}
}
func Test_GetAdvancedHistoryMessageListReverse(t *testing.T) {
msgs, err := open_im_sdk.UserForSDK.Conversation().GetAdvancedHistoryMessageListReverse(ctx, sdk_params_callback.GetAdvancedHistoryMessageListParams{})
if err != nil {
t.Fatal(err)
}
for _, v := range msgs.MessageList {
t.Log(v)
}
}
func Test_InsertSingleMessageToLocalStorage(t *testing.T) {
_, err := open_im_sdk.UserForSDK.Conversation().InsertSingleMessageToLocalStorage(ctx, &sdk_struct.MsgStruct{}, "3411008330", "")
if err != nil {
t.Fatal(err)
}
}
func Test_InsertGroupMessageToLocalStorage(t *testing.T) {
_, err := open_im_sdk.UserForSDK.Conversation().InsertGroupMessageToLocalStorage(ctx, &sdk_struct.MsgStruct{}, "group_17729585012", "")
if err != nil {
t.Fatal(err)
}
}
func Test_SearchLocalMessages(t *testing.T) {
msgs, err := open_im_sdk.UserForSDK.Conversation().SearchLocalMessages(ctx, &sdk_params_callback.SearchLocalMessagesParams{})
if err != nil {
t.Fatal(err)
}
for _, v := range msgs.SearchResultItems {
t.Log(v)
}
}
func Test_SetMessageLocalEx(t *testing.T) {
err := open_im_sdk.UserForSDK.Conversation().SetMessageLocalEx(ctx, "si_2975755104_6386894923", "53ca4b3be29f7ea231a5e82e7af8a43f", "{key,value}")
if err != nil {
t.Fatal(err)
}
}
func Test_DeleteAllMsgFromLocalAndSvr(t *testing.T) {
err := open_im_sdk.UserForSDK.Conversation().DeleteAllMsgFromLocalAndSvr(ctx)
if err != nil {
t.Fatal(err)
}
}
func Test_DeleteAllMessageFromLocalStorage(t *testing.T) {
err := open_im_sdk.UserForSDK.Conversation().DeleteAllMessageFromLocalStorage(ctx)
if err != nil {
t.Fatal(err)
}
}
func Test_ClearConversationAndDeleteAllMsg(t *testing.T) {
err := open_im_sdk.UserForSDK.Conversation().ClearConversationAndDeleteAllMsg(ctx, "si_3271407977_7152307910")
if err != nil {
t.Fatal(err)
}
}
// func Test_RevokeMessage(t *testing.T) {
// err := open_im_sdk.UserForSDK.Conversation().RevokeMessage(ctx, &sdk_struct.MsgStruct{SessionType: 1, ContentType: 101,
// ClientMsgID: "380e2eb1709875340d769880982ebb21", Seq: 57, SendID: "9169012630", RecvID: "2456093263"})
// if err != nil {
// t.Fatal(err)
// }
// time.Sleep(time.Second * 10)
// }
func Test_MarkConversationMessageAsRead(t *testing.T) {
err := open_im_sdk.UserForSDK.Conversation().MarkConversationMessageAsRead(ctx, "si_2688118337_7249315132")
if err != nil {
t.Fatal(err)
}
}
func Test_MarkMsgsAsRead(t *testing.T) {
err := open_im_sdk.UserForSDK.Conversation().MarkMessagesAsReadByMsgID(ctx, "si_2688118337_7249315132",
[]string{"fb56ed151b675e0837ed3af79dbf66b1",
"635715c539be2e7812a0fc802f0cdc54", "1aba3fae3dc3f61c17e8eb09519cf8e1"})
if err != nil {
t.Fatal(err)
}
}
func Test_SendImgMsg(t *testing.T) {
ctx = context.WithValue(ctx, "callback", TestSendMsg{})
msg, err := open_im_sdk.UserForSDK.Conversation().CreateImageMessage(ctx, "C:\\Users\\Admin\\Desktop\\test.png")
if err != nil {
t.Fatal(err)
}
res, err := open_im_sdk.UserForSDK.Conversation().SendMessage(ctx, msg, "1919501984", "", nil, false)
if err != nil {
t.Fatal(err)
}
t.Logf("send smg => %+v\n", res)
}
func Test_SetConversationEx(t *testing.T) {
err := open_im_sdk.UserForSDK.Conversation().SetOneConversationEx(ctx, "si_1_2", "abc")
if err != nil {
t.Fatal(err)
}
}
func Test_SearchConversation(t *testing.T) {
result, err := open_im_sdk.UserForSDK.Conversation().SearchConversation(ctx, "a")
if err != nil {
t.Fatal(err)
}
for _, v := range result {
t.Log(v)
}
}