public void NoEeeInProducerEeeDetailsForOneCategory_TonnageShouldAlwaysBeEmpty(QuarterSelection quarter, WeeeCategory weeeCategory, ObligationType obligationType) { var producerDetails = new ProducerEeeDetails(); var result = producerDetails.DisplayTonnage(quarter, weeeCategory, obligationType); Assert.Empty(result); }
public void EeeForOneCategoryObligationTypeQuarter_ShouldBePresentWhenSelectingQuarterAndObligationTypeAndCategory() { const decimal tonnage = 25.3M; var eee = new Eee(tonnage, WeeeCategory.DisplayEquipment, ObligationType.B2B); var producerDetails = new ProducerEeeDetails { Q3EEE = new List<Eee> { eee } }; var result = producerDetails.DisplayTonnage(QuarterSelection.Q3, eee.Category, eee.ObligationType); Assert.Equal(tonnage.ToString(), result); }
public void EeeForOneCategoryObligationTypeQuarter_ShouldBePresentWhenSelectingQuarterAndObligationTypeAndCategory() { const decimal tonnage = 25.3M; var eee = new Eee(tonnage, WeeeCategory.DisplayEquipment, ObligationType.B2B); var producerDetails = new ProducerEeeDetails { Q3EEE = new List <Eee> { eee } }; var result = producerDetails.DisplayTonnage(QuarterSelection.Q3, eee.Category, eee.ObligationType); Assert.Equal(tonnage.ToString(), result); }
public static string DisplayTonnage(this ProducerEeeDetails producerEeeDetails, QuarterSelection quarter, WeeeCategory category, ObligationType obligationType) { switch (quarter) { case QuarterSelection.All: var totalEee = producerEeeDetails.TotalEee.SingleOrDefault(e => e.Category == category && e.ObligationType == obligationType); return(totalEee != null ? totalEee.Tonnage.ToString() : string.Empty); case QuarterSelection.Q1: var quarter1Eee = producerEeeDetails.Q1EEE.SingleOrDefault(e => e.Category == category && e.ObligationType == obligationType); return(quarter1Eee != null ? quarter1Eee.Tonnage.ToString() : string.Empty); case QuarterSelection.Q2: var quarter2Eee = producerEeeDetails.Q2EEE.SingleOrDefault(e => e.Category == category && e.ObligationType == obligationType); return(quarter2Eee != null ? quarter2Eee.Tonnage.ToString() : string.Empty); case QuarterSelection.Q3: var quarter3Eee = producerEeeDetails.Q3EEE.SingleOrDefault(e => e.Category == category && e.ObligationType == obligationType); return(quarter3Eee != null ? quarter3Eee.Tonnage.ToString() : string.Empty); case QuarterSelection.Q4: var quarter4Eee = producerEeeDetails.Q4EEE.SingleOrDefault(e => e.Category == category && e.ObligationType == obligationType); return(quarter4Eee != null ? quarter4Eee.Tonnage.ToString() : string.Empty); default: return(string.Empty); } }