Ai_GirlFriend/xunifriend_RaeeC/vendor/maniac/easemob-php/tests/MessageTest.php
2026-01-31 19:15:41 +08:00

203 lines
9.7 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
namespace tests;
class MessageTest extends Base
{
public function __construct()
{
parent::__construct();
}
public function testMessageSendText()
{
$randomFromUsername = Utils::randomUserName();
$randomPassword = Utils::randomPassword();
$randomToUsername = Utils::randomUserName();
$this->assertArrayNotHasKey('code', $this->user->create(array(array('username' => $randomFromUsername, 'password' => $randomPassword), array('username' => $randomToUsername, 'password' => $randomPassword))));
$this->assertArrayNotHasKey('code', $this->message->text('users', array($randomToUsername), array('msg' => 'hello', 'ext' => array('ext1' => 'val1')), $randomFromUsername));
$this->assertTrue($this->user->delete($randomFromUsername));
$this->assertTrue($this->user->delete($randomToUsername));
}
public function testMessageSendImage()
{
$randomFromUsername = Utils::randomUserName();
$randomPassword = Utils::randomPassword();
$randomToUsername = Utils::randomUserName();
$this->assertArrayNotHasKey('code', $this->user->create(array(array('username' => $randomFromUsername, 'password' => $randomPassword), array('username' => $randomToUsername, 'password' => $randomPassword))));
$data = $this->attachment->uploadFile(dirname(__FILE__).'/assets/1.png');
$this->assertArrayHasKey('uuid', $data);
$msg = array(
'filename' => '1.png',
'uuid' => $data['uuid'],
'secret' => $data['share-secret'],
'size' => array(
'width' => 36,
'height' => 36,
),
);
$this->assertArrayNotHasKey('code', $this->message->image('users', array($randomToUsername), $msg, $randomFromUsername));
$this->assertTrue($this->user->delete($randomFromUsername));
$this->assertTrue($this->user->delete($randomToUsername));
}
public function testMessageSendVoice()
{
$randomFromUsername = Utils::randomUserName();
$randomPassword = Utils::randomPassword();
$randomToUsername = Utils::randomUserName();
$this->assertArrayNotHasKey('code', $this->user->create(array(array('username' => $randomFromUsername, 'password' => $randomPassword), array('username' => $randomToUsername, 'password' => $randomPassword))));
$data = $this->attachment->uploadFile(dirname(__FILE__).'/assets/mario.amr');
$this->assertArrayHasKey('uuid', $data);
$msg = array(
'filename' => 'mario.amr',
'uuid' => $data['uuid'],
'secret' => $data['share-secret'],
'length' => 89,
);
$this->assertArrayNotHasKey('code', $this->message->audio('users', array($randomToUsername), $msg, $randomFromUsername));
$this->assertTrue($this->user->delete($randomFromUsername));
$this->assertTrue($this->user->delete($randomToUsername));
}
public function testMessageSendVideo()
{
$randomFromUsername = Utils::randomUserName();
$randomPassword = Utils::randomPassword();
$randomToUsername = Utils::randomUserName();
$this->assertArrayNotHasKey('code', $this->user->create(array(array('username' => $randomFromUsername, 'password' => $randomPassword), array('username' => $randomToUsername, 'password' => $randomPassword))));
$movie = dirname(__FILE__).'/assets/movie.ogg';
$data = $this->attachment->uploadFile($movie);
$this->assertArrayHasKey('uuid', $data);
$thumb = $this->attachment->uploadFile(dirname(__FILE__).'/assets/1.png');
$this->assertArrayHasKey('uuid', $thumb);
$msg = array(
'filename' => 'movie.ogg', // 视频文件名称
'uuid' => $data['uuid'], // 成功上传视频文件返回的UUID
'secret' => $data['share-secret'], // 成功上传视频文件后返回的secret
'thumb_uuid' => $thumb['uuid'], // 成功上传视频缩略图返回的 UUID
'thumb_secret' => $thumb['share-secret'], // 成功上传视频缩略图后返回的secret
'length' => 3, // 视频播放长度
'file_length' => filesize($movie), // 视频文件大小(单位:字节)
);
$this->assertArrayNotHasKey('code', $this->message->video('users', array($randomToUsername), $msg, $randomFromUsername));
$this->assertTrue($this->user->delete($randomFromUsername));
$this->assertTrue($this->user->delete($randomToUsername));
}
public function testMessageSendFile()
{
$randomFromUsername = Utils::randomUserName();
$randomPassword = Utils::randomPassword();
$randomToUsername = Utils::randomUserName();
$this->assertArrayNotHasKey('code', $this->user->create(array(array('username' => $randomFromUsername, 'password' => $randomPassword), array('username' => $randomToUsername, 'password' => $randomPassword))));
$data = $this->attachment->uploadFile(dirname(__FILE__).'/assets/1.txt');
$this->assertArrayHasKey('uuid', $data);
$msg = array(
'filename' => '1.txt', // 文件名称
'uuid' => $data['uuid'], // 成功上传文件返回的UUID
'secret' => $data['share-secret'], // 成功上传文件后返回的secret
);
$this->assertArrayNotHasKey('code', $this->message->file('users', array($randomToUsername), $msg, $randomFromUsername));
$this->assertTrue($this->user->delete($randomFromUsername));
$this->assertTrue($this->user->delete($randomToUsername));
}
public function testMessageSendLocation()
{
$randomFromUsername = Utils::randomUserName();
$randomPassword = Utils::randomPassword();
$randomToUsername = Utils::randomUserName();
$this->assertArrayNotHasKey('code', $this->user->create(array(array('username' => $randomFromUsername, 'password' => $randomPassword), array('username' => $randomToUsername, 'password' => $randomPassword))));
$msg = array(
'lat' => '39.966', // 纬度
'lng' => '116.322', // 经度
'addr' => '中国北京市海淀区中关村', // 地址
);
$this->assertArrayNotHasKey('code', $this->message->location('users', array($randomToUsername), $msg, $randomFromUsername));
$this->assertTrue($this->user->delete($randomFromUsername));
$this->assertTrue($this->user->delete($randomToUsername));
}
public function testMessageSendCommand()
{
$randomFromUsername = Utils::randomUserName();
$randomPassword = Utils::randomPassword();
$randomToUsername = Utils::randomUserName();
$this->assertArrayNotHasKey('code', $this->user->create(array(array('username' => $randomFromUsername, 'password' => $randomPassword), array('username' => $randomToUsername, 'password' => $randomPassword))));
$msg = array(
'event' => 'notification', // 自定义键值
'id' => '123', // 自定义键值
);
$this->assertArrayNotHasKey('code', $this->message->cmd('users', array($randomToUsername), $msg, $randomFromUsername));
$this->assertTrue($this->user->delete($randomFromUsername));
$this->assertTrue($this->user->delete($randomToUsername));
}
public function testMessageSendCustom()
{
$randomFromUsername = Utils::randomUserName();
$randomPassword = Utils::randomPassword();
$randomToUsername = Utils::randomUserName();
$this->assertArrayNotHasKey('code', $this->user->create(array(array('username' => $randomFromUsername, 'password' => $randomPassword), array('username' => $randomToUsername, 'password' => $randomPassword))));
$msg = array(
// 用户自定义的事件类型必须是string值必须满足正则表达式 [a-zA-Z0-9-_/\.]{1,32}最短1个字符 最长32个字符
'customEvent' => 'xxx',
// 用户自定义的事件属性类型必须是Map<String,String>最多可以包含16个元素。customExts 是可选的,不需要可以不传
'customExts' => array(
'asd' => '123',
),
);
$this->assertArrayNotHasKey('code', $this->message->custom('users', array($randomToUsername), $msg, $randomFromUsername));
$this->assertTrue($this->user->delete($randomFromUsername));
$this->assertTrue($this->user->delete($randomToUsername));
}
public function testMessageSendExtension()
{
$randomFromUsername = Utils::randomUserName();
$randomPassword = Utils::randomPassword();
$randomToUsername = Utils::randomUserName();
$this->assertArrayNotHasKey('code', $this->user->create(array(array('username' => $randomFromUsername, 'password' => $randomPassword), array('username' => $randomToUsername, 'password' => $randomPassword))));
$msg = array(
// 用户自定义的事件类型必须是string值必须满足正则表达式 [a-zA-Z0-9-_/\.]{1,32}最短1个字符 最长32个字符
'customEvent' => 'xxx',
// 用户自定义的事件属性类型必须是Map<String,String>最多可以包含16个元素。customExts 是可选的,不需要可以不传
'customExts' => array(
'asd' => '123',
),
'ext' => array(
"em_apns_ext" => array(
"em_push_content" => "自定义推送显示"
)
)
);
$this->assertArrayNotHasKey('code', $this->message->custom('users', array($randomToUsername), $msg, $randomFromUsername));
$this->assertTrue($this->user->delete($randomFromUsername));
$this->assertTrue($this->user->delete($randomToUsername));
}
}