summaryrefslogtreecommitdiff
path: root/lib/gender.rb
blob: ebc05260b03924464743fb1d30f6cb87a7552d5b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# frozen_string_literal: true

# Gender class to handle gender-related operations.
class Gender
  MALE = 'male'
  FEMALE = 'female'

  # Returns all defined genders.
  #
  # @return [Array<String>] An array of all genders.
  def self.all
    [MALE, FEMALE]
  end

  # Checks if the provided gender is valid.
  #
  # @param gender [String] The gender to validate.
  # @return [Boolean] True if the gender is valid, false otherwise.
  def self.valid?(gender)
    return false unless gender.is_a?(String)

    all.include?(gender.downcase)
  end
end