Просмотр исходного кода

If sending email fails, return a generic error.

This prevents us from leaking juicy details of our aws/ses setup via the
password-reset form.
Shane Kilkelly 9 лет назад
Родитель
Сommit
69b9b308d4

+ 1 - 1
services/web/app/coffee/Features/Email/EmailSender.coffee

@@ -74,4 +74,4 @@ module.exports =
 					logger.err err:err, "error sending message"
 				else
 					logger.log "Message sent to #{options.to}"
-				callback(err)
+				callback(new Error('Cannot send email'))

+ 3 - 2
services/web/test/UnitTests/coffee/Email/EmailSenderTests.coffee

@@ -58,10 +58,11 @@ describe "EmailSender", ->
 				args.subject.should.equal @opts.subject
 				done()
 
-		it "should return the error", (done)->
+		it "should return a non-specific error", (done)->
 			@sesClient.sendMail.callsArgWith(1, "error")
 			@sender.sendEmail {}, (err)=>
-				err.should.equal "error"
+				err.should.exist
+				err.toString().should.equal 'Error: Cannot send email'
 				done()