Sha256: 5418bba43f75bd2c914491e8795f101f0414ff63d99ac24929b45c09ca3ba986

Contents?: true

Size: 305 Bytes

Versions: 1

Compression:

Stored size: 305 Bytes

Contents

# frozen_string_literal: true

class IsbnValidator < BaseValidator

  CHARACTERS = %w[
    0 1 2 3 4 5 6 7 8 9 x
  ].freeze

  private

  def valid_attr?
    values = value.to_s.gsub(/-| /, "").downcase.chars
    [10, 13].include?(values.size) && values.all? { |chr| CHARACTERS.include?(chr) }
  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
lite-validators-1.8.0 lib/lite/validators/isbn_validator.rb