Writing a simple test in Node.js
Node.js comes with a built-in module called assert
that can be used for testing. We can use it to write a simple test for the games service that we wrote in Chapter 5
, Building Dynamic Websites. We add the following code under gameServiceTest.js
:
'use strict'; let assert = require('assert'); let service = require('./services/games.js') // Given service.create('firstUserId', 'testing'); // When let games = service.availableTo('secondUserId'); // Then assert.equal(games.length, 1); let game = games[0]; assert.equal(game.setBy, 'firstUserId'); assert.equal(game.word, 'TESTING');
Note that the assert.equal
function takes the actual value as the first argument and the expected value as the second argument. This is the opposite way around to JUnit's built-in Assert.Equals
, and the classic-style Assert.AreEqual
in NUnit. It's important to get these parameters the right way around so that they appear correctly in error messages when an...