public void BuildShouldApplyPercentageMarginForNumberOfPupils() { dynamic model = new ExpandoObject(); model.NumberOfPupils = 100; var financeDoc = new Microsoft.Azure.Documents.Document(); financeDoc.SetPropertyValue("No Pupils", 100d); financeDoc.SetPropertyValue("Overall Phase", "Secondary"); financeDoc.SetPropertyValue("UrbanRuralInner", "Urban and city"); financeDoc.SetPropertyValue("% of pupils eligible for FSM", 100); financeDoc.SetPropertyValue("% of pupils with SEN Statement", 100); financeDoc.SetPropertyValue("% of pupils with EAL", 100); financeDoc.SetPropertyValue("LA", 831); var benchmarkSchool = new SchoolViewModel(model); benchmarkSchool.HistoricalSchoolFinancialDataModels = new List <SchoolFinancialDataModel>(); benchmarkSchool.HistoricalSchoolFinancialDataModels.Add(new SchoolFinancialDataModel("123", "2014-2015", financeDoc, SchoolFinancialType.Maintained)); var builder = new BenchmarkCriteriaBuilderService(); var criteria = builder.BuildFromSimpleComparisonCriteria(benchmarkSchool.HistoricalSchoolFinancialDataModels.Last(), true, true, true, true, 5); Assert.AreEqual(financeDoc.GetPropertyValue <double>("No Pupils") * 0.85, criteria.MinNoPupil); Assert.AreEqual(financeDoc.GetPropertyValue <double>("No Pupils") * 1.15, criteria.MaxNoPupil); }
public void BuildShouldNotApplyOptionalCriteriaIfNotIncluded() { dynamic model = new ExpandoObject(); model.NumberOfPupils = 100; var financeDoc = new Microsoft.Azure.Documents.Document(); financeDoc.SetPropertyValue("No Pupils", 100d); financeDoc.SetPropertyValue("Overall Phase", "Secondary"); financeDoc.SetPropertyValue("UrbanRuralInner", "Urban and city"); financeDoc.SetPropertyValue("% of pupils eligible for FSM", 100); financeDoc.SetPropertyValue("% of pupils with SEN Statement", 100); financeDoc.SetPropertyValue("% of pupils with EAL", 100); financeDoc.SetPropertyValue("LA", 831); var benchmarkSchool = new SchoolViewModel(model); benchmarkSchool.HistoricalSchoolFinancialDataModels = new List <SchoolFinancialDataModel>(); benchmarkSchool.HistoricalSchoolFinancialDataModels.Add(new SchoolFinancialDataModel("123", "2014-2015", financeDoc, SchoolFinancialType.Maintained)); var builder = new BenchmarkCriteriaBuilderService(); var criteria = builder.BuildFromSimpleComparisonCriteria(benchmarkSchool.HistoricalSchoolFinancialDataModels.Last(), false, false, false, false, 10); Assert.AreEqual(null, criteria.MinPerFSM); Assert.AreEqual(null, criteria.MaxPerFSM); Assert.AreEqual(null, criteria.MinPerSEN); Assert.AreEqual(null, criteria.MaxPerSEN); Assert.AreEqual(null, criteria.MinPerEAL); Assert.AreEqual(null, criteria.MaxPerEAL); Assert.AreEqual(null, criteria.LocalAuthorityCode); }