Created
January 14, 2017 12:25
-
-
Save tinesubic/11e45acd85016af625cb49716baca19b to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
'use strict'; | |
var assert = require('assert'); | |
var request = require('supertest'); | |
var server = require('../server.js'); | |
var userToken = "testuser"; | |
var testGroupId = 0; | |
// test if NODE_ENV is set to "test" | |
describe('Testing NODE_ENV', function () { | |
it('should be set to "test"', function () { | |
assert.equal(process.env.NODE_ENV, "test") | |
}); | |
}); | |
// test routes | |
describe('Server API tests', function () { | |
// #index.html tests | |
describe('#index.html', function () { | |
it('GET should return status 200', function () { | |
request(server) | |
.get("/") | |
.expect(200) | |
}); | |
}); | |
//#pushLocTests | |
describe('#pushLocTests', function () { | |
it('POST should return unauthorised error (status 401), if token was not sent in headers', function (done) { | |
request(server) | |
.post("/pushLoc") | |
.send({locations: []}) | |
.set('Accept', 'application/json') | |
.expect(401, done) | |
}); | |
it('POST should return Preconditions failed (status 412), if location data was not present', function (done) { | |
request(server) | |
.post("/pushLoc") | |
.set({token: userToken}) | |
.send({locations: []}) | |
.set('Accept', 'application/json') | |
.expect(412, done) | |
.expect({message: "Locations not provided"}); | |
}); | |
it('POST should return 200 - success if data was sent correctly', function (done) { | |
request(server) | |
.post("/pushLoc") | |
.set({token: userToken}) | |
.send({ | |
"locations": [ | |
{ | |
"latitude": 46.2677119, | |
"longitude": 14.6038464, | |
"time": 1451469916865 | |
} | |
] | |
}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
}); | |
// #getUser tests | |
describe('#getUser', function () { | |
it('GET should return unauthorised error (status 401), if token was not sent in headers', function (done) { | |
request(server) | |
.get("/getUser") | |
.set('Accept', 'application/json') | |
.expect(401, done) | |
}); | |
it('POST should return status 404 - Not found', function (done) { | |
request(server) | |
.post("/getUser") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(404, done) | |
}); | |
it('GET should return status 200, if token was sent in headers', function (done) { | |
request(server) | |
.get("/getUser") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
}); | |
// #getStaypoints tests | |
describe('#getStaypoints', function () { | |
it('GET should return unauthorised error (status 401), if token was not sent in headers', function (done) { | |
request(server) | |
.get("/getStaypoints") | |
.set('Accept', 'application/json') | |
.expect(401, done) | |
}); | |
it('POST should return status 404 - Not found', function (done) { | |
request(server) | |
.post("/getStaypoints") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(404, done) | |
}); | |
it('GET sholud return status 200, if token was sent in headers', function (done) { | |
request(server) | |
.get("/getStaypoints") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
}); | |
// #getActivities tests | |
describe('#getActivities', function () { | |
it('GET should return unauthorised error (status 401), if token was not sent in headers', function (done) { | |
request(server) | |
.get("/getActivities") | |
.set('Accept', 'application/json') | |
.expect(401, done) | |
}); | |
it('POST should return status 404 - Not foud', function (done) { | |
request(server) | |
.post("/getActivities") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(404, done) | |
}); | |
it('GET should return status 200, if token was sent in headers', function (done) { | |
request(server) | |
.get("/getActivities") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
}); | |
// #getActivity tests | |
describe('#getActivity', function () { | |
it('GET should return unauthorised error (status 401), if token was not sent in headers', function (done) { | |
request(server) | |
.get("/getActivity") | |
.set('Accept', 'application/json') | |
.expect(401, done) | |
}); | |
it('POST should return status 404 - Not found', function (done) { | |
request(server) | |
.post("/getActivity") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(404, done) | |
}); | |
it('GET should return status 404, if "activity_id" was not sent as parameter', function (done) { | |
request(server) | |
.get("/getActivity") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(404, done) | |
}); | |
it('GET should return status 400, if "activity_id" is defined but is invalid', function (done) { | |
request(server) | |
.get("/getActivity/1") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(400, done) | |
}); | |
it('GET should return status 500, if "activity_id" is string', function (done) { | |
request(server) | |
.get("/getActivity/dsa") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(500, done) | |
}); | |
}); | |
// #getTravelTime tests | |
describe('#getTravelTime', function () { | |
it('GET should return unauthorised error (status 401), if token was not sent in headers', function (done) { | |
request(server) | |
.get("/group/getTravelTime") | |
.set('Accept', 'application/json') | |
.expect(401, done) | |
}); | |
it('POST should return status 404 - Not found', function (done) { | |
request(server) | |
.post("/group/getTravelTime") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(404, done) | |
}); | |
it('GET should return status 200,', function (done) { | |
request(server) | |
.get("/group/getTravelTime") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
it('GET should return status 200, also if parameter collectMidnightData is defined', function (done) { | |
request(server) | |
.get("/group/getTravelTime?collectMidnightData=true") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
}); | |
// #getTimeOnDuty tests | |
describe('#getTimeOnDuty', function () { | |
it('GET should return unauthorised error (status 401), if token was not sent in headers', function (done) { | |
request(server) | |
.get("/group/getTimeOnDuty") | |
.set('Accept', 'application/json') | |
.expect(401, done) | |
}); | |
it('POST should return status 404 - Not found', function (done) { | |
request(server) | |
.post("/group/getTimeOnDuty") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(404, done) | |
}); | |
it('GET should return status 200,', function (done) { | |
request(server) | |
.get("/group/getTimeOnDuty") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
}); | |
// #getGroupWorkdayRuleCompliance tests | |
describe('#getGroupWorkdayRuleCompliance', function () { | |
it('GET should return unauthorised error (status 401), if token was not sent in headers', function (done) { | |
request(server) | |
.get("/group/getGroupWorkdayRuleCompliance/TT") | |
.set('Accept', 'application/json') | |
.expect(401, done) | |
}); | |
it('POST should return status 404 - Not found', function (done) { | |
request(server) | |
.post("/group/getGroupWorkdayRuleCompliance/TT") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(404, done) | |
}); | |
it('GET should return status 200,', function (done) { | |
request(server) | |
.get("/group/getGroupWorkdayRuleCompliance/TT") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
}); | |
// #getGroupDrivingRuleCompliance tests | |
describe('#getGroupDrivingRuleCompliance', function () { | |
it('GET should return unauthorised error (status 401), if token was not sent in headers', function (done) { | |
request(server) | |
.get("/group/getGroupDrivingRuleCompliance/TT") | |
.set('Accept', 'application/json') | |
.expect(401, done) | |
}); | |
it('POST should return status 404 - Not found', function (done) { | |
request(server) | |
.post("/group/getGroupDrivingRuleCompliance/TT") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(404, done) | |
}); | |
it('GET should return status 200,', function (done) { | |
request(server) | |
.get("/group/getGroupDrivingRuleCompliance/TT") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
}); | |
// #getTimes tests | |
describe('#getTimes', function () { | |
it('GET should return unauthorised error (status 401), if token was not sent in headers', function (done) { | |
request(server) | |
.get("/group/getTimes") | |
.set('Accept', 'application/json') | |
.expect(401, done) | |
}); | |
it('POST should return status 404 - Not found', function (done) { | |
request(server) | |
.post("/group/getTimes") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(404, done) | |
}); | |
it('GET should return status 200,', function (done) { | |
request(server) | |
.get("/group/getTimes") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
}); | |
// #getTravelTimeSum tests | |
describe('#getTravelTimeSum', function () { | |
it('GET should return unauthorised error (status 401), if token was not sent in headers', function (done) { | |
request(server) | |
.get("/group/getTravelTimeSum/TT") | |
.set('Accept', 'application/json') | |
.expect(401, done) | |
}); | |
it('POST should return status 404 - Not found', function (done) { | |
request(server) | |
.post("/group/getTravelTimeSum/TT") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(404, done) | |
}); | |
it('GET should return status 200,', function (done) { | |
request(server) | |
.get("/group/getTravelTimeSum/TT") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
}); | |
// #getStaypointTimeSum tests | |
describe('#getStaypointTimeSum', function () { | |
it('GET should return unauthorised error (status 401), if token was not sent in headers', function (done) { | |
request(server) | |
.get("/group/getStaypointTimeSum/TT") | |
.set('Accept', 'application/json') | |
.expect(401, done) | |
}); | |
it('POST should return status 404 - Not found', function (done) { | |
request(server) | |
.post("/group/getStaypointTimeSum/TT") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(404, done) | |
}); | |
it('GET should return status 200,', function (done) { | |
request(server) | |
.get("/group/getStaypointTimeSum/TT") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
}); | |
//#deleteGroupDataTests | |
describe('#deleteGroupDataTests', function () { | |
it('DELETE should return unauthorised error (status 401), if token was not sent in headers', function (done) { | |
request(server) | |
.delete("/group/deleteGroupData") | |
.set('Accept', 'application/json') | |
.expect(401, done) | |
.expect({message: "Unauthorized"}) | |
}); | |
it('GET should return status 404 - Not found', function (done) { | |
request(server) | |
.get("/group/deleteGroupData") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(404, done) | |
}); | |
it('POST should return status 404 - Not found', function (done) { | |
request(server) | |
.post("/group/deleteGroupData") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(404, done) | |
}); | |
it('DELETE should return 200 - success if token was sent in header', function (done) { | |
request(server) | |
.delete("/group/deleteGroupData/" + testGroupId) | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
.expect({message: "Data for group " + testGroupId + " deleted"}) | |
}); | |
}); | |
//#deleteGroupTests | |
describe('#deleteGroupTests', function () { | |
it('DELETE should return unauthorised error (status 401), if token was not sent in headers', function (done) { | |
request(server) | |
.delete("/group/deleteGroup") | |
.set('Accept', 'application/json') | |
.expect(401, done) | |
.expect({message: "Unauthorized"}) | |
}); | |
it('GET should return status 404 - Not found', function (done) { | |
request(server) | |
.get("/group/deleteGroup") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(404, done) | |
}); | |
it('POST should return status 404 - Not found', function (done) { | |
request(server) | |
.post("/group/deleteGroup") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(404, done) | |
}); | |
it('DELETE should return 200 - success if token was sent in header', function (done) { | |
request(server) | |
.delete("/group/deleteGroup/" + testGroupId) | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
.expect({message: "Group " + testGroupId + " deleted"}) | |
}); | |
}); | |
// #getPrediction tests | |
describe('#getPrediction', function () { | |
it('GET should return unauthorised error (status 401), if token was not sent in headers', function (done) { | |
request(server) | |
.get("/getPrediction/222") | |
.set('Accept', 'application/json') | |
.expect(401, done) | |
}); | |
it('POST should return status 404 - Not found', function (done) { | |
request(server) | |
.post("/getPrediction/222") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(404, done) | |
}); | |
it('GET should return status 200, if "location_id" is defined', function (done) { | |
request(server) | |
.get("/getPrediction/222") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
it('GET prediction should be empty, if "from" and "to" parameters are the same', function (done) { | |
request(server) | |
.get("/getPrediction/222?from=1453898957301&to=1453898957301") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
.expect({"timeToJump": 0, "prediction": []}); | |
}); | |
}); | |
// #getEvaluation tests | |
describe('#getEvaluation', function () { | |
it('GET should return unauthorised error (status 401), if token was not sent in headers', function (done) { | |
request(server) | |
.get("/getEvaluation") | |
.set('Accept', 'application/json') | |
.expect(401, done) | |
}); | |
it('POST should return status 404 - Not found', function (done) { | |
request(server) | |
.post("/getEvaluation") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(404, done) | |
}); | |
it('GET should return status 200', function (done) { | |
request(server) | |
.get("/getEvaluation") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
it('GET evaluation should be empty, if "from" and "to" parameters are the same', function (done) { | |
request(server) | |
.get("/getEvaluation?from=1453898957301&to=1453898957301") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
.expect({"accuracy": null, "allLocations": 0, "correctLocations": 0}) | |
}); | |
}); | |
// #getFrequent tests | |
describe('#getFrequent', function () { | |
it('GET should return unauthorised error (status 401), if token was not sent in headers', function (done) { | |
request(server) | |
.get("/getFrequent") | |
.set('Accept', 'application/json') | |
.expect(401, done) | |
}); | |
it('GET should return status 200', function (done) { | |
request(server) | |
.get("/getFrequent") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
it('GET should be empty, if "from" and "to" parameters are the same', function (done) { | |
request(server) | |
.get("/getFrequent?from=1453898957301&to=1453898957301") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
.expect([]) | |
}); | |
}); | |
// #getLocationSuggestions tests | |
describe('#getLocationSuggestions', function () { | |
it('GET should return unauthorised error (status 401), if token was not sent in headers', function (done) { | |
request(server) | |
.get("/getLocationSuggestions?lat=46.044549&lng=14.486679") | |
.set('Accept', 'application/json') | |
.expect(401, done) | |
}); | |
it('GET should return status 200', function (done) { | |
request(server) | |
.get("/getLocationSuggestions?lat=46.044549&lng=14.486679") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
}); | |
// #getFreqLocSugg tests | |
describe('#getFreqLocSugg', function () { | |
it('GET should return unauthorised error (status 401), if token was not sent in headers', function (done) { | |
request(server) | |
.get("/getFreqLocSugg?id=57544&lat=53.406455&lng=-2.54709&visits=1&avg_stay=600&last_visit=1457757515000") | |
.set('Accept', 'application/json') | |
.expect(401, done) | |
}); | |
it('GET should return status 200', function (done) { | |
request(server) | |
.get("/getFreqLocSugg?id=57544&lat=53.406455&lng=-2.54709&visits=1&avg_stay=600&last_visit=1457757515000") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
}); | |
// #editFrequent tests | |
describe('#editFrequent', function () { | |
it('POST should return unauthorised error (status 401), if token was not sent in headers', function (done) { | |
request(server) | |
.post("/editFrequent") | |
.set('Accept', 'application/json') | |
.expect(401, done) | |
}); | |
it('POST should return status 200', function (done) { | |
request(server) | |
.post("/editFrequent") | |
.set({token: userToken}) | |
.send({ | |
"location_id": 23615, "name": "test", "category": "Building", "fs_id": "4565676878967", | |
"personalized_location": "work", "validated": true | |
}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
it('POST without parameters should return status 500', function (done) { | |
request(server) | |
.post("/editFrequent") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(500, done) | |
}); | |
}); | |
// #getHistogram tests | |
describe('#visitsByHoursOfDay', function () { | |
it('GET should return unauthorised error (status 401), if token was not sent in headers', function (done) { | |
request(server) | |
.get("/analytics") | |
.set('Accept', 'application/json') | |
.expect(401, done) | |
}); | |
it('GET without :location_id should return status 404', function (done) { | |
request(server) | |
.get("/analytics/visitsByHoursOfDay") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(404, done) | |
}); | |
it('GET should return status 200', function (done) { | |
request(server) | |
.get("/analytics/visitsByHoursOfDay/1") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
it('GET with optional query parameters "from" and "to" should return status 200', function (done) { | |
request(server) | |
.get("/analytics/visitsByHoursOfDay/1?from=1453898957301&to=1453898957301") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
}); | |
// #getHistogram tests | |
describe('#visitsByDayOfWeek', function () { | |
it('GET should return unauthorised error (status 401), if token was not sent in headers', function (done) { | |
request(server) | |
.get("/analytics") | |
.set('Accept', 'application/json') | |
.expect(401, done) | |
}); | |
it('GET without :location_id should return status 404', function (done) { | |
request(server) | |
.get("/analytics/visitsByDayOfWeek") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(404, done) | |
}); | |
it('GET should return status 200', function (done) { | |
request(server) | |
.get("/analytics/visitsByDayOfWeek/1") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
it('GET should return status 200', function (done) { | |
request(server) | |
.get("/analytics/visitsByDayOfWeek/1?considerEndTime=false") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
it('GET with optional query parameters "from" and "to" should return status 200', function (done) { | |
request(server) | |
.get("/analytics/visitsByDayOfWeek/1?from=1453898957301&to=1453898957301") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
}); | |
// #getHistogram tests | |
describe('#visitsByHoursOfWeek', function () { | |
it('GET should return unauthorised error (status 401), if token was not sent in headers', function (done) { | |
request(server) | |
.get("/analytics") | |
.set('Accept', 'application/json') | |
.expect(401, done) | |
}); | |
it('GET withourt :location_id should return status 404', function (done) { | |
request(server) | |
.get("/analytics/visitsByHoursOfWeek") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(404, done) | |
}); | |
it('GET should return status 200', function (done) { | |
request(server) | |
.get("/analytics/visitsByHoursOfWeek/1") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
it('GET with optional query parameters "from" and "to" should return status 200', function (done) { | |
request(server) | |
.get("/analytics/visitsByHoursOfWeek/1?from=1453898957301&to=1453898957301") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
}); | |
// #getPOIS tests | |
describe('#getPOIs', function () { | |
it('GET should return unauthorised error (status 401), if token was not sent in headers', function (done) { | |
request(server) | |
.get("/getPOIs") | |
.set('Accept', 'application/json') | |
.expect(401, done) | |
}); | |
it('GET should return status 200', function (done) { | |
request(server) | |
.get("/getPOIs/") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
it('GET with optional query parameters should return status 200', function (done) { | |
request(server) | |
.get("/getPOIs?latUL=56.0&lonUL=-6.3&latBR=48.8&lonBR=14.7") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
}); | |
//#deleteUserDataTests | |
describe('#deleteUserDataTests', function () { | |
it('DELETE should return unauthorised error (status 401), if token was not sent in headers', function (done) { | |
request(server) | |
.delete("/deleteUserData") | |
.set('Accept', 'application/json') | |
.expect(401, done) | |
.expect({message: "Unauthorized"}) | |
}); | |
it('GET should return status 404 - Not found', function (done) { | |
request(server) | |
.get("/deleteUserData") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(404, done) | |
}); | |
it('POST should return status 404 - Not found', function (done) { | |
request(server) | |
.post("/deleteUserData") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(404, done) | |
}); | |
it('DELETE should return 200 - success if token was sent in header', function (done) { | |
request(server) | |
.delete("/deleteUserData") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
.expect({message: "Data for user '" + userToken + "' deleted"}) | |
}); | |
it('DELETE should return 200 - success if user token was sent in URL parameter', function (done) { | |
request(server) | |
.delete("/deleteUserData/?user=" + userToken) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
.expect({message: "Data for user '" + userToken + "' deleted"}) | |
}); | |
}); | |
//#deleteUserTests | |
describe('#deleteUserTests', function () { | |
it('DELETE should return unauthorised error (status 401), if token was not sent in headers', function (done) { | |
request(server) | |
.delete("/deleteUser") | |
.set('Accept', 'application/json') | |
.expect(401, done) | |
.expect({message: "Unauthorized"}) | |
}); | |
it('GET should return status 404 - Not found', function (done) { | |
request(server) | |
.get("/deleteUser") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(404, done) | |
}); | |
it('POST should return status 404 - Not found', function (done) { | |
request(server) | |
.post("/deleteUser") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(404, done) | |
}); | |
it('DELETE should return 200 - success if token was sent in header', function (done) { | |
request(server) | |
.delete("/deleteUser") | |
.set({token: userToken}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
.expect({message: "User '" + userToken + "' deleted"}) | |
}); | |
//resend data to create the user again (so that next test can pass) | |
it('POST should return 200 - success if data was sent correctly', function (done) { | |
request(server) | |
.post("/pushLoc") | |
.set({token: userToken}) | |
.send({ | |
"locations": [ | |
{ | |
"latitude": 46.2677119, | |
"longitude": 14.6038464, | |
"time": 1451469916865 | |
} | |
] | |
}) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
}); | |
it('DELETE should return 200 - success if user token was sent in URL parameter', function (done) { | |
request(server) | |
.delete("/deleteUser/?user=" + userToken) | |
.set('Accept', 'application/json') | |
.expect(200, done) | |
.expect({message: "User '" + userToken + "' deleted"}) | |
}); | |
}); | |
}); | |
// Nice tutorials: | |
// http://importjake.io/testing-express-routes-with-mocha-supertest-and-mock-goose/ | |
// https://glebbahmutov.com/blog/how-to-correctly-unit-test-express-server/ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment