class ValidateData

Public Class Methods

isArray() click to toggle source
# File lib/compare-sort.rb, line 72
def self.isArray
        raise "Data must be an array" if (!@data.is_a?(Array))
end
run(data) click to toggle source
# File lib/compare-sort.rb, line 66
def self.run(data)
        @data = data
        self.isArray
        self.valuesAreConsistent
end
valuesAreConsistent() click to toggle source
# File lib/compare-sort.rb, line 76
def self.valuesAreConsistent
        if @data[0].is_a?(String)
                valuesAreStrings
        else
                valuesAreNumbers
        end
end
valuesAreNumbers() click to toggle source
# File lib/compare-sort.rb, line 84
def self.valuesAreNumbers
        @data.each do |datum|
                if (!datum.is_a?(Fixnum) && !datum.is_a?(Float))
                        raise "Values in array must be all numbers OR all strings" 
                end
        end 
end
valuesAreStrings() click to toggle source
# File lib/compare-sort.rb, line 92
def self.valuesAreStrings
        @data.each do |datum|
                if (!datum.is_a?(String))
                        raise "Values in array must be all numbers OR all strings" 
                end
        end 
end