Mock usando CJS
Você pode usar seu framework ou ferramenta de Mock preferido e o Poku juntos 🐷➕
Por não restringir você a um conjunto de plugins ou ferramentas, o Poku promove um ecossistema aberto onde os desenvolvedores são livres para integrar as ferramentas que melhor atendem às suas necessidades.
Para esse exemplo, vamos usar o quibble e, em seguida, testar seus resultados com o Poku:
- ./test/withdraw.test.js
- ./lib/funds.js
- ./lib/withdraw.js
const { assert } = require('poku');
const quibble = require('quibble');
(async () => {
await quibble('../lib/funds.js', {
// Original: 100
getFunds: () => 200,
});
const { withdraw } = require('../lib/withdraw.js');
assert.strictEqual(withdraw(200), true, 'Simulando meus fundos para 200');
assert.strictEqual(withdraw(300), false, "Eu não posso obter mais do que eu tenho");
await quibble.reset();
})();
const getFunds = () => 100;
module.exports = { getFunds };
const { getFunds } = require('./funds.js');
const withdraw = (value) => {
const wallet = getFunds();
return value <= wallet;
};
module.exports = { withdraw };
Then:
npx poku