module StoreAgent::Validator

バリデーションに使用するメソッドを定義したモジュール

Public Instance Methods

validates_to_be_excluded_slash!(value) click to toggle source

文字列中に '/' を含むとエラー

# File lib/store_agent/validator.rb, line 33
def validates_to_be_excluded_slash!(value)
  if value.to_s.include?("/")
    raise ArgumentError, "#{value} includes '/'"
  end
end
validates_to_be_not_guest_identifier!(value) click to toggle source

ゲストユーザーのIDと一致している場合エラー

# File lib/store_agent/validator.rb, line 47
def validates_to_be_not_guest_identifier!(value)
  if value.to_s == StoreAgent.config.guest_identifier
    raise ArgumentError, "#{value} is reserved for guest"
  end
end
validates_to_be_not_nil_value!(accessor_method_name) click to toggle source

アクセサが nil を返す場合エラー

# File lib/store_agent/validator.rb, line 54
def validates_to_be_not_nil_value!(accessor_method_name)
  if send(accessor_method_name).nil?
    raise ArgumentError, "#{accessor_method_name} is nil"
  end
end
validates_to_be_not_superuser_identifier!(value) click to toggle source

スーパーユーザーのIDと一致している場合エラー

# File lib/store_agent/validator.rb, line 40
def validates_to_be_not_superuser_identifier!(value)
  if value.to_s == StoreAgent.config.superuser_identifier
    raise ArgumentError, "#{value} is reserved for superuser"
  end
end
validates_to_be_string_or_symbol!(value) click to toggle source

文字列またはシンボルでないとエラー

# File lib/store_agent/validator.rb, line 21
def validates_to_be_string_or_symbol!(value)
  case
  when value.nil?, value == "", value == :""
    raise ArgumentError, "#{value} is empty string or symbol"
  when !value.is_a?(String) && !value.is_a?(Symbol)
    raise ArgumentError, "#{value} is not string or symbol"
  else
    true
  end
end