Я изучаю юнит-тестирование. До сих пор мне удавалось запускать простые тесты, такие как «Добавить два числа и проверить, не превышают ли они 0», но я хочу создать REST API с использованием TDD. Пока у меня есть это:
Мой routes/index.js
файл:
var express = require('express');
var router = express.Router();
/* GET home page. */
router.get('/', function (req, res, next) {
res.send({val: true});
});
module.exports = router;
Мой index.test.js
файл:
var mocha = require('mocha');
var assert = require('chai').assert;
var index = require('../routes/index');
describe('Index methods', () => {
it('Returns true', done => {
index
.get('http://localhost:3000')
.end(function (res) {
expect(res.status).to.equal(200);
done();
})
})
});
Я использую учебник, чтобы сделать это, но когда я пытаюсь запустить это, я получаю:
TypeError: index.get(...).end is not a function
Так что я предполагаю, что что-то не так, но понятия не имею, что. Это мой первый день обучения TDD, поэтому, если вы видите что-то глупое, пожалуйста, дайте мне знать.
Делаем это:
it('Returns true', done => {
var resp = index.get('http://localhost:3000/');
assert.equal(resp.val === true);
done();
})
Также приводит к ошибке:
AssertionError: expected false to equal undefined