public void UnitializedBreakList_GetUnitPrice() { var tmp = new BaseOrderable(); Assert.AreEqual(0D, tmp.GetUnitPriceForQty(), DBL_PRECISION); foreach (int i in allRandIntRanges) { Assert.AreEqual(0D, tmp.GetUnitPriceForQty(i), DBL_PRECISION); } }
public ResolverMatrix(BaseOrderable part, long qty) { ID = part.ID; MaxOrderable = part.GetMaxOrderableQty(qty); MinAdjustment = part.GetMinimumAmountToFulfillInterval(qty); UnitCost = part.GetUnitPriceForQty(MaxOrderable); TotalCost = UnitCost * MaxOrderable; isMOQ1 = part.QtyInterval == 1; }
public void BreakList_GetUnitPrice_noRequest() { Assert.AreEqual(0D, testTarget.GetUnitPriceForQty(), DBL_PRECISION); Assert.AreEqual(0D, testTarget.GetUnitPriceForQty(-1), DBL_PRECISION); Assert.AreEqual(0D, testTarget.GetUnitPriceForQty(0), DBL_PRECISION); Assert.AreEqual(1.0D, testTarget.GetUnitPriceForQty(1), DBL_PRECISION); Assert.AreEqual(1.0D, testTarget.GetUnitPriceForQty(5), DBL_PRECISION); Assert.AreEqual(1.0D, testTarget.GetUnitPriceForQty(9), DBL_PRECISION); Assert.AreEqual(0.1D, testTarget.GetUnitPriceForQty(10), DBL_PRECISION); Assert.AreEqual(0.1D, testTarget.GetUnitPriceForQty(12), DBL_PRECISION); Assert.AreEqual(0.1D, testTarget.GetUnitPriceForQty(19), DBL_PRECISION); Assert.AreEqual(0.01D, testTarget.GetUnitPriceForQty(100), DBL_PRECISION); Assert.AreEqual(0.01D, testTarget.GetUnitPriceForQty(101), DBL_PRECISION); Assert.AreEqual(0.01D, testTarget.GetUnitPriceForQty(750), DBL_PRECISION); Assert.AreEqual(0.001D, testTarget.GetUnitPriceForQty(1000), DBL_PRECISION); Assert.AreEqual(0.001D, testTarget.GetUnitPriceForQty(50000), DBL_PRECISION); }