public void TestAverageQRContent() { List <string> snapList = new List <string> { @".\Data\AADApplication1Snap.json", @".\Data\AADApplication2Snap.json" }; List <string> snapResultsList = new List <string> { @".\Data\AAD2App3Snap4Results.json", @".\Data\AAD2App24Snap12Results.json" }; ReportData reportData = TestUtility.PrepaPortfolioReportData(@".\Data\AADApplications.json", snapList, snapResultsList); DateTime date = new DateTime(1970, 01, 01, 0, 0, 0, DateTimeKind.Utc); Snapshot _snap0 = reportData.Applications[0].Snapshots.FirstOrDefault(); TimeSpan time0 = DateTime.Now - date; CastDate _date0 = new CastDate { Time = time0.TotalMilliseconds }; Debug.Assert(_snap0 != null, "_snap0 != null"); _snap0.Annotation.Date = _date0; Snapshot _snap1 = reportData.Applications[1].Snapshots.FirstOrDefault(); TimeSpan time1 = DateTime.Now.AddMonths(-3) - date; CastDate _date1 = new CastDate { Time = time1.TotalMilliseconds }; Debug.Assert(_snap1 != null, "_snap1 != null"); _snap1.Annotation.Date = _date1; Snapshot[] _snapshots = new Snapshot[2]; _snapshots[0] = _snap0; _snapshots[1] = _snap1; reportData.Snapshots = _snapshots; var component = new PortfolioCustomExpression(); Dictionary <string, string> config = new Dictionary <string, string> { { "PARAMS", "QR a QR b" }, { "EXPR", "(a+b)/2" }, { "a", "60014" }, { "b", "60017" } }; var str = component.Content(reportData, config); Assert.AreEqual("1.99", str); Dictionary <string, string> config2 = new Dictionary <string, string> { { "PARAMS", "QR a QR b" }, { "EXPR", "(a+b)/2" }, { "a", "60014" }, { "b", "60017" }, { "AGGREGATOR", "AVERAGE" } }; var str2 = component.Content(reportData, config2); Assert.AreEqual("1.99", str2); }
public void TestBfContent() { List <string> snapList = new List <string> { @".\Data\AADApplication1Snap.json", @".\Data\AADApplication2Snap.json" }; List <string> snapResultsList = new List <string> { @".\Data\AAD2App3Snap4Results.json", @".\Data\AAD2App24Snap12Results.json" }; ReportData reportData = TestUtility.PrepaPortfolioReportData(@".\Data\AADApplications.json", snapList, snapResultsList); DateTime date = new DateTime(1970, 01, 01, 0, 0, 0, DateTimeKind.Utc); Snapshot _snap0 = reportData.Applications[0].Snapshots.FirstOrDefault(); TimeSpan time0 = DateTime.Now - date; CastDate _date0 = new CastDate { Time = time0.TotalMilliseconds }; Debug.Assert(_snap0 != null, "_snap0 != null"); _snap0.Annotation.Date = _date0; Snapshot _snap1 = reportData.Applications[1].Snapshots.FirstOrDefault(); TimeSpan time1 = DateTime.Now.AddMonths(-3) - date; CastDate _date1 = new CastDate { Time = time1.TotalMilliseconds }; Debug.Assert(_snap1 != null, "_snap1 != null"); _snap1.Annotation.Date = _date1; Snapshot[] _snapshots = new Snapshot[2]; _snapshots[0] = _snap0; _snapshots[1] = _snap1; reportData.Snapshots = _snapshots; WSConnection connection = new WSConnection() { Url = "http://tests/CAST-RESTAPI/rest/", Login = "******", Password = "******", IsActive = true, Name = "Default" }; reportData.SnapshotExplorer = new SnapshotBLLStub(connection, reportData.CurrentSnapshot); var component = new PortfolioCustomExpression(); Dictionary <string, string> config = new Dictionary <string, string> { { "PARAMS", "BF a SZ b" }, { "EXPR", "b/a" }, { "a", "66061" }, { "b", "10151" }, { "FORMAT", "N0" } }; var str = component.Content(reportData, config); Assert.AreEqual("77,335", str); }