@reportfy/tester
Version:
Lib para teste de integração usando serviço do reportfy
86 lines (75 loc) • 2.64 kB
JavaScript
const { getInterface } = require('./network')
/**
* @function
* @param statusCode
* @param passedStatusCode
* @param responseStatusCode
* @returns {string}
*/
const isPassedStatusCode = (statusCode, passedStatusCode, responseStatusCode) =>
passedStatusCode
? ` Status code esperado: ${statusCode}\n Status code de retorno: ${responseStatusCode}`.green
: ` Status code esperado: ${statusCode}\n Status code de retorno: ${responseStatusCode}`.red
/**
* @function
* @param passedBody
* @param body
* @param responseBody
* @returns {string}
*/
const isPassedBody = (passedBody, body, responseBody) =>
passedBody
? ` Envio de body \n${body} \n Body recebido \n${JSON.stringify(responseBody, null, 4)}`.green
: ` Envio de body \n${body} \n Body recebido \n${JSON.stringify(responseBody, null, 4)}`.red
/**
* @function
* @param passedStatusCode
* @param passedBody
*/
const isApproved = (passedStatusCode, passedBody) => {
if (passedStatusCode === true && passedBody === true) return console.log(`Aprovado 🤩 \n`.green)
return console.log(`Reprovado 😅 \n`.red)
}
/**
* @function
* @param name
* @param path
* @param method
* @param body
* @param statusCode
* @param debug
* @param passedStatusCode
* @param passedBody
* @param responseStatusCode
* @param responseBody
*/
exports.mountedErrorPassed = ({ name, path, method, body, statusCode, debug }, { passedStatusCode, passedBody, responseStatusCode, responseBody }) => {
console.log(`${name} \npath ${path}\nmethod ${method}`.green)
if (debug) {
console.log(` ` + isPassedStatusCode(statusCode, passedStatusCode, responseStatusCode))
console.log(` ` + isPassedBody(passedBody, body, responseBody))
return
}
return isApproved(passedStatusCode, passedBody)
}
/**
* @function
* @param message
*/
exports.logError = (message) => console.log(`\nErro: \n ${message} \n `.brightRed)
/**
* @function
*/
exports.logInitProgram = (network) => console.log(`\nIniciando teste no Domínio: ${network}\n`.brightBlue.bold)
/**
* @function
* @param countApproved
* @param countReproved
* @param countTeste
*/
exports.logReportTesteCase = (countApproved, countReproved, countTeste) => {
console.log(`Relatório dos teste.`.brightBlue.bold)
console.log(` Quantidade de teste: ${countTeste}`.brightBlue.bold)
console.log(` Quantidade de teste que passaram: ${countApproved}`.brightBlue.bold)
console.log(` Quantidade de teste que não passaram: ${countReproved}\n\n`.brightRed.bold)
}