module VWO::Common::Validations

Constants

UTILITIES

Public Instance Methods

valid_hash?(val) click to toggle source

@return [Boolean]

# File lib/vwo/common/validations.rb, line 42
def valid_hash?(val)
  val.is_a?(Hash)
end
valid_number?(val) click to toggle source

@return [Boolean]

# File lib/vwo/common/validations.rb, line 32
def valid_number?(val)
  val.is_a?(Numeric)
end
valid_settings_file?(settings_file) click to toggle source

Validates the project settings_file @param [Hash]: JSON object received from DACDN server or somewhere else,

must be json string representation.

@return [Boolean]

# File lib/vwo/common/validations.rb, line 19
def valid_settings_file?(settings_file)
  settings_file = JSON.parse(settings_file)
  JSON::Validator.validate!(VWO::Common::Schema::SETTINGS_FILE_SCHEMA, settings_file)
rescue StandardError
  false
end
valid_string?(val) click to toggle source

@return [Boolean]

# File lib/vwo/common/validations.rb, line 37
def valid_string?(val)
  val.is_a?(String)
end
valid_utility?(utility, utility_name) click to toggle source

@param [Class] - User defined class instance @param [utility_name] - Name of the utility @return [Boolean]

# File lib/vwo/common/validations.rb, line 49
def valid_utility?(utility, utility_name)
  utility_attributes = UTILITIES[utility_name]
  return false if utility_attributes.nil?

  utility_attributes.each do |attr|
    return false unless method?(utility, attr)
  end
  true
end
valid_value?(val) click to toggle source

@return [Boolean]

# File lib/vwo/common/validations.rb, line 27
def valid_value?(val)
  !val.nil?
end

Private Instance Methods

method?(object, method) click to toggle source

@return [Boolean]

# File lib/vwo/common/validations.rb, line 62
def method?(object, method)
  object.methods.include?(method.to_sym)
end