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/user_test.go

226 lines
5.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 (
"fmt"
"github.com/openimsdk/protocol/user"
"github.com/openimsdk/protocol/wrapperspb"
"testing"
"time"
"github.com/openimsdk/openim-sdk-core/v3/open_im_sdk"
"github.com/openimsdk/protocol/sdkws"
)
func Test_GetSelfUserInfo(t *testing.T) {
userInfo, err := open_im_sdk.UserForSDK.User().GetSelfUserInfo(ctx)
if err != nil {
t.Error(err)
}
t.Log(userInfo)
}
func Test_GetUsersInfo(t *testing.T) {
userInfo, err := open_im_sdk.UserForSDK.Full().GetUsersInfo(ctx, []string{"friendUserID"})
if err != nil {
t.Error(err)
}
if userInfo[0].BlackInfo != nil {
t.Log(userInfo[0].BlackInfo)
}
if userInfo[0].FriendInfo != nil {
t.Log(userInfo[0].FriendInfo)
}
if userInfo[0].PublicInfo != nil {
t.Log(userInfo[0].PublicInfo)
}
}
func Test_GetUsersInfoWithCache(t *testing.T) {
userInfo, err := open_im_sdk.UserForSDK.Full().GetUsersInfoWithCache(ctx, []string{"1"}, "")
if err != nil {
t.Error(err)
}
if userInfo[0].BlackInfo != nil {
t.Log(userInfo[0].BlackInfo)
}
if userInfo[0].FriendInfo != nil {
t.Log(userInfo[0].FriendInfo)
}
if userInfo[0].PublicInfo != nil {
t.Log(userInfo[0].PublicInfo)
}
}
func Test_SetSelfInfo(t *testing.T) {
newNickName := "test"
//newFaceURL := "http://test.com"
err := open_im_sdk.UserForSDK.User().SetSelfInfo(ctx, &sdkws.UserInfo{
Nickname: newNickName,
//FaceURL: newFaceURL,
})
newFaceURL := "http://test.com"
if err != nil {
t.Error(err)
}
userInfo, err := open_im_sdk.UserForSDK.User().GetSelfUserInfo(ctx)
if err != nil {
t.Error(err)
}
if userInfo.UserID != UserID && userInfo.Nickname != newNickName && userInfo.FaceURL != newFaceURL {
t.Error("user id not match")
}
t.Log(userInfo)
time.Sleep(time.Second * 10)
}
func Test_SetSelfInfoEx(t *testing.T) {
newNickName := "test"
//newFaceURL := "http://test.com"
err := open_im_sdk.UserForSDK.User().SetSelfInfoEx(ctx, &sdkws.UserInfoWithEx{
Nickname: &wrapperspb.StringValue{
Value: newNickName,
},
//FaceURL: newFaceURL,
Ex: &wrapperspb.StringValue{
Value: "ASD",
},
})
newFaceURL := "http://test.com"
if err != nil {
t.Error(err)
}
userInfo, err := open_im_sdk.UserForSDK.User().GetSelfUserInfo(ctx)
if err != nil {
t.Error(err)
}
if userInfo.UserID != UserID && userInfo.Nickname != newNickName && userInfo.FaceURL != newFaceURL {
t.Error("user id not match")
}
t.Log(userInfo)
time.Sleep(time.Second * 10)
}
func Test_UpdateMsgSenderInfo(t *testing.T) {
err := open_im_sdk.UserForSDK.User().UpdateMsgSenderInfo(ctx, "test", "http://test.com")
if err != nil {
t.Error(err)
}
userInfo, err := open_im_sdk.UserForSDK.User().GetSelfUserInfo(ctx)
if err != nil {
t.Error(err)
}
t.Log(userInfo)
}
func Test_SetSetGlobalRecvMessageOpt(t *testing.T) {
err := open_im_sdk.UserForSDK.User().SetGlobalRecvMessageOpt(ctx, 1)
if err != nil {
t.Fatal(err)
}
}
func Test_Sub(t *testing.T) {
var users []string
users = append(users, "2926672950")
status, err := open_im_sdk.UserForSDK.User().SubscribeUsersStatus(ctx, users)
if err != nil {
t.Error(err)
}
t.Log(status)
for i := 0; i < 20; i++ {
status, err = open_im_sdk.UserForSDK.User().SubscribeUsersStatus(ctx, users)
t.Log(status)
time.Sleep(time.Second * 3)
}
}
func Test_GetSubscribeUsersStatus(t *testing.T) {
status, err := open_im_sdk.UserForSDK.User().GetSubscribeUsersStatus(ctx)
if err != nil {
return
}
t.Log(status)
}
func Test_GetUserStatus(t *testing.T) {
var UserIDs []string
UserIDs = append(UserIDs, "2926672950")
status, err := open_im_sdk.UserForSDK.User().GetUserStatus(ctx, UserIDs)
if err != nil {
return
}
t.Log(status)
}
func Test_UnSub(t *testing.T) {
var users []string
users = append(users, "2926672950")
err := open_im_sdk.UserForSDK.User().UnsubscribeUsersStatus(ctx, users)
if err != nil {
t.Error(err)
}
}
func Test_UserCommandAdd(t *testing.T) {
// Creating a request with a pointer
req := &user.ProcessUserCommandAddReq{
UserID: "3",
Type: 8,
Uuid: "1",
Value: &wrapperspb.StringValue{
Value: "ASD",
},
Ex: &wrapperspb.StringValue{
Value: "ASD",
},
}
// Passing the pointer to the function
err := open_im_sdk.UserForSDK.User().ProcessUserCommandAdd(ctx, req)
if err != nil {
// Handle the error
t.Errorf("Failed to add favorite: %v", err)
}
}
func Test_UserCommandGet(t *testing.T) {
// Creating a request with a pointer
// Passing the pointer to the function
result, err := open_im_sdk.UserForSDK.User().ProcessUserCommandGetAll(ctx)
if err != nil {
// Handle the error
t.Errorf("Failed to add favorite: %v", err)
}
fmt.Printf("%v\n", result)
}
func Test_UserCommandDelete(t *testing.T) {
// Creating a request with a pointer
req := &user.ProcessUserCommandDeleteReq{
UserID: "3",
Type: 8,
Uuid: "1",
}
// Passing the pointer to the function
err := open_im_sdk.UserForSDK.User().ProcessUserCommandDelete(ctx, req)
if err != nil {
// Handle the error
t.Errorf("Failed to add favorite: %v", err)
}
}