40 lines
1.1 KiB
TypeScript
40 lines
1.1 KiB
TypeScript
import assert from 'assert';
|
|
import { TsrpcError, WsClient } from 'tsrpc';
|
|
import { serviceProto } from '../../src/shared/protocols/serviceProto';
|
|
|
|
// 1. EXECUTE `npm run dev` TO START A LOCAL DEV SERVER
|
|
// 2. EXECUTE `npm test` TO START UNIT TEST
|
|
|
|
describe('ApiSend', function () {
|
|
let client = new WsClient(serviceProto, {
|
|
server: 'ws://127.0.0.1:3000',
|
|
json: true,
|
|
logger: console
|
|
});
|
|
|
|
before(async function () {
|
|
let res = await client.connect();
|
|
assert.strictEqual(res.isSucc, true, 'Failed to connect to server, have you executed `npm run dev` already?');
|
|
})
|
|
|
|
it('Success', async function () {
|
|
let ret = await client.callApi('Send', {
|
|
content: 'Test'
|
|
});
|
|
assert.ok(ret.isSucc)
|
|
});
|
|
|
|
it('Check content is empty', async function () {
|
|
let ret = await client.callApi('Send', {
|
|
content: ''
|
|
});
|
|
assert.deepStrictEqual(ret, {
|
|
isSucc: false,
|
|
err: new TsrpcError('Content is empty')
|
|
});
|
|
})
|
|
|
|
after(async function () {
|
|
await client.disconnect();
|
|
})
|
|
}) |