Kann jemand ein Beispiel geben, wie man das beforeEach
benutzt? http://www.node-tap.org/api/ Idealerweise wäre ein Beispiel für die Version des Versprechens, aber auch ein Beispiel für eine Rückrufversion. HierWie benutze ich beforeEach in node-tap?
ist ein Test, den ich geschaffen, die gut funktioniert:
'use strict';
const t = require('tap');
const tp = require('tapromise');
const app = require('../../../server/server');
const Team = app.models.Team;
t.test('crupdate', t => {
t = tp(t);
const existingId = '123';
const existingData = {externalId: existingId, botId: 'b123'};
const existingTeam = Team.create(existingData);
return existingTeam.then(() => {
stubCreate();
const newId = 'not 123'
const newData = {externalId: newId, whatever: 'value'};
const newResult = Team.crupdate({externalId: newId}, newData);
const existingResult = Team.crupdate({externalId: existingId}, existingData);
return Promise.all([
t.equal(newResult, newData, 'Creates new Team when the external ID is different'),
t.match(existingResult, existingTeam, 'Finds existing Team when the external ID exists')
]);
});
})
.then(() => {
process.exit();
})
.catch(t.threw);
function stubCreate() {
Team.create = data => Promise.resolve(data);
}
Bevor ich etwas tun, ich will existingTeam
bestehen bleiben. Nachdem es gespeichert wurde, möchte ich stub Team.create
. Nach diesen beiden Dingen möchte ich anfangen zu testen. Ich denke, es wäre sauberer, wenn ich anstatt Promise.all
oder vielleicht den Testcode zu kopieren, könnte ich beforeEach
verwenden.
Wie würde ich dies umwandeln, um beforeEach
zu verwenden? Oder was ist ein Beispiel für seine Verwendung?
ich jetzt sehen. Die 't.test'-Funktion ist wie ein' then' auf was auch immer von 'beforeEach' zurückgegeben wird. – guptron