public void TestMapFindsContentSectionAndSkipFirstLine() { //given const string fileName = "FileName"; var xmlFile = new XmlStockFile { Values = new[] { new StockValue { Date = "2013-5-20", Open = "30.16", High = "30.39", Low = "30.02", Close = "30.17", Volume = "1478200" } } }; var mapper = new XmlStockFileMapper(); //when var result = mapper.Map(fileName, xmlFile); //then Assert.That(result.FileName, Is.EqualTo(fileName)); Assert.That(result.StockData.Count, Is.EqualTo(1)); Assert.That(result.StockData[0].Date, Is.EqualTo(xmlFile.Values[0].Date)); Assert.That(result.StockData[0].Open, Is.EqualTo(xmlFile.Values[0].Open)); Assert.That(result.StockData[0].High, Is.EqualTo(xmlFile.Values[0].High)); Assert.That(result.StockData[0].Low, Is.EqualTo(xmlFile.Values[0].Low)); Assert.That(result.StockData[0].Close, Is.EqualTo(xmlFile.Values[0].Close)); Assert.That(result.StockData[0].Volume, Is.EqualTo(xmlFile.Values[0].Volume)); }
public async void TestReadFile() { //given const string filePath = "c:\\d\\d\\test.xml"; var xmlFile = new XmlStockFile(); var stockFile = new StockFile(); var fileHelper = Mock.Of<IXmlStockFileReaderHelper>(h => h.ReadXmlFile(filePath) == xmlFile); var mapper = Mock.Of<IXmlStockFileMapper>(m => m.Map("test", xmlFile) == stockFile); var reader = new XmlStockFileReader(mapper, fileHelper); //when var result = await reader.ReadFile(filePath); //then Assert.That(result, Is.SameAs(stockFile)); }
public StockFile Map(string fileName, XmlStockFile file) { return new StockFile { FileName = fileName, StockData = file.Values.Select(v => new StockData { Date = v.Date, Open = v.Open, High = v.High, Low = v.Low, Close = v.Close, Volume = v.Volume }).ToList() }; }
public void TestReadText() { //given const string testFilePath = "filePath"; var fileLines = new[] { "Content:", "<?xml version=\"1.0\" encoding=\"utf-8\" ?>", "<values>", "<value date=\"2013-5-20\" open=\"30.16\" high=\"30.39\" low=\"30.02\" close=\"30.17\" volume=\"1478200\" />", "</values>" }; var fileReader = Mock.Of<IFileReaderHelper>(r => r.ReadText(testFilePath) == fileLines); var helper = new XmlStockFileReaderHelper(fileReader); var expectedResult = new XmlStockFile { Values = new[] { new StockValue { Date = "2013-5-20", Open = "30.16", High = "30.39", Low = "30.02", Close = "30.17", Volume = "1478200" } } }; //when var result = helper.ReadXmlFile(testFilePath); //then Assert.That(result.Values.Count(), Is.EqualTo(1)); Assert.That(result.Values[0].Date, Is.EqualTo(expectedResult.Values[0].Date)); Assert.That(result.Values[0].Open, Is.EqualTo(expectedResult.Values[0].Open)); Assert.That(result.Values[0].High, Is.EqualTo(expectedResult.Values[0].High)); Assert.That(result.Values[0].Low, Is.EqualTo(expectedResult.Values[0].Low)); Assert.That(result.Values[0].Close, Is.EqualTo(expectedResult.Values[0].Close)); Assert.That(result.Values[0].Volume, Is.EqualTo(expectedResult.Values[0].Volume)); }