step "the list is marked as in need of help" do @list.needs_help.should_not be true @list.needs_help! end step "the list is marked as in need of payment" do @list.needs_payment! end step "the user has an active list with a/an :order_status order" do |order_status| @list = create :list, supplier: @supplier, table: @table, user_ids: [@user.id] @product ||= create :product, supplier: @supplier, name: 'Beer', price: 2.34 @order = create :order, order_status.to_sym, supplier: @supplier, list: @list, user: @user @product_order = create :product_order, order: @order, product: @product, quantity: 2, price: 2.34 @user.reload @user.active_list_id = @list.id @user.save case order_status.to_sym when :placed then @supplier.increment_orders_placed_count! when :active then @supplier.increment_orders_in_process_count! end end step "the list changes to another table" do @list.move_to_table! @other_table end step "the list should be marked as closed" do @list.reload @list.state.should == 'closed' end step 'a new order on a table in another section is created' do # @new_section = create :section, title: 'Terrace', supplier: @supplier # @new_table = create :table, number: 59, section: @new_section, supplier: @supplier @new_list = create :list, section: @other_section, table: @other_table, supplier: @supplier, user_ids: [@user.id] @new_order = @new_list.place_order(products: {@product.id => 3}, user: @user) end