public void Should_Calculate_Stats_For_A_Valid_CusipData() { //Arrange var cusipObject = new CUSIP() { Id = "cusip-1", PriceTicks = new List <double>() { 11.11, 10.05, 20.10, 10.05, 30.15, 10.05, 40.20, 33.33 } }; var objStatsCalculator = new CusipStatsCalculator(); //Act CusipResult result = objStatsCalculator.Calculate(cusipObject); //Assert result.CUSIP.Should().Be("cusip-1"); result.Lowest.Should().Be(10.05); result.Highest.Should().Be(40.20); result.Opening.Should().Be(11.11); result.Closing.Should().Be(33.33); }
public void Should_ThrowException_For_InValid_InputFile() { //Arrange var fileManager = new LocalFileManager(); var fileStatsCalculator = new CusipStatsCalculator(); var cusipFileUtilObj = new CusipFileUtil(fileManager, fileStatsCalculator); var dataFile = @"NonExistingFile.txt"; //Act Action act = () => cusipFileUtilObj.ExtractStats(dataFile); //Assert act.Should().Throw <Exception>().WithMessage("File doesn't exist!!"); }
public void Should_GenerateResult_For_Valid_InputFile() { //Arrange var fileManager = new LocalFileManager(); var fileStatsCalculator = new CusipStatsCalculator(); var cusipFileUtilObj = new CusipFileUtil(fileManager, fileStatsCalculator); var dataFile = @"Data/ValidData.txt"; //Act IList <CusipResult> results = cusipFileUtilObj.ExtractStats(dataFile); //Assert results.Should().NotBeNull(); results.Count.Should().Be(2); }
public void Should_GenerateResult_For_Valid_Inputs_Case1() { //Arrange var fileManager = A.Fake <IFileManager>(); var fileStatsCalculator = new CusipStatsCalculator(); var cusipFileUtilObj = new CusipFileUtil(fileManager, fileStatsCalculator); A.CallTo(() => fileManager.Read("SomeValidFile.txt")).Returns(GenerateStreamFromString("CUSIP-1|11.11|21.56|9.3|17.18|99.99|CUSIP-2|22.22|0.5|0.1|5.8|88.88|")); //Act IList <CusipResult> results = cusipFileUtilObj.ExtractStats("SomeValidFile.txt"); //Assert results.Should().NotBeNull(); results.Count.Should().Be(2); }
public void Should_Ignore_Cusip_With_NoPriceTicks() { //Arrange var fileManager = A.Fake <IFileManager>(); var fileStatsCalculator = new CusipStatsCalculator(); var cusipFileUtilObj = new CusipFileUtil(fileManager, fileStatsCalculator); A.CallTo(() => fileManager.Read("SomeValidFile.txt")).Returns(GenerateStreamFromString("DUMMYCUSIP-With-NoData1|CUSIP-1|11.11|21.56|9.3|17.18|99.99|DUMMYCUSIP-With-NoData-2|")); //Act IList <CusipResult> results = cusipFileUtilObj.ExtractStats("SomeValidFile.txt"); //Assert results.Should().NotBeNull(); results.Count.Should().Be(1); results.First().CUSIP.Should().Be("CUSIP-1"); }
public void Should_Handle_Empty_CusipData() { //Arrange var cusipObject = new CUSIP() { Id = "cusip-1", PriceTicks = null }; var objStatsCalculator = new CusipStatsCalculator(); //Act CusipResult result = objStatsCalculator.Calculate(cusipObject); //Assert result.CUSIP.Should().Be("cusip-1"); result.Lowest.Should().Be(-1); result.Highest.Should().Be(-1); result.Opening.Should().Be(-1); result.Closing.Should().Be(-1); }
public void Should_GenerateResult_For_Valid_Inputs() { //Arrange var fileManager = A.Fake <IFileManager>(); var fileStatsCalculator = new CusipStatsCalculator(); var cusipFileUtilObj = new CusipFileUtil(fileManager, fileStatsCalculator); A.CallTo(() => fileManager.Read("SomeValidFile.txt")).Returns(GenerateStreamFromString("CUSIP-1|11.11|21.56|9.3|17.18|99.99|")); //Act IList <CusipResult> results = cusipFileUtilObj.ExtractStats("SomeValidFile.txt"); //Assert results.Should().NotBeNull(); results.Count.Should().Be(1); results.First().CUSIP.Should().Be("CUSIP-1"); results.First().Lowest.Should().Be(9.3); results.First().Highest.Should().Be(99.99); results.First().Opening.Should().Be(11.11); results.First().Closing.Should().Be(99.99); }