Немного тестов мэйлера, валидаторов на рег. выражениях, реквестов

This commit is contained in:
Mikhail Chechnev 2018-12-10 20:20:32 +03:00
parent 0d183b0ddc
commit 5f6914aa66

107
test.js
View File

@ -6,9 +6,12 @@
require("module-alias/register"); require("module-alias/register");
const db = require("./core/db_connector"); //Взаимодействие с БД const db = require("./core/db_connector"); //Взаимодействие с БД
const cfg = require("./config"); //Настройки сервера приложений const cfg = require("./config"); //Настройки сервера приложений
const rqp = require("request-promise");
const nodemailer = require("nodemailer");
const childProcess = require("child_process"); //Работа с дочерними процессами const childProcess = require("child_process"); //Работа с дочерними процессами
const objOutQueueProcessorSchema = require("./models/obj_out_queue_processor"); //Схема валидации сообщений обмена с бработчиком очереди исходящих сообщений const objOutQueueProcessorSchema = require("./models/obj_out_queue_processor"); //Схема валидации сообщений обмена с бработчиком очереди исходящих сообщений
const { makeModuleFullPath, validateObject } = require("./core/utils"); //Вспомогательные функции const prmsOutQueueProcessorSchema = require("./models/prms_out_queue_processor"); //Схема валидации параметров функций бработчика очереди исходящих сообщений
const { getAppSrvFunction, makeModuleFullPath, validateObject } = require("./core/utils"); //Вспомогательные функции
/* /*
let proc = childProcess.fork("core/out_queue_processor", { silent: true }); let proc = childProcess.fork("core/out_queue_processor", { silent: true });
@ -19,7 +22,7 @@ const getServices = async () => {
await d.connect(); await d.connect();
//let r = await d.getServices(); //let r = await d.getServices();
//let q = await d.getOutgoing({ nPortionSize: 1 }); //let q = await d.getOutgoing({ nPortionSize: 1 });
await d.setQueueState({ nQueueId: 2, nExecState: 1, nIncExecCnt: 0 }); await d.setQueueState({ nQueueId: 2, nExecState: 5, nIncExecCnt: 1 });
await d.disconnect(); await d.disconnect();
} catch (e) { } catch (e) {
await d.disconnect(); await d.disconnect();
@ -53,12 +56,96 @@ proc.on("exit", code => {
*/ */
//proc.send({ nId: "12345" }); //proc.send({ nId: "12345" });
getServices(); //getServices();
//let a = {};
//let sCheckResult = validateObject( //let sCheckResult = validateObject(a, prmsOutQueueProcessorSchema.sendOKResult, "Параметры sendOKResult");
// { nExecState: null, sExecMsg: null, blResp: null },
//objOutQueueProcessorSchema.OutQueueProcessorTaskResult,
//"Задача обработчика очереди исходящих сообщений"
//);
//console.log(sCheckResult); //console.log(sCheckResult);
//let b = new Buffer("");
//console.log(b);
/*
const getSomeData = async () => {
try {
res = await rqp({
//url: "http://123",
url: "http://212.5.81.211:7778",
//url:
// "http://212.5.81.211:7777/prj/PARUS.UDO_PKG_HTTP_PROC_W.PROCESS2?CPRMS={SACTION:GET_AGENT, NAGENT:184429}",
method: "GET"
});
console.log(res);
} catch (e) {
let sError = "Неожиданная ошибка";
if (e.error) {
sError = `Ошибка передачи данных: ${e.error.code}`;
}
if (e.response) {
sError = `Ошибка удалённого сервиса: ${e.response.statusCode} - ${e.response.statusMessage}`;
}
console.log(`При проверке доступности удалённого сервиса: ${sError}`);
}
};
getSomeData();
const sendErrorByMail = e => {
return new Promise((resolve, reject) => {
//Параметры подключения
let transporter = nodemailer.createTransport({
host: "smtp.mail.ru",
port: 465,
secure: true,
auth: {
user: "chechnev@citk-parus.ru",
pass: "Rxt67A_"
}
});
//Параметры сообщения
let mailOptions = {
from: '"Сервис интеграции с WEB-API" <chechnev@citk-parus.ru>', // sender address
to: "chechnev2@citk-parus.ru", // list of receivers
subject: "Сервис недоступен", // Subject line
text: "Сервис простаивает более 1-й минуты"
};
//Отправляем сообщение
transporter.sendMail(mailOptions, (error, info) => {
if (error) {
reject(`${error.code}: ${error.response}`);
} else {
if (info.rejected && Array.isArray(info.rejected) && info.rejected.length > 0) {
reject(`Сообщение не доствлено адресатам: ${info.rejected.join("; ")}`);
} else {
resolve(info);
}
}
});
});
};
sendErrorByMail("Текст")
.then(i => {
console.log(i);
})
.catch(e => {
console.log(e);
});
*/
const chFn = val => {
if (val) {
let r = /^[a-z0-9_.-]+(.js)\/[a-z0-9_.-]+$/;
return r.test(val.toLowerCase());
}
return true;
};
console.log(chFn("123sDf@mail.rU,wert@sSs.ru"));
console.log(chFn("parus_ag@n_info.js/buildAgentQuery"));
console.log(chFn("parus_agn_info.jsparseAgentInfo"));
console.log(chFn("parus_atoleforeBillPrintSend"));
console.log(chFn("parus_at/ol.js/afterBillPrintSend"));
console.log(chFn("parus_at\\ol.js/beforeBillSend"));
console.log(chFn("parus_atol.js/"));