Exemple #1
0
        public void Transform_TransformsData()
        {
            DataTransformer transformer = new DataTransformer();

            PrecipitationResults result = transformer.Transform(data);

            Assert.IsNotNull(result);
            GridReference gridReference = result.GridReferences[1];

            Assert.IsNotNull(gridReference);
            Assert.AreEqual(142, gridReference.XRef);
            Assert.AreEqual(268, gridReference.YRef);

            List <Year> years = gridReference.Years;

            Assert.IsNotNull(years);
            Assert.AreEqual(10, years.Count);

            Year year = gridReference.Years[9];

            Assert.IsNotNull(year);
            Assert.AreEqual(2000, year.YearValue);

            List <int> months = year.Months;

            Assert.IsNotNull(months);
            Assert.AreEqual(12, months.Count);

            Assert.AreEqual(272, months[11]);
        }
Exemple #2
0
        private async Task SetUpData(string filePath)
        {
            string[] file = await _fileLoader.ReadFile(filePath);

            _userInterface.ShowLoadingFileMessage(filePath);

            _userInterface.ShowTransformingDataMessage();
            PrecipitationResults result = _dataTransformer.Transform(file);

            await _precipitationRepository.Add(result.GridReferences);

            _userInterface.ShowCreatingDatabaseMessage();
        }
Exemple #3
0
        public async Task SetUp_PathNotSupplied()
        {
            Mock <IUserInterface>           mockUserInterface   = new Mock <IUserInterface>();
            Mock <IFileLoader>              mockFileLoader      = new Mock <IFileLoader>();
            Mock <IDataTransformer>         mockDataTransformer = new Mock <IDataTransformer>();
            Mock <IPrecipitationRepository> mockRepository      = new Mock <IPrecipitationRepository>();

            string filePath = "test filepath";

            string[] file = new string[] { };

            mockUserInterface.Setup(ui => ui.GetFilePath()).Returns(filePath);

            mockFileLoader.Setup(fl => fl.ReadFile(filePath)).Returns(Task.FromResult(file));

            List <GridReference> gridReferences       = new List <GridReference>();
            PrecipitationResults precipitationResults = new PrecipitationResults("", "", "", "", "", gridReferences);

            mockDataTransformer.Setup(dt => dt.Transform(file)).Returns(precipitationResults);

            Executor executor = new Executor(mockUserInterface.Object, mockFileLoader.Object, mockDataTransformer.Object, mockRepository.Object);

            string[] args = new string[] { };
            await executor.SetUp(args);

            mockUserInterface.Verify(ui => ui.GetFilePath(), Times.Once);
            mockUserInterface.Verify(ui => ui.ShowLoadingFileMessage(filePath), Times.Once);
            mockUserInterface.Verify(ui => ui.ShowLoadingFileMessage(It.IsAny <string>()), Times.Once);
            mockUserInterface.Verify(ui => ui.ShowTransformingDataMessage(), Times.Once);
            mockUserInterface.Verify(ui => ui.ShowCreatingDatabaseMessage(), Times.Once);

            mockFileLoader.Verify(fl => fl.ReadFile(filePath), Times.Once);
            mockFileLoader.Verify(fl => fl.ReadFile(It.IsAny <string>()), Times.Once);

            mockDataTransformer.Verify(dt => dt.Transform(file), Times.Once);
            mockDataTransformer.Verify(dt => dt.Transform(It.IsAny <string[]>()), Times.Once);

            mockRepository.Verify(r => r.Add(gridReferences), Times.Once);
            mockRepository.Verify(r => r.Add(It.IsAny <List <GridReference> >()), Times.Once);
        }