forwardemail / forwardemail/supertest

supertest.end function causing timeout

Open
#785 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
14.4k
Forks
782
PR merge metrics
No merged PRs in 30d

Description

Hi,

I'm trying to implement some testes on a new project, but when i invoke the end function i have a timeout on return.

Test file
```
const supertest = require('supertest');
const chai = require('chai');
const app = require('../../../src/app');

const request = supertest(app);

describe('Routes: Users', () => {

const defaultUser = {
username: 'DefaultUser',
email: 'defaultuser@email.com',
password: '12345'
};

describe('GET /users', () => {
it('should return a list of users', done => {
request
.get('/users')
.end((err, res) => {
console.log("error");
done(err);
});
});
});
});
```
Route file
```
const express = require('express');
const UsersController = require('../controllers/users');

const router = express.Router();
const usersController = new UsersController();

router.get('/', (req, res) => res.send([{
name: 'Default product',
description: 'product description',
price: 100
}]));

module.exports = router;
```
Error log:
```
npm run test:integration

> card-collector-api@0.0.1 test:integration
> mocha --config test/integration/.mocharc.json test/integration/**/*_spec.js

Routes: Users
GET /users
1) should return a list of users

0 passing (2s)
1 failing

1) Routes: Users
GET /users
should return a list of users:
Error: Timeout of 2000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves. (/workspace/test/integration/controllers/users_spec.js)
at listOnTimeout (node:internal/timers:564:17)
at process.processTimers (node:internal/timers:507:7)
```

Another curious think is that I to use ctrl+C command to end my test run.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.