2016-09-08 10:25:33 -05:00
|
|
|
# frozen_string_literal: true
|
2016-07-26 17:00:00 -05:00
|
|
|
require 'test_helper'
|
|
|
|
|
|
|
|
class CandidateTest < ActiveSupport::TestCase
|
2016-07-31 14:47:15 -05:00
|
|
|
test "test_hash is auto generated" do
|
|
|
|
candidate = Candidate.create(name: 'new name',
|
|
|
|
email: 'test@mailinator.com',
|
|
|
|
experience: '0-3',
|
2017-02-08 16:05:37 -06:00
|
|
|
project: 'Client',
|
2016-07-31 14:47:15 -05:00
|
|
|
quiz_id: quizzes(:fed).id)
|
|
|
|
|
|
|
|
assert candidate.test_hash.present?
|
|
|
|
end
|
2016-08-26 16:03:55 -05:00
|
|
|
|
|
|
|
test "should encrypt emails" do
|
|
|
|
email = 'test@mailinator.com'
|
|
|
|
candidate = Candidate.create(name: 'new name',
|
|
|
|
email: email,
|
|
|
|
experience: '0-3',
|
2017-02-08 16:05:37 -06:00
|
|
|
project: 'Client',
|
2017-02-27 11:11:28 -06:00
|
|
|
position: 'full-time',
|
2016-08-26 16:03:55 -05:00
|
|
|
recruiter_id: users(:recruiter).id,
|
|
|
|
quiz_id: quizzes(:fed).id)
|
|
|
|
|
|
|
|
sql = "select email from candidates where id = #{candidate.id};"
|
|
|
|
enc_email = ActiveRecord::Base.connection.execute(sql).first.first
|
|
|
|
|
|
|
|
refute_equal email, enc_email
|
|
|
|
end
|
2016-11-20 13:07:53 -06:00
|
|
|
|
|
|
|
test "can build reviewer records" do
|
|
|
|
candidate = candidates(:dawn)
|
|
|
|
|
|
|
|
candidate.build_reviews
|
|
|
|
assert_equal 3, candidate.votes.count
|
|
|
|
end
|
2017-04-18 10:39:49 -05:00
|
|
|
|
|
|
|
test 'can get last answer timestamp' do
|
|
|
|
candidate = candidates(:roy)
|
|
|
|
roy_last = answers(:roy2).updated_at
|
|
|
|
|
|
|
|
assert_equal roy_last, candidate.last_answered_at
|
|
|
|
end
|
|
|
|
|
|
|
|
test 'gillian is stale with no answers' do
|
|
|
|
candidate = candidates(:gillian)
|
|
|
|
|
|
|
|
assert candidate.stale?
|
|
|
|
end
|
|
|
|
|
|
|
|
test 'roy is stale with answers' do
|
|
|
|
candidate = candidates(:roy)
|
|
|
|
|
|
|
|
assert candidate.stale?
|
|
|
|
end
|
2016-07-26 17:00:00 -05:00
|
|
|
end
|