Add max quantity field to add to cart form, add end-to-end test for max_quantity

This commit is contained in:
Rohan Mitchell
2012-08-02 14:45:55 +10:00
parent 2db2fbcade
commit c46613877c
2 changed files with 21 additions and 0 deletions

View File

@@ -11,6 +11,8 @@
- else
%p Quantity
= number_field_tag (@product.has_variants? ? :quantity : "variants[#{@product.master.id}]"), 1, :class => 'title', :in => 1..@product.on_hand
%p Max quantity
= number_field_tag (@product.has_variants? ? :max_quantity : "variant_attributes[#{@product.master.id}][max_quantity]"), 1, :class => 'title', :in => 1..@product.on_hand
- order = current_order(false)
- if order.nil? || order.can_change_distributor?
%p Distributor

View File

@@ -105,4 +105,23 @@ feature %q{
page.should have_selector 'h4 a', :text => p2.name
end
end
scenario "adding a product to the cart for a group buy" do
# Given a group buy product and a distributor
d = create(:distributor)
p = create(:product, :distributors => [d], :group_buy => true)
# When I add the item to my cart
visit spree.product_path p
fill_in "variants_#{p.master.id}", :with => 2
fill_in "variant_attributes_#{p.master.id}_max_quantity", :with => 3
click_button 'Add To Cart'
# Then the item should be in my cart with correct quantities
order = Spree::Order.last
li = order.line_items.first
li.product.should == p
li.quantity.should == 2
li.max_quantity.should == 3
end
end