Logic for adding items and validating them

This commit is contained in:
David Underwood
2026-07-15 10:30:28 -04:00
parent 3eebf18fb8
commit 8e28112a8c
5 changed files with 73 additions and 0 deletions
+28
View File
@@ -0,0 +1,28 @@
class Checkout
class InvalidItem < StandardError; end
AVAILABLE_ITEMS = {
PI5: 60.00,
ZERO2W: 15.00,
PICO2: 4.00
}
def initialize
@items = []
end
def add(item)
raise InvalidItem unless valid_item(item)
@items.push item
end
def items
@items
end
private
def valid_item(item)
return AVAILABLE_ITEMS.keys.include?(item)
end
end