test: 🎨 a lot test

This commit is contained in:
Leifer Mendez
2023-02-09 17:10:54 +01:00
parent dda59fa93b
commit 31a42ddcad
3 changed files with 39 additions and 1 deletions

View File

@@ -1,6 +1,21 @@
const MOCK_DB = require('../packages/database/src/mock')
const PROVIDER_DB = require('../packages/provider/src/mock')
class MOCK_FLOW {
allCallbacks = { ref: () => 1 }
flowSerialize = []
flowRaw = []
find = (arg) => {
if (arg) {
return [{ answer: 'answer', ref: 'ref' }]
} else {
return null
}
}
findBySerialize = () => ({})
findIndexByRef = () => 0
}
/**
* Preparar env para el test
* @param {*} context
@@ -8,11 +23,13 @@ const PROVIDER_DB = require('../packages/provider/src/mock')
const setup = async (context) => {
context.provider = new PROVIDER_DB()
context.database = new MOCK_DB()
context.flow = new MOCK_FLOW()
}
const clear = async (context) => {
context.provider = null
context.database = null
context.flow = null
}
function delay(ms) {

View File

@@ -0,0 +1,21 @@
const ProviderClass = require('../packages/bot/provider/provider.class')
class MockProvider extends ProviderClass {
constructor() {
super()
}
delaySendMessage = (miliseconds, eventName, payload) =>
new Promise((res) =>
setTimeout(() => {
this.emit(eventName, payload)
res
}, miliseconds)
)
sendMessage = async (userId, message) => {
console.log(`Enviando... ${userId}, ${message}`)
return Promise.resolve({ userId, message })
}
}
module.exports = MockProvider

View File

@@ -1,6 +1,6 @@
const { test } = require('uvu')
const assert = require('uvu/assert')
const MockProvider = require('../../../__mocks__/mock.provider')
const MockProvider = require('../../provider/src/mock')
test(`ProviderClass`, async () => {
const provider = new MockProvider()