lib/astrological_number.rb in astrological-number-0.0.1 vs lib/astrological_number.rb in astrological-number-0.1.0

- old
+ new

@@ -1,29 +1,32 @@ class AstrologicalNumber attr_accessor :date_of_birth, :day, :month, :year + def initialize(dob) + @date_of_birth = dob + @day, @month, @year = dob.split('-') + end + def self.get_number p "Please enter your date_of_birth in dd-mm-yyyy format" - AstrologicalNumber.new(gets) + AstrologicalNumber.new(gets).check_validation end - def initialize(dob) - @date_of_birth = dob + def calculate_number + dob = [day, month, year].join.to_i + total(dob) + end + + def check_validation if valid? - @day, @month, @year = dob.split('-') p "Your Lucky Number is #{calculate_number}" else - p "Please enter date_of_birth in correct format (dd-mm-yyyy) " - AstrologicalNumber.new(gets) + p "Invalid format" + AstrologicalNumber.get_number end end - def calculate_number - dob = [day, month, year].join.to_i - total(dob) - end - private def valid? !((date_of_birth =~ /(0[1-9]|[1-2][0-9]|3[0-1])-(0[1-9]|1[0-2])-\d{4}/).nil?) end @@ -33,9 +36,8 @@ while d!=0 rem = d%10 d = d/10 sum += rem end - sum < 10 ? sum : total(sum) + p (sum < 10 ? sum : total(sum)) end end -