apollographql / apollographql/fullstack-tutorial

Bug in cancelTrip method from User datasource

Open
#116 0 comments 0 reactions 1 assignee Claimed by @stemmlerjs View on GitHub
bug
Dominant language
TypeScript
Stars
1.2k
Forks
808
PR merge metrics
No merged PRs in 30d

Description

https://github.com/apollographql/fullstack-tutorial/blob/66431a74abbdfd432157ec36a2fb7cd9f0b80be4/start/server/src/datasources/user.js#L60

Due to this line `cancelTrip` throws an error.

```sh
{
"errors": [
{
"message": "Cannot read property 'flight_number' of undefined",
"locations": [
{
"line": 2,
"column": 3
}
],
"path": [
"cancelTrip"
],
"extensions": {
"code": "INTERNAL_SERVER_ERROR",
"exception": {
"stacktrace": [
"TypeError: Cannot read property 'flight_number' of undefined",
// ....
```
Following change will fix the error.

```
async cancelTrip({ launchId }) {
const userId = this.context.user.id;
const numberOfDeletedTrips = await this.store.trips.destroy({ where: { userId, launchId } });
return numberOfDeletedTrips !== 0;
}
```
As per the [doc of `destroy`](https://sequelize.org/master/class/lib/model.js~Model.html#static-method-destroy) it returns number of deleted resources wrapped in Promise. So it should be resolved to get the count to decide if resources are deleted or not.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.