Function
Приклад створення
Створюється окремий файл (функція) і туди розміщається сама функція.
Function можуть викликатися в апі чи в інших функціях. Не підключаються в файлі route. Для виклику функції в API необхідно додати змінну funcs до переліку імпортованих компонент. Також можна викликати функцію безпосередньо з під її власного імені, проте для цього необхідно присвоїти її змінній у даній API.
Приклад виклику функції в апі:
module.exports = async function getAddress({funcs, x, y,}){
const { request } = funcs;
const here = await geoCodeHere({ x, y, request });
//...
};
Приклад функції (getOpt):
Дана функція приймає в себе args та повертає opt (повертає json за токеном)
module.exports = (args) => {
const { db } = args;
const opt = {
...args,
pg: require('./service/pg')(db),
};
opt.addCron = (...opt2) => require('./util/addCron')(opt)(...opt2);
return opt;
};
Тестування функцій
Приклад тесту для функцій:
const funcsWrap = require('../../service/funcs');
const funcs = funcsWrap({ db });
describe('funcs', async () => {
it('setTokenById', async () => {
const data = await funcs.setTokenById({ ids: ['122'], mode: 'w', uid: 1 });
console.log(data);
assert.ok(data);
});
});