public void CalculatorCanCalculatePrescriptionQuantity() { var prescription = CreateParacetamolRect(Prescription.NewPrescription()); prescription.Frequency.Value = 2; prescription.Total.Value = 8; var pc = new OldPrescriptionCalculator(prescription); AddCombiToCalculator(prescription, pc, () => prescription.Total, () => prescription.Frequency, () => prescription.Quantity); pc.Execute(); pc.Finish(); Assert.AreEqual(4, prescription.Quantity.Value, "wrong admin quantity value"); }
public void CalculatorCanCalculateDoseTotal() { var prescription = CreateParacetamolRect(Prescription.NewPrescription()); prescription.Frequency.Value = 2; prescription.Doses[0].Quantity.Value = 480; var pc = new OldPrescriptionCalculator(prescription); AddCombiToCalculator(prescription, pc, () => prescription.Doses[0].Total, () => prescription.Frequency, () => prescription.Doses[0].Quantity); pc.Execute(); pc.Finish(); Assert.AreEqual(960, prescription.Doses[0].Total.Value, "wrong dose total value"); }
public void CalculatorCanRectifySimpleCalculation() { var prescription = CreateParacetamolRect(Prescription.NewPrescription()); prescription.Frequency.Value = 2; prescription.Quantity.Value = 4; var pc = new OldPrescriptionCalculator(prescription); var combi = new MultiplierCombination( prescription, () => prescription.Total, () => prescription.Frequency, () => prescription.Quantity ); pc.AddCalculation(combi); pc.Execute(); pc.Finish(); Assert.AreEqual(2, prescription.Frequency.Value, "wrong frequency value"); Assert.AreEqual(8, prescription.Total.Value, "wrong total value"); Assert.AreEqual(4, prescription.Quantity.Value, "woring quantity value"); }