mirror of
https://github.com/cheveguerra/bot-whatsapp.git
synced 2026-04-19 12:09:15 +00:00
test pass
This commit is contained in:
@@ -2,7 +2,8 @@ const { test } = require('uvu')
|
||||
const assert = require('uvu/assert')
|
||||
|
||||
const { MOCK_MOBILE_WS } = require('../__mocks__/mobile.mock')
|
||||
const { inout, provider, database, botcore } = require('../packages/index')
|
||||
const { inout, database, botcore } = require('../packages/index')
|
||||
const mockProvider = require('../packages/provider/adapters/mock')
|
||||
|
||||
const makeFlow = () => {
|
||||
const flowA = inout
|
||||
@@ -21,12 +22,9 @@ test(`[BotClass]: recibe los mensajes entrantes del provider`, async () => {
|
||||
let messagesIn = []
|
||||
let messagesOut = []
|
||||
|
||||
const adapterFlow = await inout.create(makeFlow())
|
||||
const adapterFlow = inout.create(makeFlow())
|
||||
|
||||
const adapterProvider = await provider.create({
|
||||
vendor: 'mock',
|
||||
credentials: {},
|
||||
})
|
||||
const adapterProvider = mockProvider
|
||||
const adapterDB = await database.create({
|
||||
engine: 'mock',
|
||||
credentials: {},
|
||||
@@ -38,12 +36,12 @@ test(`[BotClass]: recibe los mensajes entrantes del provider`, async () => {
|
||||
provider: adapterProvider,
|
||||
})
|
||||
|
||||
bot.on('message', (ctx) => messagesIn.push(ctx.message))
|
||||
adapterProvider.on('message', (ctx) => messagesIn.push(ctx.message))
|
||||
|
||||
bot.emit('message', { ...MOCK_MOBILE_WS, message: 'hola' })
|
||||
adapterProvider.emit('message', { ...MOCK_MOBILE_WS, message: 'hola' })
|
||||
assert.is(messagesIn.join(), ['hola'].join())
|
||||
await delay(200)
|
||||
bot.emit('message', { ...MOCK_MOBILE_WS, message: 'Pedro!' })
|
||||
adapterProvider.emit('message', { ...MOCK_MOBILE_WS, message: 'Pedro!' })
|
||||
console.log(messagesIn)
|
||||
assert.is(messagesIn.join(), ['hola', 'Pedro!'].join())
|
||||
messagesOut = adapterDB.history
|
||||
|
||||
@@ -6,8 +6,7 @@ const ProviderClass = require('./classes/provider.class')
|
||||
* @param {*} args
|
||||
* @returns
|
||||
*/
|
||||
const create = async ({ flow, database, provider }) => {
|
||||
const create = async ({ flow, database, provider }) =>
|
||||
new BotClass(flow, database, provider)
|
||||
}
|
||||
|
||||
module.exports = { create, ProviderClass }
|
||||
|
||||
@@ -2,6 +2,7 @@ const { EventEmitter } = require('node:events')
|
||||
const { test } = require('uvu')
|
||||
const assert = require('uvu/assert')
|
||||
const { create } = require('../')
|
||||
const BotClass = require('../classes/bot.class')
|
||||
|
||||
class MockFlow {}
|
||||
|
||||
@@ -16,7 +17,7 @@ test(`BotClass`, async () => {
|
||||
provider: new MockProvider(),
|
||||
}
|
||||
const bot = await create(setting)
|
||||
bot.on('message', (ctx) => console.log(ctx))
|
||||
assert.is(bot instanceof BotClass, true)
|
||||
})
|
||||
|
||||
test.run()
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
const { test } = require('uvu')
|
||||
const assert = require('uvu/assert')
|
||||
const MockProvider = require('../adapters/mock')
|
||||
const mockProvider = require('../adapters/mock')
|
||||
|
||||
test(`ProviderClass`, async () => {
|
||||
const provider = new MockProvider()
|
||||
const provider = mockProvider
|
||||
const msg = await provider.sendMessage('123456789', 'hola')
|
||||
console.log(msg)
|
||||
assert.is(msg.userId, '123456789')
|
||||
|
||||
Reference in New Issue
Block a user