class SD3Test
Short Dark Triad Test
Constants
- DOC
- QUESTIONS
Public Class Methods
parse_mach(mach)
click to toggle source
# File lib/jungi/paulhus.rb, line 76 def self.parse_mach(mach) if mach < 1.5 "Strong(#{mach}) Anti-Machivellianism\n" elsif mach < 3.1 "Weak(#{mach}) Anti-Machivellianism\n" elsif mach < 4.3 "Weak(#{mach}) Machivellianism\n" else "Strong(#{mach}) Machivellianism\n" end end
parse_narc(narc)
click to toggle source
# File lib/jungi/paulhus.rb, line 88 def self.parse_narc(narc) if narc < 1.5 "Strong(#{narc}) Anti-Narcissism\n" elsif narc < 2.8 "Weak(#{narc}) Anti-Narcissism\n" elsif narc < 4 "Weak(#{narc}) Narcissism\n" else "Strong(#{narc}) Narcissism\n" end end
parse_psycho(psycho)
click to toggle source
# File lib/jungi/paulhus.rb, line 100 def self.parse_psycho(psycho) if psycho < 1.5 "Strong(#{psycho}) Anti-Psychopathy\n" elsif psycho < 2.4 "Weak(#{psycho}) Anti-Psychopathy\n" elsif psycho < 3 "Weak(#{psycho}) Psychopathy\n" else "Strong(#{psycho}) Psychopathy\n" end end
parse_result(mach, narc, psycho)
click to toggle source
# File lib/jungi/paulhus.rb, line 112 def self.parse_result(mach, narc, psycho) mach = (mach.round 1) narc = (narc.round 1) psycho = (psycho.round 1) parse_mach(mach) << parse_narc(narc) << parse_psycho(psycho) end
Public Instance Methods
result()
click to toggle source
# File lib/jungi/paulhus.rb, line 119 def result mach = (self.Q24 + self.Q19 + self.Q1 + self.Q2 + self.Q10 + self.Q21 + self.Q12 + self.Q22 + self.Q23) / 9.0 narc = (self.Q9 + Question::Answer.reverse_scale(self.Q18) + self.Q8 + self.Q14 + self.Q6 + Question::Answer.reverse_scale(self.Q7) + self.Q15 + Question::Answer.reverse_scale(self.Q11) + self.Q25) / 9.0 psycho = (self.Q20 + Question::Answer.reverse_scale(self.Q5) + self.Q27 + self.Q4 + self.Q13 + self.Q26 + Question::Answer.reverse_scale(self.Q3) + self.Q16 + self.Q17) / 9.0 [mach, narc, psycho] end