aboutsummaryrefslogblamecommitdiffstats
path: root/activejob/test/models/person.rb
blob: 9a3bfab25f0ca60759422f6e82a958873c603b02 (plain) (tree)
1
2
3
4
5
6
7
8
9
                             
 
            

                                           
                                  
 
                 
 
                   
                                                                                

           
 


                    
 
                      
                                                                 
     
   
# frozen_string_literal: true

class Person
  class RecordNotFound < StandardError; end

  include GlobalID::Identification

  attr_reader :id

  def self.find(id)
    raise RecordNotFound.new("Cannot find person with ID=404") if id.to_i == 404
    new(id)
  end

  def initialize(id)
    @id = id
  end

  def ==(other_person)
    other_person.is_a?(Person) && id.to_s == other_person.id.to_s
  end
end