You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In part 4b, the section Error handling and async/await contains a test that will fail:
test('a specific note can be viewed', async () => {
const notesAtStart = await helper.notesInDb()
const noteToView = notesAtStart[0]
const resultNote = await api
.get(`/api/notes/${noteToView.id}`)
.expect(200)
.expect('Content-Type', /application\/json/)
expect(resultNote.body).toEqual(noteToView)
})
Specifically, Jest will take issue with the way the note's date is formatted:
expect(received).toEqual(expected) // deep equality
- Expected
+ Received
Object {
"content": "HTML is easy",
- "date": 2020-01-22T05:06:35.866Z,
+ "date": "2020-01-22T05:06:35.866Z",
"id": "5e27d85dc41be71f7cfd1ff6",
"important": false,
}
I'm not a Javascript wizard (hence why I'm taking this course), but it seems like Express really wants to parse the date field as a string, whereas MongoDB will return a raw Date as expected.
Proposed Solution
Modify the noteSchema's toJSON() transform to convert the date to a string when necessary:
Problem
In part 4b, the section Error handling and async/await contains a test that will fail:
Specifically, Jest will take issue with the way the note's date is formatted:
I'm not a Javascript wizard (hence why I'm taking this course), but it seems like Express really wants to parse the date field as a string, whereas MongoDB will return a raw Date as expected.
Proposed Solution
Modify the noteSchema's toJSON() transform to convert the date to a string when necessary:
Or, maybe I'm dumb and missed something in the text. Either way wanted to bring this up.
The text was updated successfully, but these errors were encountered: