diff --git a/app/assets/javascripts/admin/bulk_product_update.js.coffee b/app/assets/javascripts/admin/bulk_product_update.js.coffee index c6028f21aa..81ad95f9ca 100644 --- a/app/assets/javascripts/admin/bulk_product_update.js.coffee +++ b/app/assets/javascripts/admin/bulk_product_update.js.coffee @@ -221,7 +221,10 @@ productEditModule.controller "AdminProductEditCtrl", [ $scope.variantUnitValue = (product, variant) -> if variant.unit_value - variant.unit_value / product.variant_unit_scale + if product.variant_unit_scale + variant.unit_value / product.variant_unit_scale + else + variant.unit_value else null @@ -376,7 +379,7 @@ productEditModule.controller "AdminProductEditCtrl", [ if match product = $scope.findProduct(product.id) variant.unit_value = parseFloat(match[1]) || null - variant.unit_value *= product.variant_unit_scale if variant.unit_value + variant.unit_value *= product.variant_unit_scale if variant.unit_value && product.variant_unit_scale variant.unit_description = match[3] diff --git a/spec/javascripts/unit/bulk_product_update_spec.js.coffee b/spec/javascripts/unit/bulk_product_update_spec.js.coffee index ef8a7c3cb2..9fe79278d4 100644 --- a/spec/javascripts/unit/bulk_product_update_spec.js.coffee +++ b/spec/javascripts/unit/bulk_product_update_spec.js.coffee @@ -460,6 +460,11 @@ describe "AdminProductEditCtrl", -> variant = {unit_value: 5} expect(scope.variantUnitValue(product, variant)).toEqual 5000 + it "returns the unscaled value when the product has no scale", -> + product = {} + variant = {unit_value: 5} + expect(scope.variantUnitValue(product, variant)).toEqual 5 + it "returns null when the variant has no unit_value", -> product = {} variant = {} @@ -672,6 +677,16 @@ describe "AdminProductEditCtrl", -> unit_description: '' unit_value_with_description: "250.5" + it "does not convert value when using a non-scaled unit", -> + testProduct = {id: 123} + testVariant = {unit_value_with_description: "12"} + scope.products = [testProduct] + scope.packVariant(testProduct, testVariant) + expect(testVariant).toEqual + unit_value: 12 + unit_description: '' + unit_value_with_description: "12" + describe "filtering products", -> beforeEach ->