mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2025-10-16 12:05:41 +00:00
87 lines
2.3 KiB
TypeScript
87 lines
2.3 KiB
TypeScript
import * as uuid from 'node-uuid';
|
|
import * as jrs from 'jsonrpc-serializer';
|
|
|
|
// request tests
|
|
jrs.request('id', 'method');
|
|
jrs.request('id', 'method', 'params');
|
|
jrs.request('id', 'method', ['param1', 'param2', 'param3']);
|
|
jrs.request('id', 'method', { params: 'params' });
|
|
|
|
// request object tests
|
|
jrs.requestObject('id', 'method');
|
|
jrs.requestObject('id', 'method', 'params');
|
|
jrs.requestObject('id', 'method', ['param1', 'param2', 'param3']);
|
|
jrs.requestObject('id', 'method', { params: 'params' });
|
|
|
|
// notification tests
|
|
jrs.notification('method');
|
|
jrs.notification('method', 'params');
|
|
jrs.notification('method', ['param1', 'param2']);
|
|
jrs.notification('method', { param: 'param' });
|
|
|
|
// object notification tests
|
|
jrs.notificationObject('method');
|
|
jrs.notificationObject('method', 'params');
|
|
jrs.notificationObject('method', ['param1', 'param2']);
|
|
jrs.notificationObject('method', { param: 'param' });
|
|
|
|
// success tests
|
|
jrs.success('id', 'result');
|
|
jrs.successObject('id', 'result');
|
|
|
|
// error tests;
|
|
jrs.error('id', new jrs.err.JsonRpcError('penta error'));
|
|
jrs.error('id', new jrs.err.InvalidParamsError());
|
|
jrs.error('id', new jrs.err.ParseError());
|
|
jrs.error('id', new jrs.err.InvalidRequestError());
|
|
jrs.error('id', new jrs.err.MethodNotFoundError());
|
|
jrs.error('id', new jrs.err.InvalidParamsError());
|
|
|
|
// deserialize tests
|
|
const request = {
|
|
jsonrpc : '2.0',
|
|
id : 'id',
|
|
method : 'method',
|
|
params : 'params'
|
|
};
|
|
|
|
jrs.deserialize(JSON.stringify(request));
|
|
jrs.deserializeObject(request);
|
|
|
|
// ---
|
|
|
|
const request2 = jrs.request('request-id', 'request-method');
|
|
|
|
// ---> "{\"jsonrpc\":\"2.0\",\"id\":\"request-id\",\"method:\":\"request-method\"}"
|
|
|
|
const ok1 = "{\"jsonrpc\":\"2.0\",\"id\":\"request-id\",\"result\":\"success!!\"}";
|
|
|
|
const response1 = jrs.deserialize(ok1);
|
|
|
|
// ---
|
|
|
|
const payload2 = jrs.request(
|
|
uuid.v4(), // generates a V4 UUID string
|
|
'saveUser', // the method to call
|
|
{
|
|
name : 'Ruben Tan',
|
|
email : 'foo@bar.com',
|
|
race : 'unicorn'
|
|
}
|
|
);
|
|
|
|
// ---
|
|
|
|
const payload3 = jrs.notification(
|
|
'newMessage', // the method to call
|
|
{
|
|
subject : 'Test message',
|
|
message : 'This is a test message'
|
|
}
|
|
);
|
|
|
|
// ---
|
|
|
|
const err1 = new jrs.err.JsonRpcError('This is an error');
|
|
const str1 = err1.serialize();
|