это потому, что у вас есть beforeEach
, который сбрасывает вашу базу данных.Этот хук будет выполняться в каждом тесте, поэтому в вашем 400 status code
у вас больше нет пользователя user-teste-01
, поскольку он был сброшен с помощью beforeEach
.
Для этого есть несколько решений:
# 1 Используйте логин и пароль, которые существуют в вашем семени
it('#Post repeated login - 400 status code', (done) => {
request(app)
.post('/v1/users')
.send({
login: 'user-exist-in-seed',
password: 'pass01'
}).expect(400, done);
});
# 2Снова создайте пользователя перед запуском сценария
context('when user is already exist', function() {
beforeEach(function() {
// create a user `user-teste-01`
// use beforeEach so it will be executed after seeding
})
it('#Post repeated login - 400 status code', (done) => {
request(app)
.post('/v1/users')
.send({
login: 'user-teste-01',
password: 'pass01'
}).expect(400, done);
});
});
3 Используйте перед вместо beforeEach для заполнения
Он будет запущен один раздо всех испытаний
before(populateUsers);//drop and populate database with some seeders