send -> sendStatus

This commit is contained in:
Henry Oswald 2015-07-08 16:56:38 +01:00
parent 9028bcf830
commit 3ecf201eda
28 changed files with 131 additions and 117 deletions

View file

@ -12,7 +12,7 @@ module.exports =
ChatHandler.sendMessage project_id, user_id, messageContent, (err, builtMessge)->
if err?
logger.err err:err, project_id:project_id, user_id:user_id, messageContent:messageContent, "problem sending message to chat api"
return res.send(500)
return res.sendStatus(500)
EditorRealTimeController.emitToRoom project_id, "new-chat-message", builtMessge, (err)->
res.send()
@ -23,7 +23,7 @@ module.exports =
ChatHandler.getMessages project_id, query, (err, messages)->
if err?
logger.err err:err, query:query, "problem getting messages from chat api"
return res.send 500
return res.sendStatus 500
logger.log length:messages?.length, "sending messages to client"
res.set 'Content-Type', 'application/json'
res.send messages

View file

@ -18,7 +18,7 @@ module.exports = CollaboratorsController =
return next(new Error("User should be logged in"))
CollaboratorsHandler.removeUserFromProject req.params.project_id, user_id, (error) ->
return next(error) if error?
res.send 204
res.sendStatus 204
addUserToProject: (req, res, next) ->
project_id = req.params.Project_id
@ -32,7 +32,7 @@ module.exports = CollaboratorsController =
user_id = req.params.user_id
EditorController.removeUserFromProject project_id, user_id, (error)->
return next(error) if error?
res.send 204
res.sendStatus 204
_formatCollaborators: (project, callback = (error, collaborators) ->) ->
collaborators = []

View file

@ -51,14 +51,14 @@ module.exports = CompileController =
project_id = req.params.Project_id
CompileManager.deleteAuxFiles project_id, (error) ->
return next(error) if error?
res.send(200)
res.sendStatus(200)
compileAndDownloadPdf: (req, res, next)->
project_id = req.params.project_id
CompileManager.compile project_id, null, {}, (err)->
if err?
logger.err err:err, project_id:project_id, "something went wrong compile and downloading pdf"
res.send 500
res.sendStatus 500
url = "/project/#{project_id}/output/output.pdf"
CompileController.proxyToClsi project_id, url, req, res, next

View file

@ -26,7 +26,7 @@ module.exports =
logger.err err:error, doc_id:doc_id, project_id:project_id, "error finding element for getDocument"
return next(error)
logger.log doc_id:doc_id, project_id:project_id, "finished receiving set document request from api (docupdater)"
res.send 200
res.sendStatus 200

View file

@ -49,7 +49,7 @@ module.exports = EditorHttpController =
name = req.body.name
if !name?
return res.send 400 # Malformed request
return res.sendStatus 400 # Malformed request
logger.log project_id: project_id, doc_id: doc_id, "restoring doc"
ProjectEntityHandler.restoreDoc project_id, doc_id, name, (err, doc, folder_id) =>
@ -68,7 +68,7 @@ module.exports = EditorHttpController =
name = req.body.name
parent_folder_id = req.body.parent_folder_id
if !EditorHttpController._nameIsAcceptableLength(name)
return res.send 400
return res.sendStatus 400
EditorController.addDoc project_id, parent_folder_id, name, [], "editor", (error, doc) ->
return next(error) if error?
res.json doc
@ -78,7 +78,7 @@ module.exports = EditorHttpController =
name = req.body.name
parent_folder_id = req.body.parent_folder_id
if !EditorHttpController._nameIsAcceptableLength(name)
return res.send 400
return res.sendStatus 400
EditorController.addFolder project_id, parent_folder_id, name, "editor", (error, doc) ->
return next(error) if error?
res.json doc
@ -89,10 +89,10 @@ module.exports = EditorHttpController =
entity_type = req.params.entity_type
name = req.body.name
if !EditorHttpController._nameIsAcceptableLength(name)
return res.send 400
return res.sendStatus 400
EditorController.renameEntity project_id, entity_id, entity_type, name, (error) ->
return next(error) if error?
res.send 204
res.sendStatus 204
moveEntity: (req, res, next) ->
project_id = req.params.Project_id
@ -101,7 +101,7 @@ module.exports = EditorHttpController =
folder_id = req.body.folder_id
EditorController.moveEntity project_id, entity_id, folder_id, entity_type, (error) ->
return next(error) if error?
res.send 204
res.sendStatus 204
deleteDoc: (req, res, next)->
req.params.entity_type = "doc"
@ -121,6 +121,6 @@ module.exports = EditorHttpController =
entity_type = req.params.entity_type
EditorController.deleteEntity project_id, entity_id, entity_type, "editor", (error) ->
return next(error) if error?
res.send 204
res.sendStatus 204

View file

@ -12,10 +12,10 @@ module.exports =
ProjectLocator.findElement {project_id: project_id, element_id: file_id, type: "file"}, (err, file)->
if err?
logger.err err:err, project_id: project_id, file_id: file_id, queryString:queryString, "error finding element for downloading file"
return res.send 500
return res.sendStatus 500
FileStoreHandler.getFileStream project_id, file_id, queryString, (err, stream)->
if err?
logger.err err:err, project_id: project_id, file_id: file_id, queryString:queryString, "error getting file stream for downloading file"
return res.send 500
return res.sendStatus 500
res.setHeader("Content-Disposition", "attachment; filename=#{file.name}")
stream.pipe res

View file

@ -32,9 +32,9 @@ module.exports = HealthCheckController =
checkRedis: (req, res, next)->
if redisCheck.isAlive()
res.send 200
res.sendStatus 200
else
res.send 500
res.sendStatus 500
Reporter = (res) ->
(runner) ->

View file

@ -23,7 +23,7 @@ module.exports =
if err?
res.send 500, {message:err?.message}
else if exists
res.send 200
res.sendStatus 200
else
res.send 404, {message: req.i18n.translate("cant_find_email")}
@ -35,10 +35,10 @@ module.exports =
setNewUserPassword: (req, res)->
{passwordResetToken, password} = req.body
if !password? or password.length == 0 or !passwordResetToken? or passwordResetToken.length == 0
return res.send 400
return res.sendStatus 400
PasswordResetHandler.setNewUserPassword passwordResetToken?.trim(), password?.trim(), (err, found) ->
return next(err) if err?
if found
res.send 200
res.sendStatus 200
else
res.send 404, {message: req.i18n.translate("password_reset_token_expired")}

View file

@ -9,6 +9,6 @@ module.exports =
ProjectDetailsHandler.getDetails project_id, (err, projDetails)->
if err?
logger.log err:err, project_id:project_id, "something went wrong getting project details"
return res.send 500
return res.sendStatus 500
res.json(projDetails)

View file

@ -44,7 +44,7 @@ module.exports = ProjectController =
async.series jobs, (error) ->
return next(error) if error?
res.send(204)
res.sendStatus(204)
deleteProject: (req, res) ->
project_id = req.params.Project_id
@ -58,18 +58,18 @@ module.exports = ProjectController =
doDelete project_id, (err)->
if err?
res.send 500
res.sendStatus 500
else
res.send 200
res.sendStatus 200
restoreProject: (req, res) ->
project_id = req.params.Project_id
logger.log project_id:project_id, "received request to restore project"
projectDeleter.restoreProject project_id, (err)->
if err?
res.send 500
res.sendStatus 500
else
res.send 200
res.sendStatus 200
cloneProject: (req, res, next)->
metrics.inc "cloned-project"
@ -99,7 +99,7 @@ module.exports = ProjectController =
], (err, project)->
if err?
logger.error err: err, project: project, user: user, name: projectName, templateType: template, "error creating project"
res.send 500
res.sendStatus 500
else
logger.log project: project, user: user, name: projectName, templateType: template, "created project"
res.send {project_id:project._id}
@ -109,13 +109,13 @@ module.exports = ProjectController =
project_id = req.params.Project_id
newName = req.body.newProjectName
if newName.length > 150
return res.send 400
return res.sendStatus 400
editorController.renameProject project_id, newName, (err)->
if err?
logger.err err:err, project_id:project_id, newName:newName, "problem renaming project"
res.send 500
res.sendStatus 500
else
res.send 200
res.sendStatus 200
projectListPage: (req, res, next)->
timer = new metrics.Timer("project-list")
@ -196,7 +196,7 @@ module.exports = ProjectController =
SecurityManager.userCanAccessProject user, project, (canAccess, privilegeLevel)->
if !canAccess
return res.send 401
return res.sendStatus 401
if subscription? and subscription.freeTrial? and subscription.freeTrial.expiresAt?
allowedFreeTrial = !!subscription.freeTrial.allowed || true

View file

@ -50,12 +50,12 @@ module.exports = AdminController =
dissconectAllUsers: (req, res)=>
logger.warn "disconecting everyone"
EditorRealTimeController.emitToAll 'forceDisconnect', "Sorry, we are performing a quick update to the editor and need to close it down. Please refresh the page to continue."
res.send(200)
res.sendStatus(200)
closeEditor : (req, res)->
logger.warn "closing editor"
Settings.editorIsOpen = req.body.isOpen
res.send(200)
res.sendStatus(200)
writeAllToMongo : (req, res)->
logger.log "writing all docs to mongo"
@ -74,19 +74,19 @@ module.exports = AdminController =
flushProjectToTpds: (req, res)->
projectEntityHandler.flushProjectToThirdPartyDataStore req.body.project_id, (err)->
res.send 200
res.sendStatus 200
pollDropboxForUser: (req, res)->
user_id = req.body.user_id
TpdsUpdateSender.pollDropboxForUser user_id, () ->
res.send 200
res.sendStatus 200
createMessage: (req, res, next) ->
SystemMessageManager.createMessage req.body.content, (error) ->
return next(error) if error?
res.send 200
res.sendStatus 200
clearMessages: (req, res, next) ->
SystemMessageManager.clearMessages (error) ->
return next(error) if error?
res.send 200
res.sendStatus 200

View file

@ -11,4 +11,4 @@ module.exports = SpellingController =
getReq.pipe(res)
getReq.on "error", (error) ->
logger.error err: error, "Spelling API error"
res.send 500
res.sendStatus 500

View file

@ -147,8 +147,8 @@ module.exports = SubscriptionController =
SubscriptionHandler.createSubscription user, subscriptionDetails, recurly_token_id, (err)->
if err?
logger.err err:err, user_id:user._id, "something went wrong creating subscription"
return res.send 500
res.send 201
return res.sendStatus 500
res.sendStatus 201
successful_subscription: (req, res)->
SecurityManager.getCurrentUser req, (error, user) =>
@ -191,9 +191,9 @@ module.exports = SubscriptionController =
if req.body? and req.body["expired_subscription_notification"]?
recurlySubscription = req.body["expired_subscription_notification"].subscription
SubscriptionHandler.recurlyCallback recurlySubscription, ->
res.send 200
res.sendStatus 200
else
res.send 200
res.sendStatus 200
renderUpgradeToAnnualPlanPage: (req, res)->
SecurityManager.getCurrentUser req, (error, user) ->
@ -221,9 +221,9 @@ module.exports = SubscriptionController =
SubscriptionHandler.updateSubscription user, annualPlanName, coupon_code, (err)->
if err?
logger.err err:err, user_id:user._id, "error updating subscription"
res.send 500
res.sendStatus 500
else
res.send 200
res.sendStatus 200
recurlyNotificationParser: (req, res, next) ->

View file

@ -62,9 +62,9 @@ module.exports =
return ErrorsController.notFound(req, res)
SubscriptionGroupHandler.sendVerificationEmail subscription_id, licence.name, req.session.user.email, (err)->
if err?
res.send 500
res.sendStatus 500
else
res.send 200
res.sendStatus 200
completeJoin: (req, res)->
subscription_id = req.params.subscription_id
@ -74,7 +74,7 @@ module.exports =
if err? and err == "token_not_found"
res.redirect "/user/subscription/#{subscription_id}/group/invited?expired=true"
else if err?
res.send 500
res.sendStatus 500
else
res.redirect "/user/subscription/#{subscription_id}/group/successful-join"

View file

@ -17,10 +17,10 @@ module.exports =
logger.log user_id:user_id, filePath:filePath, fullPath:req.params[0], "sending response that tpdsUpdate has been completed"
if err?
logger.err err:err, user_id:user_id, filePath:filePath, "error reciving update from tpds"
res.send(500)
res.sendStatus(500)
else
logger.log user_id:user_id, filePath:filePath, projectName:projectName, "telling tpds update has been processed"
res.send 200
res.sendStatus 200
deleteUpdate: (req, res)->
@ -31,10 +31,10 @@ module.exports =
tpdsUpdateHandler.deleteUpdate user_id, projectName, filePath, source, (err)->
if err?
logger.err err:err, user_id:user_id, filePath:filePath, "error reciving update from tpds"
res.send(500)
res.sendStatus(500)
else
logger.log user_id:user_id, filePath:filePath, projectName:projectName, "telling tpds delete has been processed"
res.send 200
res.sendStatus 200
# updateProjectContents and deleteProjectContents are used by GitHub. The project_id is known so we
# can skip right ahead to creating/updating/deleting the file. These methods will not ignore noisy
@ -47,7 +47,7 @@ module.exports =
logger.log project_id: project_id, path: path, source: source, "received project contents update"
UpdateMerger.mergeUpdate project_id, path, req, source, (error) ->
return next(error) if error?
res.send(200)
res.sendStatus(200)
deleteProjectContents: (req, res, next = (error) ->) ->
{project_id} = req.params
@ -56,7 +56,7 @@ module.exports =
logger.log project_id: project_id, path: path, source: source, "received project contents delete request"
UpdateMerger.deleteUpdate project_id, path, source, (error) ->
return next(error) if error?
res.send(200)
res.sendStatus(200)
parseParams: parseParams = (req)->
path = req.params[0]

View file

@ -21,7 +21,7 @@ module.exports =
UserDeleter.deleteUser user_id, (err)->
if !err?
req.session?.destroy()
res.send(200)
res.sendStatus(200)
unsubscribe: (req, res)->
UserLocator.findById req.session.user._id, (err, user)->
@ -34,7 +34,7 @@ module.exports =
User.findById user_id, (err, user)->
if err? or !user?
logger.err err:err, user_id:user_id, "problem updaing user settings"
return res.send 500
return res.sendStatus 500
if req.body.first_name?
user.first_name = req.body.first_name.trim()
@ -59,9 +59,9 @@ module.exports =
user.save (err)->
newEmail = req.body.email?.trim().toLowerCase()
if !newEmail? or newEmail == user.email
return res.send 200
return res.sendStatus 200
else if newEmail.indexOf("@") == -1
return res.send(400)
return res.sendStatus(400)
else
UserUpdater.changeEmailAddress user_id, newEmail, (err)->
if err?
@ -71,7 +71,7 @@ module.exports =
else
message = req.i18n.translate("problem_changing_email_address")
return res.send 500, {message:message}
res.send(200)
res.sendStatus(200)
logout : (req, res)->
metrics.inc "user.logout"
@ -84,7 +84,7 @@ module.exports =
register : (req, res, next = (error) ->)->
email = req.body.email
if !email? or email == ""
res.send 422 # Unprocessable Entity
res.sendStatus 422 # Unprocessable Entity
return
logger.log {email}, "registering new user"
UserRegistrationHandler.registerNewUser {

View file

@ -212,6 +212,6 @@ module.exports = class Router
webRouter.post '/error/client', (req, res, next) ->
logger.error err: req.body.error, meta: req.body.meta, "client side error"
res.send(204)
res.sendStatus(204)
webRouter.get '*', ErrorController.notFound

View file

@ -91,7 +91,7 @@ describe "CollaboratorsController", ->
@req.params =
Project_id: @project_id = "project-id-123"
user_id: @user_id = "user-id-123"
@res.send = sinon.stub()
@res.sendStatus = sinon.stub()
@EditorController.removeUserFromProject = sinon.stub().callsArg(2)
@CollaboratorsController.removeUserFromProject @req, @res
@ -101,7 +101,7 @@ describe "CollaboratorsController", ->
.should.equal true
it "should send the back a success response", ->
@res.send.calledWith(204).should.equal true
@res.sendStatus.calledWith(204).should.equal true
describe "_formatCollaborators", ->

View file

@ -321,7 +321,7 @@ describe "CompileController", ->
@CompileManager.deleteAuxFiles = sinon.stub().callsArg(1)
@req.params =
Project_id: @project_id
@res.send = sinon.stub()
@res.sendStatus = sinon.stub()
@CompileController.deleteAuxFiles @req, @res, @next
it "should proxy to the CLSI", ->
@ -330,7 +330,7 @@ describe "CompileController", ->
.should.equal true
it "should return a 200", ->
@res.send
@res.sendStatus
.calledWith(200)
.should.equal true

View file

@ -24,6 +24,7 @@ describe "EditorHttpController", ->
@req = {}
@res =
send: sinon.stub()
sendStatus: sinon.stub()
json: sinon.stub()
@callback = sinon.stub()
@ -190,7 +191,7 @@ describe "EditorHttpController", ->
@EditorHttpController.addDoc @req, @res
it "should send back a bad request status code", ->
@res.send.calledWith(400).should.equal true
@res.sendStatus.calledWith(400).should.equal true
describe "addFolder", ->
beforeEach ->
@ -223,7 +224,7 @@ describe "EditorHttpController", ->
@EditorHttpController.addFolder @req, @res
it "should send back a bad request status code", ->
@res.send.calledWith(400).should.equal true
@res.sendStatus.calledWith(400).should.equal true
describe "renameEntity", ->
@ -243,7 +244,7 @@ describe "EditorHttpController", ->
.should.equal true
it "should send back a success response", ->
@res.send.calledWith(204).should.equal true
@res.sendStatus.calledWith(204).should.equal true
describe "renameEntity with long name", ->
beforeEach ->
@ -257,7 +258,7 @@ describe "EditorHttpController", ->
@EditorHttpController.renameEntity @req, @res
it "should send back a bad request status code", ->
@res.send.calledWith(400).should.equal true
@res.sendStatus.calledWith(400).should.equal true
describe "rename entity with 0 length name", ->
@ -272,7 +273,7 @@ describe "EditorHttpController", ->
@EditorHttpController.renameEntity @req, @res
it "should send back a bad request status code", ->
@res.send.calledWith(400).should.equal true
@res.sendStatus.calledWith(400).should.equal true
describe "moveEntity", ->
@ -292,7 +293,7 @@ describe "EditorHttpController", ->
.should.equal true
it "should send back a success response", ->
@res.send.calledWith(204).should.equal true
@res.sendStatus.calledWith(204).should.equal true
describe "deleteEntity", ->
beforeEach ->
@ -309,4 +310,4 @@ describe "EditorHttpController", ->
.should.equal true
it "should send back a success response", ->
@res.send.calledWith(204).should.equal true
@res.sendStatus.calledWith(204).should.equal true

View file

@ -51,7 +51,7 @@ describe "PasswordResetController", ->
it "should tell the handler to process that email", (done)->
@RateLimiter.addCount.callsArgWith(1, null, true)
@PasswordResetHandler.generateAndEmailResetToken.callsArgWith(1, null, true)
@res.send = (code)=>
@res.sendStatus = (code)=>
code.should.equal 200
@PasswordResetHandler.generateAndEmailResetToken.calledWith(@email.trim()).should.equal true
done()
@ -78,7 +78,7 @@ describe "PasswordResetController", ->
@req.body.email = @email
@RateLimiter.addCount.callsArgWith(1, null, true)
@PasswordResetHandler.generateAndEmailResetToken.callsArgWith(1, null, true)
@res.send = (code)=>
@res.sendStatus = (code)=>
code.should.equal 200
@PasswordResetHandler.generateAndEmailResetToken.calledWith(@email.toLowerCase()).should.equal true
done()
@ -88,7 +88,7 @@ describe "PasswordResetController", ->
it "should tell the user handler to reset the password", (done)->
@PasswordResetHandler.setNewUserPassword.callsArgWith(2, null, true)
@res.send = (code)=>
@res.sendStatus = (code)=>
code.should.equal 200
@PasswordResetHandler.setNewUserPassword.calledWith(@token, @password).should.equal true
done()
@ -104,7 +104,7 @@ describe "PasswordResetController", ->
it "should return 400 (Bad Request) if there is no password", (done)->
@req.body.password = ""
@PasswordResetHandler.setNewUserPassword.callsArgWith(2)
@res.send = (code)=>
@res.sendStatus = (code)=>
code.should.equal 400
@PasswordResetHandler.setNewUserPassword.called.should.equal false
done()
@ -113,7 +113,7 @@ describe "PasswordResetController", ->
it "should return 400 (Bad Request) if there is no passwordResetToken", (done)->
@req.body.passwordResetToken = ""
@PasswordResetHandler.setNewUserPassword.callsArgWith(2)
@res.send = (code)=>
@res.sendStatus = (code)=>
code.should.equal 400
@PasswordResetHandler.setNewUserPassword.called.should.equal false
done()

View file

@ -36,7 +36,7 @@ describe 'Project api controller', ->
it "should send a 500 if there is an error", (done)->
@ProjectDetailsHandler.getDetails.callsArgWith(1, "error")
@res.send = (resCode)=>
@res.sendStatus = (resCode)=>
resCode.should.equal 500
done()
@controller.getProjectDetails @req, @res

View file

@ -78,7 +78,7 @@ describe "ProjectController", ->
@EditorController.renameProject = sinon.stub().callsArg(2)
@req.body =
name: @name = "New name"
@res.send = (code) =>
@res.sendStatus = (code) =>
@EditorController.renameProject
.calledWith(@project_id, @name)
.should.equal true
@ -90,7 +90,7 @@ describe "ProjectController", ->
@EditorController.setCompiler = sinon.stub().callsArg(2)
@req.body =
compiler: @compiler = "pdflatex"
@res.send = (code) =>
@res.sendStatus = (code) =>
@EditorController.setCompiler
.calledWith(@project_id, @compiler)
.should.equal true
@ -102,7 +102,7 @@ describe "ProjectController", ->
@EditorController.setSpellCheckLanguage = sinon.stub().callsArg(2)
@req.body =
spellCheckLanguage: @languageCode = "fr"
@res.send = (code) =>
@res.sendStatus = (code) =>
@EditorController.setSpellCheckLanguage
.calledWith(@project_id, @languageCode)
.should.equal true
@ -114,7 +114,7 @@ describe "ProjectController", ->
@EditorController.setPublicAccessLevel = sinon.stub().callsArg(2)
@req.body =
publicAccessLevel: @publicAccessLevel = "readonly"
@res.send = (code) =>
@res.sendStatus = (code) =>
@EditorController.setPublicAccessLevel
.calledWith(@project_id, @publicAccessLevel)
.should.equal true
@ -126,7 +126,7 @@ describe "ProjectController", ->
@EditorController.setRootDoc = sinon.stub().callsArg(2)
@req.body =
rootDocId: @rootDocId = "root-doc-id"
@res.send = (code) =>
@res.sendStatus = (code) =>
@EditorController.setRootDoc
.calledWith(@project_id, @rootDocId)
.should.equal true
@ -136,7 +136,7 @@ describe "ProjectController", ->
describe "deleteProject", ->
it "should tell the project deleter to archive when forever=false", (done)->
@res.send = (code)=>
@res.sendStatus = (code)=>
@ProjectDeleter.archiveProject.calledWith(@project_id).should.equal true
code.should.equal 200
done()
@ -144,7 +144,7 @@ describe "ProjectController", ->
it "should tell the project deleter to delete when forever=true", (done)->
@req.query = forever: "true"
@res.send = (code)=>
@res.sendStatus = (code)=>
@ProjectDeleter.deleteProject.calledWith(@project_id).should.equal true
code.should.equal 200
done()
@ -152,7 +152,7 @@ describe "ProjectController", ->
describe "restoreProject", ->
it "should tell the project deleter", (done)->
@res.send = (code)=>
@res.sendStatus = (code)=>
@ProjectDeleter.restoreProject.calledWith(@project_id).should.equal true
code.should.equal 200
done()
@ -244,7 +244,7 @@ describe "ProjectController", ->
it "should call the editor controller", (done)->
@EditorController.renameProject.callsArgWith(2)
@res.send = (code)=>
@res.sendStatus = (code)=>
code.should.equal 200
@EditorController.renameProject.calledWith(@project_id, @newProjectName).should.equal true
done()
@ -252,7 +252,7 @@ describe "ProjectController", ->
it "should send a 500 if there is a problem", (done)->
@EditorController.renameProject.callsArgWith(2, "problem")
@res.send = (code)=>
@res.sendStatus = (code)=>
code.should.equal 500
@EditorController.renameProject.calledWith(@project_id, @newProjectName).should.equal true
done()
@ -260,7 +260,7 @@ describe "ProjectController", ->
it "should return an error if the name is over 150 chars", (done)->
@req.body.newProjectName = "EDMUBEEBKBXUUUZERMNSXFFWIBHGSDAWGMRIQWJBXGWSBVWSIKLFPRBYSJEKMFHTRZBHVKJSRGKTBHMJRXPHORFHAKRNPZGGYIOTEDMUBEEBKBXUUUZERMNSXFFWIBHGSDAWGMRIQWJBXGWSBVWSIKLFPRBYSJEKMFHTRZBHVKJSRGKTBHMJRXPHORFHAKRNPZGGYIOT"
@res.send = (code)=>
@res.sendStatus = (code)=>
code.should.equal 400
done()
@ProjectController.renameProject @req, @res
@ -317,7 +317,7 @@ describe "ProjectController", ->
it "should not render the page if the project can not be accessed", (done)->
@SecurityManager.userCanAccessProject = sinon.stub().callsArgWith 2, false
@res.send = (resCode, opts)=>
@res.sendStatus = (resCode, opts)=>
resCode.should.equal 401
done()
@ProjectController.loadEditor @req, @res

View file

@ -285,9 +285,9 @@ describe "SubscriptionController sanboxed", ->
describe "createSubscription", ->
beforeEach (done)->
@res =
send:->
sendStatus:->
done()
sinon.spy @res, "send"
sinon.spy @res, "sendStatus"
@subscriptionDetails =
card:"1234"
cvv:"123"
@ -300,7 +300,7 @@ describe "SubscriptionController sanboxed", ->
done()
it "should redurect to the subscription page", (done)->
@res.send.calledWith(201).should.equal true
@res.sendStatus.calledWith(201).should.equal true
done()
@ -363,9 +363,9 @@ describe "SubscriptionController sanboxed", ->
expired_subscription_notification:
subscription:
uuid: @activeRecurlySubscription.uuid
@res = send:->
@res = sendStatus:->
done()
sinon.spy @res, "send"
sinon.spy @res, "sendStatus"
@SubscriptionController.recurlyCallback @req, @res
it "should tell the SubscriptionHandler to process the recurly callback", (done)->
@ -374,7 +374,7 @@ describe "SubscriptionController sanboxed", ->
it "should send a 200", (done)->
@res.send.calledWith(200)
@res.sendStatus.calledWith(200)
done()
describe "with a non-actionable request", ->
@ -385,16 +385,16 @@ describe "SubscriptionController sanboxed", ->
new_subscription_notification:
subscription:
uuid: @activeRecurlySubscription.uuid
@res = send:->
@res = sendStatus:->
done()
sinon.spy @res, "send"
sinon.spy @res, "sendStatus"
@SubscriptionController.recurlyCallback @req, @res
it "should not call the subscriptionshandler", ->
@SubscriptionHandler.recurlyCallback.called.should.equal false
it "should respond with a 200 status", ->
@res.send.calledWith(200)
@res.sendStatus.calledWith(200)
describe "renderUpgradeToAnnualPlanPage", ->
@ -442,7 +442,7 @@ describe "SubscriptionController sanboxed", ->
@req.body =
planName:"student"
@res.send = ()=>
@res.sendStatus = ()=>
@SubscriptionHandler.updateSubscription.calledWith(@user, "student-annual", "STUDENTCODEHERE").should.equal true
done()
@ -453,7 +453,7 @@ describe "SubscriptionController sanboxed", ->
@req.body =
planName:"collaborator"
@res.send = (url)=>
@res.sendStatus = (url)=>
@SubscriptionHandler.updateSubscription.calledWith(@user, "collaborator-annual", "COLLABORATORCODEHERE").should.equal true
done()

View file

@ -127,7 +127,7 @@ describe "SubscriptionGroupController", ->
it "should ask the SubscriptionGroupHandler to send the verification email", (done)->
res =
send : (statusCode)=>
sendStatus : (statusCode)=>
statusCode.should.equal 200
@GroupHandler.sendVerificationEmail.calledWith(@subscription_id, @licenceName, @user_email).should.equal true
done()

View file

@ -28,7 +28,7 @@ describe 'TpdsController', ->
headers:
"x-sl-update-source": @source = "dropbox"
@TpdsUpdateHandler.newUpdate = sinon.stub().callsArg(5)
res = send: =>
res = sendStatus: =>
@TpdsUpdateHandler.newUpdate.calledWith(@user_id, "projectName","/here.txt", req, @source).should.equal true
done()
@TpdsController.mergeUpdate req, res
@ -43,7 +43,7 @@ describe 'TpdsController', ->
headers:
"x-sl-update-source": @source = "dropbox"
@TpdsUpdateHandler.deleteUpdate = sinon.stub().callsArg(4)
res = send: =>
res = sendStatus: =>
@TpdsUpdateHandler.deleteUpdate.calledWith(@user_id, "projectName", "/here.txt", @source).should.equal true
done()
@TpdsController.deleteUpdate req, res
@ -86,7 +86,7 @@ describe 'TpdsController', ->
headers:
"x-sl-update-source": @source = "github"
@res =
send: sinon.stub()
sendStatus: sinon.stub()
@TpdsController.updateProjectContents @req, @res
@ -96,7 +96,7 @@ describe 'TpdsController', ->
.should.equal true
it "should return a success", ->
@res.send.calledWith(200).should.equal true
@res.sendStatus.calledWith(200).should.equal true
describe 'deleteProjectContents', ->
@ -111,7 +111,7 @@ describe 'TpdsController', ->
headers:
"x-sl-update-source": @source = "github"
@res =
send: sinon.stub()
sendStatus: sinon.stub()
@TpdsController.deleteProjectContents @req, @res
@ -121,5 +121,5 @@ describe 'TpdsController', ->
.should.equal true
it "should return a success", ->
@res.send.calledWith(200).should.equal true
@res.sendStatus.calledWith(200).should.equal true

View file

@ -78,7 +78,7 @@ describe "UserController", ->
it "should delete the user", (done)->
@res.send = (code)=>
@res.sendStatus = (code)=>
@UserDeleter.deleteUser.calledWith(@user_id)
code.should.equal 200
done()
@ -98,7 +98,7 @@ describe "UserController", ->
it "should call save", (done)->
@req.body = {}
@res.send = (code)=>
@res.sendStatus = (code)=>
@user.save.called.should.equal true
done()
@UserController.updateUserSettings @req, @res
@ -106,7 +106,7 @@ describe "UserController", ->
it "should set the first name", (done)->
@req.body =
first_name: "bobby "
@res.send = (code)=>
@res.sendStatus = (code)=>
@user.first_name.should.equal "bobby"
done()
@UserController.updateUserSettings @req, @res
@ -114,7 +114,7 @@ describe "UserController", ->
it "should set the role", (done)->
@req.body =
role: "student"
@res.send = (code)=>
@res.sendStatus = (code)=>
@user.role.should.equal "student"
done()
@UserController.updateUserSettings @req, @res
@ -122,7 +122,7 @@ describe "UserController", ->
it "should set the institution", (done)->
@req.body =
institution: "MIT"
@res.send = (code)=>
@res.sendStatus = (code)=>
@user.institution.should.equal "MIT"
done()
@UserController.updateUserSettings @req, @res
@ -130,21 +130,21 @@ describe "UserController", ->
it "should set some props on ace", (done)->
@req.body =
theme: "something"
@res.send = (code)=>
@res.sendStatus = (code)=>
@user.ace.theme.should.equal "something"
done()
@UserController.updateUserSettings @req, @res
it "should send an error if the email is 0 len", (done)->
@req.body.email = ""
@res.send = (code)->
@res.sendStatus = (code)->
code.should.equal 400
done()
@UserController.updateUserSettings @req, @res
it "should send an error if the email does not contain an @", (done)->
@req.body.email = "bob at something dot com"
@res.send = (code)->
@res.sendStatus = (code)->
code.should.equal 400
done()
@UserController.updateUserSettings @req, @res
@ -152,7 +152,7 @@ describe "UserController", ->
it "should call the user updater with the new email and user _id", (done)->
@req.body.email = @newEmail.toUpperCase()
@UserUpdater.changeEmailAddress.callsArgWith(2)
@res.send = (code)=>
@res.sendStatus = (code)=>
code.should.equal 200
@UserUpdater.changeEmailAddress.calledWith(@user_id, @newEmail).should.equal true
done()

View file

@ -22,6 +22,19 @@ class MockResponse
@redirectedTo = url
@callback() if @callback?
sendStatus: (status) ->
if arguments.length < 2
if typeof status != "number"
body = status
status = 200
@statusCode = status
@returned = true
if 200 <= status < 300
@success = true
else
@success = false
@callback() if @callback?
send: (status, body) ->
if arguments.length < 2
if typeof status != "number"