Ejemplo n.º 1
0
  it_('Should delete rider from rider table', function * () {
    var riders1 = yield Ride.getRiders();
    var rider1Id = riders1[0].user_id;
    assert.typeOf(riders1, 'array');
    assert.lengthOf(riders1, 2);
    assert.typeOf(riders1[0], 'object');
    assert.equal(riders1[0].user_id, rider1Id);

    // Because you tested the above functionality earlier, we don't need the above checks. yay.
    // keep tests as focused as possible.

    yield Ride.deleteRider(rider1Id);
    var riders2 = yield Ride.getRiders();
    assert.typeOf(riders2, 'array');
    assert.lengthOf(riders2, 1);
    assert.typeOf(riders2[0], 'object');
    assert.notEqual(riders2[0].user_id, rider1Id);

    // - if a rider does not exist
  });
Ejemplo n.º 2
0
RideAPI.delete('/', function (req, res) {
  var user_id = req.body.user_id;
  var ride_id = req.body.ride_id;

  var rideExists = false;
  if (ride_id) rideExists = true;

  if (rideExists) {
    console.log('removing ride with id:', req.body);
    Ride.deleteRide(ride_id)

      // user_id is the cancelling user's partner's user_id
      .then(() => io.to(user_id).emit('cancel_ride', null))
      .then(sendStatus(res, 200))
      .catch(sendStatusAndError(res, 500));
  } else {
    console.log('removing rider by id:', req.body);
    Ride.deleteRider(user_id)
      .then(Friends.getFriendDrivers.bind(null, user_id))
      .then((drivingFriends) => io.emitTo(drivingFriends, 'remove_rider', user_id))
      .then(sendStatus(res, 200))
      .catch(sendStatusAndError(res, 500));
  }
});