e1c-test-tools
Version:
Набор инструментов для тестирования (предварительная версия)
62 lines (61 loc) • 2.39 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.createExecuteExternalTaskRequest = exports.createManagementTaskRequest = exports.createExecuteTaskRequest = exports.createEvaluateTaskRequest = exports.performTask = exports.sleep = void 0;
const socket_io_client_1 = require("socket.io-client");
const sleep = (ms) => new Promise((resolve) => {
setTimeout(resolve, ms);
});
exports.sleep = sleep;
const performTask = (taskRequest) => {
const brokerHost = process.env.BROKER_HOST || '127.0.0.1';
const brokerPort = process.env.BROKER_PORT || 3000;
let taskId;
return new Promise((resolve, reject) => {
const socket = socket_io_client_1.io(`http://${brokerHost}:${brokerPort}`, { 'transports': ['websocket', 'polling'] });
socket.on('connect', () => {
socket.emit('task-requests', taskRequest);
});
socket.on('task-requests', (data) => {
taskId = data.id;
});
socket.on('task-statuses', (data) => {
if (data.id === taskId) {
if (data.status === 'Finished') {
socket.emit('task-results', { 'id': taskId });
}
}
});
socket.on('task-results', (data) => {
socket.disconnect();
resolve(data.result);
});
socket.on('error', (error) => {
reject(error);
});
});
};
exports.performTask = performTask;
const createEvaluateTaskRequest = (parameters, performOnServer = false) => ({
'type': 'Evaluate',
parameters,
performOnServer,
});
exports.createEvaluateTaskRequest = createEvaluateTaskRequest;
const createExecuteTaskRequest = (parameters, performOnServer = false) => ({
'type': 'Execute',
parameters,
performOnServer,
});
exports.createExecuteTaskRequest = createExecuteTaskRequest;
const createManagementTaskRequest = (parameters, performOnServer = false) => ({
'type': 'Management',
parameters,
performOnServer,
});
exports.createManagementTaskRequest = createManagementTaskRequest;
const createExecuteExternalTaskRequest = (parameters, performOnServer = false) => ({
'type': 'ExecuteExternal',
parameters,
performOnServer,
});
exports.createExecuteExternalTaskRequest = createExecuteExternalTaskRequest;