From f2284832d8fe7aa7c47a2f2a46fdfd6f4072ff1d Mon Sep 17 00:00:00 2001 From: Daniela Soares Feitosa Date: Fri, 17 Aug 2012 19:07:41 +0000 Subject: [PATCH] Only list inputs relevant to price on price composition --- app/views/catalog/index.rhtml | 2 +- test/unit/product_test.rb | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/app/views/catalog/index.rhtml b/app/views/catalog/index.rhtml index 42a6718..3ebdba0 100644 --- a/app/views/catalog/index.rhtml +++ b/app/views/catalog/index.rhtml @@ -56,7 +56,7 @@
- <% product.inputs.each do |i| %> + <% product.inputs.relevant_to_price.each do |i| %>
<%= i.product_category.name %>
<%= price_span i.cost, :class => 'search-product-input-price' %> diff --git a/test/unit/product_test.rb b/test/unit/product_test.rb index d9471ae..3d22f0f 100644 --- a/test/unit/product_test.rb +++ b/test/unit/product_test.rb @@ -381,6 +381,15 @@ class ProductTest < ActiveSupport::TestCase assert_equal 50.0, product.inputs_cost end + should 'return total value only of inputs relevant to price' do + product = fast_create(Product) + first_relevant = fast_create(Input, :product_id => product.id, :product_category_id => fast_create(ProductCategory).id, :price_per_unit => 20.0, :amount_used => 2) + second_relevant = fast_create(Input, :product_id => product.id, :product_category_id => fast_create(ProductCategory).id, :price_per_unit => 10.0, :amount_used => 1) + 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) + + assert_equal 50.0, product.inputs_cost + end + should 'return 0 on total value of inputs if has no input' do product = fast_create(Product) @@ -750,6 +759,8 @@ class ProductTest < ActiveSupport::TestCase end should 'return more recent products' do + Product.destroy_all + prod1 = Product.create!(:name => 'Damaged LP', :enterprise_id => @profile.id, :product_category_id => @product_category.id) prod2 = Product.create!(:name => 'Damaged CD', :enterprise_id => @profile.id, :product_category_id => @product_category.id) prod3 = Product.create!(:name => 'Damaged DVD', :enterprise_id => @profile.id, :product_category_id => @product_category.id) -- libgit2 0.21.2