public void SetUp()
 {
     _loader    = TestInitializer.ServiceProvider.GetService <IMnchEnrolmentLoader>();
     _extractor = TestInitializer.ServiceProvider.GetService <IMnchEnrolmentSourceExtractor>();
     _extract   = _extracts.First(x => x.Name.IsSameAs(nameof(MnchEnrolmentExtract)));
     _count     = _extractor.Extract(_extract, _protocol).Result;
 }
Example #2
0
        public async Task <bool> Handle(ExtractMnchEnrolment request, CancellationToken cancellationToken)
        {
            //Extract
            int found = await _mnchEnrolmentSourceExtractor.Extract(request.Extract, request.DatabaseProtocol);

            //Validate
            await _extractValidator.Validate(request.Extract.Id, found, nameof(MnchEnrolmentExtract), $"{nameof(TempMnchEnrolmentExtract)}s");

            //Load
            int loaded = await _mnchEnrolmentLoader.Load(request.Extract.Id, found, request.DatabaseProtocol.SupportsDifferential);

            int rejected =
                _extractHistoryRepository.ProcessRejected(request.Extract.Id, found - loaded, request.Extract);


            _extractHistoryRepository.ProcessExcluded(request.Extract.Id, rejected, request.Extract);

            //notify loaded
            DomainEvents.Dispatch(
                new MnchExtractActivityNotification(request.Extract.Id, new DwhProgress(
                                                        nameof(MnchEnrolmentExtract),
                                                        nameof(ExtractStatus.Loaded),
                                                        found, loaded, rejected, loaded, 0)));

            return(true);
        }
Example #3
0
        public void should_Extract(string name)
        {
            Assert.False(_extractsContext.TempMnchEnrolmentExtracts.Any());
            var extract = _extracts.First(x => x.Name.IsSameAs(name));

            var count = _extractor.Extract(extract, _protocol).Result;

            Assert.True(count > 0);
            _extractsContext = TestInitializer.ServiceProvider.GetService <ExtractsContext>();
            Assert.AreEqual(count, _extractsContext.TempMnchEnrolmentExtracts.Count());
            Log.Debug($"extracted {_extractsContext.TempMnchEnrolmentExtracts.Count()}");
        }