Welcome to 16892 Developer Community-Open, Learning,Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

I would like to change the following async/await code

const mongoose = require('mongoose')
const supertest = require('supertest')
const app = require('../app')

const api = supertest(app)

test("total number of blogs", async () => {
  const response = await api.get('/api/blogs')
  
  expect(response.body).toHaveLength(1)
})
      

afterAll(() => {
  mongoose.connection.close()
})

to a Promise like this:

const mongoose = require('mongoose')
const supertest = require('supertest')
const app = require('../app')

const api = supertest(app)

test("total number of blogs", () => {
  api.get('/api/blogs')
    .then( response => {
      expect(response.body).toHaveLength(1)
    })
})


afterAll(() => {
  mongoose.connection.close()
})

I could not manage to solve it correctly and I keep getting an error message: enter image description here


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
3.7k views
Welcome To Ask or Share your Answers For Others

1 Answer

To clarify @jonrsharpe's comment you should return the promises from your test function:

test("total number of blogs", () => {
  return api.get('/api/blogs')
    .then( response => {
      expect(response.body).toHaveLength(1)
    })
})

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to 16892 Developer Community-Open, Learning and Share
...