Commit f2284832d8fe7aa7c47a2f2a46fdfd6f4072ff1d

Authored by Daniela Feitosa
1 parent 65e9fc03

Only list inputs relevant to price on price composition

(ActionItem2366)
app/views/catalog/index.rhtml
... ... @@ -56,7 +56,7 @@
56 56 <div>
57 57 <div class="arrow"></div>
58 58 <div class="content" id="product-price-composition">
59   - <% product.inputs.each do |i| %>
  59 + <% product.inputs.relevant_to_price.each do |i| %>
60 60 <div class="search-product-input-dots-to-price">
61 61 <div class="search-product-input-name"><%= i.product_category.name %></div>
62 62 <%= price_span i.cost, :class => 'search-product-input-price' %>
... ...
test/unit/product_test.rb
... ... @@ -381,6 +381,15 @@ class ProductTest &lt; ActiveSupport::TestCase
381 381 assert_equal 50.0, product.inputs_cost
382 382 end
383 383  
  384 + should 'return total value only of inputs relevant to price' do
  385 + product = fast_create(Product)
  386 + first_relevant = fast_create(Input, :product_id => product.id, :product_category_id => fast_create(ProductCategory).id, :price_per_unit => 20.0, :amount_used => 2)
  387 + second_relevant = fast_create(Input, :product_id => product.id, :product_category_id => fast_create(ProductCategory).id, :price_per_unit => 10.0, :amount_used => 1)
  388 + not_relevant = fast_create(Input, :product_id => product.id, :product_category_id => fast_create(ProductCategory).id, :price_per_unit => 10.0, :amount_used => 1, :relevant_to_price => false)
  389 +
  390 + assert_equal 50.0, product.inputs_cost
  391 + end
  392 +
384 393 should 'return 0 on total value of inputs if has no input' do
385 394 product = fast_create(Product)
386 395  
... ... @@ -750,6 +759,8 @@ class ProductTest &lt; ActiveSupport::TestCase
750 759 end
751 760  
752 761 should 'return more recent products' do
  762 + Product.destroy_all
  763 +
753 764 prod1 = Product.create!(:name => 'Damaged LP', :enterprise_id => @profile.id, :product_category_id => @product_category.id)
754 765 prod2 = Product.create!(:name => 'Damaged CD', :enterprise_id => @profile.id, :product_category_id => @product_category.id)
755 766 prod3 = Product.create!(:name => 'Damaged DVD', :enterprise_id => @profile.id, :product_category_id => @product_category.id)
... ...