Parcourir la source

use error handler

Brian Gough il y a 9 ans
Parent
commit
835d8d618d

+ 3 - 9
services/web/app/coffee/Features/Project/ProjectApiController.coffee

@@ -1,18 +1,12 @@
 ProjectDetailsHandler = require("./ProjectDetailsHandler")
-Errors = require("../Errors/Errors")
 logger = require("logger-sharelatex")
 
 
 module.exports = 
 
-	getProjectDetails : (req, res)->
+	getProjectDetails : (req, res, next)->
 		{project_id} = req.params
 		ProjectDetailsHandler.getDetails project_id, (err, projDetails)->
-			if err? and err instanceof Errors.NotFoundError
-				return res.sendStatus 404
-			else if err?
-				logger.log err:err, project_id:project_id, "something went wrong getting project details"
-				return res.sendStatus 500
-			else
-				res.json(projDetails)
+			return next(err) if err?
+			res.json(projDetails)
 

+ 4 - 5
services/web/test/UnitTests/coffee/Project/ProjectApiControllerTests.coffee

@@ -20,6 +20,7 @@ describe 'Project api controller', ->
 			session:
 				destroy:sinon.stub()
 		@res = {}
+		@next = sinon.stub()
 		@projDetails = {name:"something"}
 
 
@@ -34,9 +35,7 @@ describe 'Project api controller', ->
 			@controller.getProjectDetails @req, @res
 
 
-		it "should send a 500 if there is an error", (done)->
+		it "should send a 500 if there is an error", ()->
 			@ProjectDetailsHandler.getDetails.callsArgWith(1, "error")
-			@res.sendStatus = (resCode)=>
-				resCode.should.equal 500
-				done()
-			@controller.getProjectDetails @req, @res
+			@controller.getProjectDetails @req, @res, @next
+			@next.calledWith("error").should.equal true