示例#1
0
        public void Process_WhenHeaderIsInvalid_ThenExpectException()
        {
            LogContext.PermitCrossAppDomainCalls = true;

            var repository = new Mock<BulkIngestionRepository>("connectionString");
            var configuration = new Mock<IIngestionServiceConfiguration>();
            var ingestionHelper = new EclIngestionHelper();
            var fileHelper = new Mock<FileHelper>();

            fileHelper.Setup(f => f.GetFileName(It.IsAny<string>())).Returns("file1.VIC");
            fileHelper.Setup(f => f.GetEclFiles(It.IsAny<string>())).Returns(new string[] { "file1.VIC" });
            fileHelper.Setup(f => f.ReadAllLines(It.IsAny<string>())).Returns(new string[] {
                "A2                                                                                                             A",
                "D032820    190475   000402864000000000000000003850006M10/11/15 082037 082265 149000044 06    Z  082265 020388500",
                "Z000001                                                                                                        Z"
            });

            var worker = new EclIngestionWorker(repository.Object, configuration.Object, ingestionHelper, fileHelper.Object);

            worker.Process();
        }
示例#2
0
        public void Process_WhenContains1File_Then1FileIsBulkImported()
        {
            LogContext.PermitCrossAppDomainCalls = true;

            var repository = new Mock<BulkIngestionRepository>("connectionString");
            var configuration = new Mock<IIngestionServiceConfiguration>();
            var ingestionHelper = new EclIngestionHelper();
            var fileHelper = new Mock<FileHelper>();

            fileHelper.Setup(f => f.GetFileName(It.IsAny<string>())).Returns("file1.VIC");
            fileHelper.Setup(f => f.GetEclFiles(It.IsAny<string>())).Returns(new string[] { "file1.VIC" });
            fileHelper.Setup(f => f.ReadAllLines(It.IsAny<string>())).Returns(new string[] {
                "A220151110                                                                                                     A",
                "D032820    190475   000402864000000000000000003850006M10/11/15 082037 082265 149000044 06    Z  082265 020388500",
                "Z000001                                                                                                        Z"
            });

            var worker = new EclIngestionWorker(repository.Object, configuration.Object, ingestionHelper, fileHelper.Object);

            worker.Process();

            repository.Verify(v => v.BulkImportEclData(It.IsAny<IList<AusPostEclData>>(), It.IsAny<string>()), Times.Once);
        }