bug fix: candidate email encryption on empty email
This commit is contained in:
parent
9f23a5d3ce
commit
b74249a05f
@ -26,7 +26,7 @@ class CryptSerializer
|
||||
raise "Attribute was supposed to be a `String`, but was instead a `#{value.class}`"
|
||||
end
|
||||
|
||||
return value if value.nil?
|
||||
return nil if value.blank?
|
||||
|
||||
cipher.encrypt
|
||||
parts = [cipher.random_key, cipher.random_iv, cipher.update(value) + cipher.final]
|
||||
|
@ -78,7 +78,7 @@ class RecruiterControllerTest < ActionDispatch::IntegrationTest
|
||||
assert flash[:success]
|
||||
end
|
||||
|
||||
test "should fail creation with message" do
|
||||
test "should fail creation with improper email format" do
|
||||
setup_auth
|
||||
|
||||
assert_difference("ActionMailer::Base.deliveries.size", 0) do
|
||||
@ -91,4 +91,18 @@ class RecruiterControllerTest < ActionDispatch::IntegrationTest
|
||||
assert assigns(:candidate), "@candidate not present"
|
||||
assert_match(/failed.*save/i, flash[:error])
|
||||
end
|
||||
|
||||
test "should fail creation gracefully with empty email" do
|
||||
setup_auth
|
||||
|
||||
assert_difference("ActionMailer::Base.deliveries.size", 0) do
|
||||
assert_difference("Candidate.count", 0) do
|
||||
post create_candidate_path, params: { candidate:
|
||||
{ name: 'new name', email: "", experience: '0-3', quiz_id: quizzes(:fed).id } }
|
||||
end
|
||||
end
|
||||
assert :success
|
||||
assert assigns(:candidate), "@candidate not present"
|
||||
assert_match(/failed.*save/i, flash[:error])
|
||||
end
|
||||
end
|
||||
|
Loading…
Reference in New Issue
Block a user