Skip to content

Instantly share code, notes, and snippets.

@Aferencz1987
Created April 21, 2021 22:04
Show Gist options
  • Select an option

  • Save Aferencz1987/56ef5f73542ad34450c74ba8ea471133 to your computer and use it in GitHub Desktop.

Select an option

Save Aferencz1987/56ef5f73542ad34450c74ba8ea471133 to your computer and use it in GitHub Desktop.
1] pry(#<FoodTruck>)> @inventory
=> {#<Item:0x00007f920aa5bb00 @name="Peach Pie (Slice)", @price=3.75>=>35, #<Item:0x00007f920aa5b948 @name="Apple Pie (Slice)", @price=2.5>=>7}
[2] pry(#<FoodTruck>)> @inventory.each do |item|
[2] pry(#<FoodTruck>)*   (item.price)*(item.value)
[2] pry(#<FoodTruck>)* end  
NoMethodError: undefined method `price' for #<Array:0x00007f920a05d248>
from (pry):3:in `block (2 levels) in potential_revenue'
[3] pry(#<FoodTruck>)> @inventory.each do |item|
[3] pry(#<FoodTruck>)*   item.each do |info|
[3] pry(#<FoodTruck>)*     info.price * item.values
[3] pry(#<FoodTruck>)*   end  
[3] pry(#<FoodTruck>)* end  
NoMethodError: undefined method `values' for #<Array:0x00007f920a14b678>
Did you mean?  values_at
from (pry):7:in `block (3 levels) in potential_revenue'
[4] pry(#<FoodTruck>)> @inventory
=> {#<Item:0x00007f920aa5bb00 @name="Peach Pie (Slice)", @price=3.75>=>35, #<Item:0x00007f920aa5b948 @name="Apple Pie (Slice)", @price=2.5>=>7}
[5] pry(#<FoodTruck>)> @inventory[1]
=> nil
[6] pry(#<FoodTruck>)> @inventory.each do |item|
[6] pry(#<FoodTruck>)*   item[key].price * item.values
[6] pry(#<FoodTruck>)* end  
NameError: undefined local variable or method `key' for #<FoodTruck:0x00007f920aa5bd30>
from (pry):13:in `block (2 levels) in potential_revenue'
[7] pry(#<FoodTruck>)> @inventory[item]
=> nil
[8] pry(#<FoodTruck>)> @inventory[item1]
NameError: undefined local variable or method `item1' for #<FoodTruck:0x00007f920aa5bd30>
Did you mean?  item
from (pry):16:in `block in potential_revenue'
[9] pry(#<FoodTruck>)> inventory
=> {#<Item:0x00007f920aa5bb00 @name="Peach Pie (Slice)", @price=3.75>=>35, #<Item:0x00007f920aa5b948 @name="Apple Pie (Slice)", @price=2.5>=>7}
[10] pry(#<FoodTruck>)> inventory.to_a
=> [[#<Item:0x00007f920aa5bb00 @name="Peach Pie (Slice)", @price=3.75>, 35], [#<Item:0x00007f920aa5b948 @name="Apple Pie (Slice)", @price=2.5>, 7]]
[11] pry(#<FoodTruck>)> inventory.to_a.each do |item|
[11] pry(#<FoodTruck>)*   item[1]*item[2]
[11] pry(#<FoodTruck>)* end  
TypeError: nil can't be coerced into Integer
from (pry):20:in `*'
[12] pry(#<FoodTruck>)> info = inventory.to_a
=> [[#<Item:0x00007f920aa5bb00 @name="Peach Pie (Slice)", @price=3.75>, 35], [#<Item:0x00007f920aa5b948 @name="Apple Pie (Slice)", @price=2.5>, 7]]
[13] pry(#<FoodTruck>)> info[1]
=> [#<Item:0x00007f920aa5b948 @name="Apple Pie (Slice)", @price=2.5>, 7]
[14] pry(#<FoodTruck>)> inventory
=> {#<Item:0x00007f920aa5bb00 @name="Peach Pie (Slice)", @price=3.75>=>35, #<Item:0x00007f920aa5b948 @name="Apple Pie (Slice)", @price=2.5>=>7}
[15] pry(#<FoodTruck>)> inventory.sum do |item|
[15] pry(#<FoodTruck>)*   inventory.keys
[15] pry(#<FoodTruck>)* end  
TypeError: Array can't be coerced into Integer
from (pry):25:in `+'
[16] pry(#<FoodTruck>)> inventory.items
NoMethodError: undefined method `items' for #<Hash:0x00007f920aa5bc90>
from (pry):28:in `block in potential_revenue'
[17] pry(#<FoodTruck>)> inventory.keys
=> [#<Item:0x00007f920aa5bb00 @name="Peach Pie (Slice)", @price=3.75>, #<Item:0x00007f920aa5b948 @name="Apple Pie (Slice)", @price=2.5>]
[18] pry(#<FoodTruck>)> inventory.keys[1].price
=> 2.5
[19] pry(#<FoodTruck>)> test = inventory.map do |items|
[19] pry(#<FoodTruck>)*   items.keys.each do |item|
[19] pry(#<FoodTruck>)*     item.price * items.values
[19] pry(#<FoodTruck>)*   end  
[19] pry(#<FoodTruck>)* end  
NoMethodError: undefined method `keys' for #<Array:0x00007f920a100240>
from (pry):32:in `block (2 levels) in potential_revenue'
[20] pry(#<FoodTruck>)> inventory
=> {#<Item:0x00007f920aa5bb00 @name="Peach Pie (Slice)", @price=3.75>=>35, #<Item:0x00007f920aa5b948 @name="Apple Pie (Slice)", @price=2.5>=>7}
[21] pry(#<FoodTruck>)> inventory[1]
=> nil
[22] pry(#<FoodTruck>)> inventory.price
NoMethodError: undefined method `price' for #<Hash:0x00007f920aa5bc90>
from (pry):38:in `block in potential_revenue'


food_trucks
=> [#<FoodTruck:0x00007fd47b8690f0
  @inventory={#<Item:0x00007fd47b8694d8 @name="Peach Pie (Slice)", @price=3.75>=>35, #<Item:0x00007fd47b8693e8 @name="Apple Pie (Slice)", @price=2.5>=>7},
  @name="Rocky Mountain Pies">,
 #<FoodTruck:0x00007fd47b869028
  @inventory={#<Item:0x00007fd47b8691e0 @name="Banana Nice Cream", @price=4.25>=>50, #<Item:0x00007fd47b8692d0 @name="Peach-Raspberry Nice Cream", @price=5.3>=>25},
  @name="Ba-Nom-a-Nom">,
 #<FoodTruck:0x00007fd47b868fb0
  @inventory={#<Item:0x00007fd47b8694d8 @name="Peach Pie (Slice)", @price=3.75>=>65, #<Item:0x00007fd47b8692d0 @name="Peach-Raspberry Nice Cream", @price=5.3>=>10},
  @name="Palisade Peach Shack">]
[3] pry(#<Event>)> food_trucks.map do |truck|
[3] pry(#<Event>)*   truck.inventory
[3] pry(#<Event>)* end  
=> [{#<Item:0x00007fd47b8694d8 @name="Peach Pie (Slice)", @price=3.75>=>35, #<Item:0x00007fd47b8693e8 @name="Apple Pie (Slice)", @price=2.5>=>7},
 {#<Item:0x00007fd47b8691e0 @name="Banana Nice Cream", @price=4.25>=>50, #<Item:0x00007fd47b8692d0 @name="Peach-Raspberry Nice Cream", @price=5.3>=>25},
 {#<Item:0x00007fd47b8694d8 @name="Peach Pie (Slice)", @price=3.75>=>65, #<Item:0x00007fd47b8692d0 @name="Peach-Raspberry Nice Cream", @price=5.3>=>10}]
[4] pry(#<Event>)> truck_inventory = food_trucks.map do |truck|
[4] pry(#<Event>)*   truck.inventory  
[4] pry(#<Event>)* end  
=> [{#<Item:0x00007fd47b8694d8 @name="Peach Pie (Slice)", @price=3.75>=>35, #<Item:0x00007fd47b8693e8 @name="Apple Pie (Slice)", @price=2.5>=>7},
 {#<Item:0x00007fd47b8691e0 @name="Banana Nice Cream", @price=4.25>=>50, #<Item:0x00007fd47b8692d0 @name="Peach-Raspberry Nice Cream", @price=5.3>=>25},
 {#<Item:0x00007fd47b8694d8 @name="Peach Pie (Slice)", @price=3.75>=>65, #<Item:0x00007fd47b8692d0 @name="Peach-Raspberry Nice Cream", @price=5.3>=>10}]
[5] pry(#<Event>)> truck_inventory
=> [{#<Item:0x00007fd47b8694d8 @name="Peach Pie (Slice)", @price=3.75>=>35, #<Item:0x00007fd47b8693e8 @name="Apple Pie (Slice)", @price=2.5>=>7},
 {#<Item:0x00007fd47b8691e0 @name="Banana Nice Cream", @price=4.25>=>50, #<Item:0x00007fd47b8692d0 @name="Peach-Raspberry Nice Cream", @price=5.3>=>25},
 {#<Item:0x00007fd47b8694d8 @name="Peach Pie (Slice)", @price=3.75>=>65, #<Item:0x00007fd47b8692d0 @name="Peach-Raspberry Nice Cream", @price=5.3>=>10}]
[6] pry(#<Event>)> names = truck_inventory.map do |items|
[6] pry(#<Event>)*   items.keys.name
[6] pry(#<Event>)* end  
NoMethodError: undefined method `name' for #<Array:0x00007fd47ca5d568>
from (pry):11:in `block in total_inventory'
[7] pry(#<Event>)> truck.inventory[0]  
NameError: undefined local variable or method `truck' for #<Event:0x00007fd47b8695f0>
Did you mean?  true
from (pry):13:in `total_inventory'
[8] pry(#<Event>)> truck.inventory
NameError: undefined local variable or method `truck' for #<Event:0x00007fd47b8695f0>
Did you mean?  true
from (pry):14:in `total_inventory'
[9] pry(#<Event>)> truck_inventory
=> [{#<Item:0x00007fd47b8694d8 @name="Peach Pie (Slice)", @price=3.75>=>35, #<Item:0x00007fd47b8693e8 @name="Apple Pie (Slice)", @price=2.5>=>7},
 {#<Item:0x00007fd47b8691e0 @name="Banana Nice Cream", @price=4.25>=>50, #<Item:0x00007fd47b8692d0 @name="Peach-Raspberry Nice Cream", @price=5.3>=>25},
 {#<Item:0x00007fd47b8694d8 @name="Peach Pie (Slice)", @price=3.75>=>65, #<Item:0x00007fd47b8692d0 @name="Peach-Raspberry Nice Cream", @price=5.3>=>10}]
[10] pry(#<Event>)> truck_inventory[1]
=> {#<Item:0x00007fd47b8691e0 @name="Banana Nice Cream", @price=4.25>=>50, #<Item:0x00007fd47b8692d0 @name="Peach-Raspberry Nice Cream", @price=5.3>=>25}
[11] pry(#<Event>)> truck_inventory[1].keys
=> [#<Item:0x00007fd47b8691e0 @name="Banana Nice Cream", @price=4.25>, #<Item:0x00007fd47b8692d0 @name="Peach-Raspberry Nice Cream", @price=5.3>]
[12] pry(#<Event>)> truck_inventory[1].keys[0]
=> #<Item:0x00007fd47b8691e0 @name="Banana Nice Cream", @price=4.25>
[13] pry(#<Event>)> truck_inventory[1].keys[0].name
=> "Banana Nice Cream"
[14] pry(#<Event>)> truck_inventory.flat_map do |items|
[14] pry(#<Event>)*   items.keys
[14] pry(#<Event>)* end  
=> [#<Item:0x00007fd47b8694d8 @name="Peach Pie (Slice)", @price=3.75>,
 #<Item:0x00007fd47b8693e8 @name="Apple Pie (Slice)", @price=2.5>,
 #<Item:0x00007fd47b8691e0 @name="Banana Nice Cream", @price=4.25>,
 #<Item:0x00007fd47b8692d0 @name="Peach-Raspberry Nice Cream", @price=5.3>,
 #<Item:0x00007fd47b8694d8 @name="Peach Pie (Slice)", @price=3.75>,
 #<Item:0x00007fd47b8692d0 @name="Peach-Raspberry Nice Cream", @price=5.3>]
 
 pry(#<Event>)> inventory_hash
=> {#<Item:0x00007fbd001fc920 @name="Peach Pie (Slice)", @price=3.75>=>[],
 #<Item:0x00007fbd001fc830 @name="Apple Pie (Slice)", @price=2.5>=>[],
 #<Item:0x00007fbd001fc560 @name="Banana Nice Cream", @price=4.25>=>[],
 #<Item:0x00007fbd001fc740 @name="Peach-Raspberry Nice Cream", @price=5.3>=>[]}
[2] pry(#<Event>)> truck_inventory
=> [{#<Item:0x00007fbd001fc920 @name="Peach Pie (Slice)", @price=3.75>=>35, #<Item:0x00007fbd001fc830 @name="Apple Pie (Slice)", @price=2.5>=>7},
 {#<Item:0x00007fbd001fc560 @name="Banana Nice Cream", @price=4.25>=>50, #<Item:0x00007fbd001fc740 @name="Peach-Raspberry Nice Cream", @price=5.3>=>25},
 {#<Item:0x00007fbd001fc920 @name="Peach Pie (Slice)", @price=3.75>=>65, #<Item:0x00007fbd001fc740 @name="Peach-Raspberry Nice Cream", @price=5.3>=>10}]
[3] pry(#<Event>)> truck_inventory.values
NoMethodError: undefined method `values' for #<Array:0x00007fbd001fc218>
Did you mean?  values_at
from (pry):3:in `total_inventory'
[4] pry(#<Event>)> test = truck_inventory.each do |item|
[4] pry(#<Event>)*   inventory_hash[item] = item.values
[4] pry(#<Event>)* end  
=> [{#<Item:0x00007fbd001fc920 @name="Peach Pie (Slice)", @price=3.75>=>35, #<Item:0x00007fbd001fc830 @name="Apple Pie (Slice)", @price=2.5>=>7},
 {#<Item:0x00007fbd001fc560 @name="Banana Nice Cream", @price=4.25>=>50, #<Item:0x00007fbd001fc740 @name="Peach-Raspberry Nice Cream", @price=5.3>=>25},
 {#<Item:0x00007fbd001fc920 @name="Peach Pie (Slice)", @price=3.75>=>65, #<Item:0x00007fbd001fc740 @name="Peach-Raspberry Nice Cream", @price=5.3>=>10}]
[5] pry(#<Event>)> test
=> [{#<Item:0x00007fbd001fc920 @name="Peach Pie (Slice)", @price=3.75>=>35, #<Item:0x00007fbd001fc830 @name="Apple Pie (Slice)", @price=2.5>=>7},
 {#<Item:0x00007fbd001fc560 @name="Banana Nice Cream", @price=4.25>=>50, #<Item:0x00007fbd001fc740 @name="Peach-Raspberry Nice Cream", @price=5.3>=>25},
 {#<Item:0x00007fbd001fc920 @name="Peach Pie (Slice)", @price=3.75>=>65, #<Item:0x00007fbd001fc740 @name="Peach-Raspberry Nice Cream", @price=5.3>=>10}]
[6] pry(#<Event>)> !!!


Finished in 5 minutes 37 seconds (files took 0.13802 seconds to load)
5 examples, 0 failures

/Users/alexferencz/turing/attempt_2_MOD1/IC/fte_2103 main $rspec spec/event_spec.rb
....F

Failures:

  1) Event calculates
     Failure/Error: items.keys.name
     
     NoMethodError:
       undefined method `name' for #<Array:0x00007faa0506ba88>
     # ./lib/event.rb:37:in `block in total_inventory'
     # ./lib/event.rb:36:in `each'
     # ./lib/event.rb:36:in `group_by'
     # ./lib/event.rb:36:in `total_inventory'
     # ./spec/event_spec.rb:79:in `block (2 levels) in <top (required)>'

Finished in 0.00629 seconds (files took 0.13848 seconds to load)
5 examples, 1 failure

Failed examples:

rspec ./spec/event_spec.rb:61 # Event calculates

/Users/alexferencz/turing/attempt_2_MOD1/IC/fte_2103 main $rspec spec/event_spec.rb
....F

Failures:

  1) Event calculates
     Failure/Error: items.name
     
     NoMethodError:
       undefined method `name' for #<Hash:0x00007fe55f8cbf58>
     # ./lib/event.rb:37:in `block in total_inventory'
     # ./lib/event.rb:36:in `each'
     # ./lib/event.rb:36:in `group_by'
     # ./lib/event.rb:36:in `total_inventory'
     # ./spec/event_spec.rb:79:in `block (2 levels) in <top (required)>'

Finished in 0.00387 seconds (files took 0.09756 seconds to load)
5 examples, 1 failure

Failed examples:

rspec ./spec/event_spec.rb:61 # Event calculates
@Arique1104
Copy link
Copy Markdown

Let me know through text, please.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment