public void AddressTest() { var controller = new ReportsTuningController(); Prepare(controller); controller.DbSession = session; var reportType = session.Query <ReportType>().First(rt => rt.ReportTypeFilePrefix == "Mixed"); var report = session.Query <Report>().First(r => r.ReportType == reportType); var propertyType = session.Query <ReportTypeProperty>().First(rpt => rpt.ReportType == reportType && rpt.PropertyName == "AddressesEqual"); var reportProperty = new ReportProperty { Value = "1", Report = report, PropertyType = propertyType }; reportProperty.Save(); var value = new ReportPropertyValue { ReportPropertyId = reportProperty.Id, Value = "0" }; value.Save(); reportProperty.Values = new List <ReportPropertyValue> { value }; reportProperty.Save(); var filter = new AddressesFilter { Report = report.Id, GeneralReport = 1u, ReportPropertyValue = reportProperty.Id }; controller.SelectAddresses(filter); Assert.IsNotNull(controller.PropertyBag["addresses"]); }
public void AddNewOptions() { ulong reportTypeCode = 1; using (new SessionScope()) { var reports = Report.Queryable.Where(r => r.ReportType.Id == reportTypeCode).ToList(); var prop_types = ReportTypeProperty.Queryable .Where(pt => pt.ReportType.Id == reportTypeCode) .Where(pt => pt.PropertyName == "ByBaseCosts" || pt.PropertyName == "PriceCodeEqual" || pt.PropertyName == "RegionEqual") .ToList(); foreach (var report in reports) { foreach (var prop_type in prop_types) { var prop = ReportProperty.Queryable.Where(p => p.Report == report && p.PropertyType.Id == prop_type.Id) .ToList(); if (prop.Count != 0) { continue; } var property = new ReportProperty { Report = report, PropertyType = prop_type, Value = prop_type.DefaultValue }; property.Save(); } } } }