Now inside the test file, things are indeed passing, but we haven't added a test for the asyncSquare function so let's do that. Inside the utils.test file, the next thing you needed to do was call it. Next to it for testing the asyncAdd function, let's call it to make a new test for this asyncSquare function:
it('should square a number', () => {
var res = utils.square(3);
expect(res).toBe(9).toBeA('number');
});
it('should async square a number')
Next up, we'll provide the callback function that'll get called when the test actually executes. And since we are testing an async function, we'll put done in the callback function as shown here:
it('should async square a number', (done) => {
});
This will tell Mocha to wait until done is called to decide whether or not the test passed. Next, we can now call utils.asyncSquare passing in a number of our choice. We'll use 5. Next up, we can pass in a callback:
it('should async square a number', (done) => {
utils.asyncSquare(5, () => {
})
});
This will get the final result. In the arrow function (=>), we'll create a variable to store that result:
utils.asyncSquare(5, (res) => {
});
Now that we have this in place, we can start making our assertions.