Module: CashRegister::Deals

Defined in:
lib/cash_register/deals.rb

Defined Under Namespace

Classes: InvalidDealError

Class Method Summary collapse

Class Method Details

.find_by_code(code = '') ⇒ Object

Raises:



16
17
18
19
20
# File 'lib/cash_register/deals.rb', line 16

def find_by_code(code = '')
  deal = @deals[code]
  raise InvalidDealError if deal.nil?
  deal
end

.init_deals(deals_json_path) ⇒ Object



9
10
11
12
13
14
# File 'lib/cash_register/deals.rb', line 9

def init_deals(deals_json_path)
  @deals ||= {}
  (JSON.parse(File.read(deals_json_path)) rescue []).map do  |deal|
    @deals[deal['code']] = Deal.new(deal)
  end
end