public void CreateDisplayPortfolioTests(string newPort, string oldPort, string cusipChanged, double change, string cusipNew, string cusipSold) { var baseDir = AppContext.BaseDirectory; var filePath = Path.Combine(baseDir, @"TestData\"); var txtStream1 = File.OpenRead(Path.Combine(filePath, newPort)); var port1 = GuruLoader.ParseSubmissionFile(txtStream1); var txtStream2 = File.OpenRead(Path.Combine(filePath, oldPort)); var port2 = GuruLoader.ParseSubmissionFile(txtStream2); var dp = GuruLoader.CreateDisplayPortfolio("name", port1, port2); if (cusipChanged != null) { Assert.True(isSimilar(change, dp.Positions.First(p => p.Cusip == cusipChanged).Change)); } if (cusipNew != null) { Assert.True(dp.Positions.First(p => p.Cusip == cusipNew).IsNew); } if (cusipSold != null) { Assert.True(dp.Positions.First(p => p.Cusip == cusipSold).IsSold); } }
public void ParseSubmissionFileTests(string fileFullName) { var txtStream = File.OpenRead(fileFullName); var port = GuruLoader.ParseSubmissionFile(txtStream); Assert.NotNull(port); Assert.True(port.PositionsNumber > 0); Assert.True(port.TotalValue > 0); Assert.NotEmpty(port.Positions); Assert.All(port.Positions, pos => { Assert.False(String.IsNullOrEmpty(pos.Cusip)); Assert.False(String.IsNullOrEmpty(pos.Name)); Assert.True(pos.Shares > 0); Assert.True(pos.Value > 0); }); }