test/unit/models/line_item_test.rb in xeroizer-2.17.1 vs test/unit/models/line_item_test.rb in xeroizer-2.18.1

- old
+ new

@@ -22,63 +22,57 @@ it "line_amount equals unit_price times quantity if there is no discount_rate" do line_item = LineItem.new(nil) line_item.quantity = 1 line_item.unit_amount = BigDecimal("1337.00") - line_item.tax_amount = BigDecimal("0.15") - expected = BigDecimal((line_item.quantity * (line_item.unit_amount)).to_s).round(2) - - assert_equal expected.to_s, line_item.line_amount.to_s, + assert_equal "1337.0", line_item.line_amount.to_s, "expected line_amount to equal unit_amount times quantity" end it "line_amount equals unit_amount times quantity minus the discount if there is a discount_rate" do line_item = LineItem.new(nil) line_item.quantity = 1 line_item.unit_amount = BigDecimal("1337.00") - line_item.tax_amount = BigDecimal("0.15") - line_item.discount_rate = BigDecimal("10.0") + line_item.discount_rate = BigDecimal("12.34") - discount = (100 - line_item.discount_rate) / 100 - expected = BigDecimal(((line_item.quantity * line_item.unit_amount) * discount).to_s).round(2) - assert_equal expected.to_s, line_item.line_amount.to_s, + assert_equal "1172.01", line_item.line_amount.to_s, "expected line_amount to equal unit_amount times quantity minus the discount" end it "line_amount is zero when quantity is nil or zero" do line_item = LineItem.new(nil) line_item.quantity = nil line_item.unit_amount = BigDecimal("1.00") - line_item.tax_amount = BigDecimal("0.15") - assert_equal "0.0", line_item.line_amount.to_s, "expected line amount zero when quantity is nil" + assert_equal "0.0", line_item.line_amount.to_s, + "expected line amount to be zero when quantity is nil" line_item.quantity = 0 - assert_equal "0.0", line_item.line_amount.to_s, "expected line amount zero when quantity is zero" + assert_equal "0.0", line_item.line_amount.to_s, + "expected line amount to be zero when quantity is zero" end it "is not possible to set unit_amount to zero" do line_item = LineItem.new(nil) - line_item.quantity = 1 line_item.unit_amount = nil - line_item.tax_amount = BigDecimal("0.15") assert_equal 0.0, line_item.unit_amount, "Expected setting unit_amount to nil to be ignored, i.e., it should remain zero" end it "line_amount is zero when unit_amount is nil or zero" do line_item = LineItem.new(nil) line_item.quantity = 1 line_item.unit_amount = nil - line_item.tax_amount = BigDecimal("0.15") - assert_equal "0.0", line_item.line_amount.to_s, "expected line amount zero when unit_amount is nil" + assert_equal "0.0", line_item.line_amount.to_s, + "expected line amount to be zero when unit_amount is nil" line_item.unit_amount = BigDecimal("0.00") - assert_equal "0.0", line_item.line_amount.to_s, "expected line amount zero when unit_amount is zero" + assert_equal "0.0", line_item.line_amount.to_s, + "expected line amount to be zero when unit_amount is zero" end end