protected EksBatchJobMk3Tests(IDbProvider <WorkflowDbContext> workflowFac, IDbProvider <DkSourceDbContext> dkSourceFac, IDbProvider <EksPublishingJobDbContext> publishingFac, IDbProvider <ContentDbContext> contentFac, IWrappedEfExtensions efExtensions) { _WorkflowFac = workflowFac ?? throw new ArgumentNullException(nameof(workflowFac)); _DkSourceDbProvider = dkSourceFac ?? throw new ArgumentNullException(nameof(dkSourceFac)); _EksPublishingJobDbProvider = publishingFac ?? throw new ArgumentNullException(nameof(publishingFac)); _ContentDbProvider = contentFac ?? throw new ArgumentNullException(nameof(contentFac)); _EfExtensions = efExtensions ?? throw new ArgumentNullException(nameof(efExtensions)); _DateTimeProvider = new StandardUtcDateTimeProvider(); _FakeEksConfig = new FakeEksConfig { LifetimeDays = 14, PageSize = 1000, TekCountMax = 10, TekCountMin = 5 }; _Lf = new LoggerFactory(); _EksEngineLogger = new EksEngineLoggingExtensions(_Lf.CreateLogger <EksEngineLoggingExtensions>()); _SnapshotLogger = new SnapshotLoggingExtensions(_Lf.CreateLogger <SnapshotLoggingExtensions>()); _ContentWriterLogger = new EksJobContentWriterLoggingExtensions(_Lf.CreateLogger <EksJobContentWriterLoggingExtensions>()); _WorkflowTeksMarkerLogger = new MarkWorkFlowTeksAsUsedLoggingExtensions(_Lf.CreateLogger <MarkWorkFlowTeksAsUsedLoggingExtensions>()); _Snapshot = new SnapshotWorkflowTeksToDksCommand(_Lf.CreateLogger <SnapshotWorkflowTeksToDksCommand>(), new StandardUtcDateTimeProvider(), new TransmissionRiskLevelCalculationMk2(), _WorkflowFac.CreateNew(), _WorkflowFac.CreateNew, _DkSourceDbProvider.CreateNew, _EfExtensions, new IDiagnosticKeyProcessor[] { } ); _OutboundCountriesMock = new Mock <IOutboundFixedCountriesOfInterestSetting>(); _OutboundCountriesMock.Setup(x => x.CountriesOfInterest).Returns(new [] { "CY", "BG" }); }
protected WfToEksEksBatchJobMk3Tests(IDbProvider <WorkflowDbContext> workflowFac, IDbProvider <DkSourceDbContext> dkSourceFac, IDbProvider <EksPublishingJobDbContext> publishingFac, IDbProvider <ContentDbContext> contentFac, IWrappedEfExtensions efExtensions) { _workflowFac = workflowFac ?? throw new ArgumentNullException(nameof(workflowFac)); _dkSourceDbProvider = dkSourceFac ?? throw new ArgumentNullException(nameof(dkSourceFac)); _eksPublishingJobDbProvider = publishingFac ?? throw new ArgumentNullException(nameof(publishingFac)); _contentDbProvider = contentFac ?? throw new ArgumentNullException(nameof(contentFac)); _efExtensions = efExtensions ?? throw new ArgumentNullException(nameof(efExtensions)); _dateTimeProvider = new StandardUtcDateTimeProvider(); _fakeEksConfig = new FakeEksConfig { LifetimeDays = 14, PageSize = 1000, TekCountMax = 10, TekCountMin = 5 }; _lf = new LoggerFactory(); _snapshot = new SnapshotWorkflowTeksToDksCommand(_lf.CreateLogger <SnapshotWorkflowTeksToDksCommand>(), new StandardUtcDateTimeProvider(), new TransmissionRiskLevelCalculationMk2(), _workflowFac.CreateNew(), _workflowFac.CreateNew, _dkSourceDbProvider.CreateNew, _efExtensions, new IDiagnosticKeyProcessor[0] ); }
public EksEngineTests(IDbProvider <WorkflowDbContext> workflowDbProvider, IDbProvider <DkSourceDbContext> dkSourceDbProvider, IDbProvider <EksPublishingJobDbContext> eksPublishingJobDbProvider, IDbProvider <ContentDbContext> contentDbProvider, IWrappedEfExtensions efExtensions) { _lf = new LoggerFactory(); _efExtensions = efExtensions; _workflowDbProvider = workflowDbProvider; _dkSourceDbProvider = dkSourceDbProvider; _eksPublishingJobDbProvider = eksPublishingJobDbProvider; _contentDbProvider = contentDbProvider; // Configuration var eksHeaderConfig = new Mock <IEksHeaderInfoConfig>(MockBehavior.Strict); var eksConfig = new Mock <IEksConfig>(MockBehavior.Strict); eksConfig.Setup(x => x.TekCountMax).Returns(750000); eksConfig.Setup(x => x.LifetimeDays).Returns(14); var gaSigner = new Mock <IGaContentSigner>(MockBehavior.Strict); gaSigner.Setup(x => x.GetSignature(It.IsAny <byte[]>())).Returns(new byte[] { 1 }); var nlSigner = new Mock <IContentSigner>(MockBehavior.Loose); nlSigner.Setup(x => x.GetSignature(new byte[0])).Returns(new byte[] { 2 }); _snapshot = new SnapshotWorkflowTeksToDksCommand( _lf.CreateLogger <SnapshotWorkflowTeksToDksCommand>(), _dtp, new TransmissionRiskLevelCalculationMk2(), _workflowDbProvider.CreateNew(), _workflowDbProvider.CreateNew, _dkSourceDbProvider.CreateNew, _efExtensions, new IDiagnosticKeyProcessor[] { } ); var countriesOut = new Mock <IOutboundFixedCountriesOfInterestSetting>(); countriesOut.Setup(x => x.CountriesOfInterest).Returns(new[] { "ET" }); _rng = new StandardRandomNumberGenerator(); _eksJob = new ExposureKeySetBatchJobMk3( eksConfig.Object, new EksBuilderV1(eksHeaderConfig.Object, gaSigner.Object, nlSigner.Object, _dtp, new GeneratedProtobufEksContentFormatter(), new EksBuilderV1LoggingExtensions(_lf.CreateLogger <EksBuilderV1LoggingExtensions>()) ), _eksPublishingJobDbProvider.CreateNew, _dtp, new EksEngineLoggingExtensions(_lf.CreateLogger <EksEngineLoggingExtensions>()), new EksStuffingGeneratorMk2(new TransmissionRiskLevelCalculationMk2(), _rng, _dtp, eksConfig.Object), new SnapshotDiagnosisKeys(new SnapshotLoggingExtensions(new TestLogger <SnapshotLoggingExtensions>()), _dkSourceDbProvider.CreateNew(), _eksPublishingJobDbProvider.CreateNew, new Infectiousness(new Dictionary <InfectiousPeriodType, HashSet <int> > { { InfectiousPeriodType.Symptomatic, new HashSet <int>() { -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 } }, { InfectiousPeriodType.Asymptomatic, new HashSet <int>() { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 } } })), new MarkDiagnosisKeysAsUsedLocally(_dkSourceDbProvider.CreateNew, eksConfig.Object, _eksPublishingJobDbProvider.CreateNew, _lf.CreateLogger <MarkDiagnosisKeysAsUsedLocally>()), new EksJobContentWriter(_contentDbProvider.CreateNew, _eksPublishingJobDbProvider.CreateNew, new Sha256HexPublishingIdService(), new EksJobContentWriterLoggingExtensions(_lf.CreateLogger <EksJobContentWriterLoggingExtensions>())), new WriteStuffingToDiagnosisKeys(_dkSourceDbProvider.CreateNew(), _eksPublishingJobDbProvider.CreateNew(), new IDiagnosticKeyProcessor[] { new FixedCountriesOfInterestOutboundDiagnosticKeyProcessor(countriesOut.Object), new NlToEfgsDsosDiagnosticKeyProcessorMk1() } ), _efExtensions ); var jsonSerializer = new StandardJsonSerializer(); _manifestJob = new ManifestUpdateCommand( new ManifestV2Builder(_contentDbProvider.CreateNew(), eksConfig.Object, _dtp), new ManifestV3Builder(_contentDbProvider.CreateNew(), eksConfig.Object, _dtp), new ManifestV4Builder(_contentDbProvider.CreateNew(), eksConfig.Object, _dtp), _contentDbProvider.CreateNew, new ManifestUpdateCommandLoggingExtensions(_lf.CreateLogger <ManifestUpdateCommandLoggingExtensions>()), _dtp, jsonSerializer, () => new StandardContentEntityFormatter(new ZippedSignedContentFormatter(nlSigner.Object), new Sha256HexPublishingIdService(), jsonSerializer) ); var thumbprintConfig = new Mock <IThumbprintConfig>(MockBehavior.Strict); _resign = new NlContentResignExistingV1ContentCommand( new NlContentResignCommand(_contentDbProvider.CreateNew, nlSigner.Object, new ResignerLoggingExtensions(_lf.CreateLogger <ResignerLoggingExtensions>()))); }
public EksEngineTests(IDbProvider <WorkflowDbContext> workflowDbProvider, IDbProvider <DkSourceDbContext> dkSourceDbProvider, IDbProvider <EksPublishingJobDbContext> eksPublishingJobDbProvider, IDbProvider <ContentDbContext> contentDbProvider, IWrappedEfExtensions efExtensions) { _Lf = new LoggerFactory(); _EfExtensions = efExtensions; _WorkflowDbProvider = workflowDbProvider; _DkSourceDbProvider = dkSourceDbProvider; _EksPublishingJobDbProvider = eksPublishingJobDbProvider; _ContentDbProvider = contentDbProvider; ////Configuration var tekValidatorConfig = new Mock <ITekValidatorConfig>(MockBehavior.Strict); var eksHeaderConfig = new Mock <IEksHeaderInfoConfig>(MockBehavior.Strict); var eksConfig = new Mock <IEksConfig>(MockBehavior.Strict); eksConfig.Setup(x => x.TekCountMax).Returns(750000); eksConfig.Setup(x => x.LifetimeDays).Returns(14); var gaSigner = new Mock <IGaContentSigner>(MockBehavior.Strict); //gaSigner.Setup(x => x.SignatureOid).Returns("The OID"); gaSigner.Setup(x => x.GetSignature(It.IsAny <byte[]>())).Returns(new byte[] { 1 }); var nlSigner = new Mock <IContentSigner>(MockBehavior.Loose); nlSigner.Setup(x => x.GetSignature(new byte[0])).Returns(new byte[] { 2 }); _Snapshot = new SnapshotWorkflowTeksToDksCommand( _Lf.CreateLogger <SnapshotWorkflowTeksToDksCommand>(), _Dtp, new TransmissionRiskLevelCalculationMk2(), _WorkflowDbProvider.CreateNew(), _WorkflowDbProvider.CreateNew, _DkSourceDbProvider.CreateNew, _EfExtensions, new IDiagnosticKeyProcessor[] { }); _CountriesOut = new Mock <IOutboundFixedCountriesOfInterestSetting>(); _CountriesOut.Setup(x => x.CountriesOfInterest).Returns(new[] { "ET" }); _Rng = new StandardRandomNumberGenerator(); _EksJob = new ExposureKeySetBatchJobMk3( eksConfig.Object, new EksBuilderV1(eksHeaderConfig.Object, gaSigner.Object, nlSigner.Object, _Dtp, new GeneratedProtobufEksContentFormatter(), new EksBuilderV1LoggingExtensions(_Lf.CreateLogger <EksBuilderV1LoggingExtensions>()) ), _EksPublishingJobDbProvider.CreateNew, _Dtp, new EksEngineLoggingExtensions(_Lf.CreateLogger <EksEngineLoggingExtensions>()), new EksStuffingGeneratorMk2(new TransmissionRiskLevelCalculationMk2(), _Rng, _Dtp, eksConfig.Object), new SnapshotDiagnosisKeys(new SnapshotLoggingExtensions(new TestLogger <SnapshotLoggingExtensions>()), _DkSourceDbProvider.CreateNew(), _EksPublishingJobDbProvider.CreateNew), new MarkDiagnosisKeysAsUsedLocally(_DkSourceDbProvider.CreateNew, eksConfig.Object, _EksPublishingJobDbProvider.CreateNew, _Lf.CreateLogger <MarkDiagnosisKeysAsUsedLocally>()), new EksJobContentWriter(_ContentDbProvider.CreateNew, _EksPublishingJobDbProvider.CreateNew, new Sha256HexPublishingIdService(), new EksJobContentWriterLoggingExtensions(_Lf.CreateLogger <EksJobContentWriterLoggingExtensions>())), new WriteStuffingToDiagnosisKeys(_DkSourceDbProvider.CreateNew(), _EksPublishingJobDbProvider.CreateNew(), new IDiagnosticKeyProcessor[] { new FixedCountriesOfInterestOutboundDiagnosticKeyProcessor(_CountriesOut.Object), new NlToEfgsDsosDiagnosticKeyProcessorMk1() } ), _EfExtensions ); var jsonSerializer = new StandardJsonSerializer(); _ManifestJob = new ManifestUpdateCommand( new ManifestBuilder(_ContentDbProvider.CreateNew(), eksConfig.Object, _Dtp), new ManifestBuilderV3(_ContentDbProvider.CreateNew(), eksConfig.Object, _Dtp), new ManifestBuilderV4(_ContentDbProvider.CreateNew(), eksConfig.Object, _Dtp), _ContentDbProvider.CreateNew, new ManifestUpdateCommandLoggingExtensions(_Lf.CreateLogger <ManifestUpdateCommandLoggingExtensions>()), _Dtp, jsonSerializer, new StandardContentEntityFormatter(new ZippedSignedContentFormatter(nlSigner.Object), new Sha256HexPublishingIdService(), jsonSerializer), () => new StandardContentEntityFormatter(new ZippedSignedContentFormatter(nlSigner.Object), new Sha256HexPublishingIdService(), jsonSerializer) ); var thumbmprintConfig = new Mock <IThumbprintConfig>(MockBehavior.Strict); _Resign = new NlContentResignExistingV1ContentCommand( new NlContentResignCommand(_ContentDbProvider.CreateNew, nlSigner.Object, new ResignerLoggingExtensions(_Lf.CreateLogger <ResignerLoggingExtensions>()))); }