public void set_up()
        {
            //setting connection options for dbcontext
            var mockOptions = new Mock <IOptions <ConnectionSettings> >();
            //runtime DB connection strings
            var settings = new ConnectionSettings
            {
                ConnectionString = Environment.GetEnvironmentVariable("MONGO_CONN_STRING") ??
                                   @"mongodb://localhost:1433/",
                CollectionName = "process-data",
                Database       = "mat-processes"
            };

            //make options mock return the object with settings
            mockOptions.SetupGet(x => x.Value).Returns(settings);

            //setting up dbcontext
            _dbcontext = new MatDbContext(mockOptions.Object);
            var processDataGateway   = new ProcessDataGateway(_dbcontext);
            var processDataUsecase   = new ProcessDataUseCase(processDataGateway);
            var postInitDocValidator = new PostInitialProcessDocumentRequestValidator();
            var updateDocValidator   = new UpdateProcessDocumentRequestValidator();
            var getDocValidator      = new GetProcessDocumentRequestValidator();
            Mock <ILogger <ProcessDataController> > logger = new Mock <ILogger <ProcessDataController> >();

            _processDataController = new ProcessDataController(processDataUsecase, logger.Object, postInitDocValidator, updateDocValidator, getDocValidator);
        }
 public void set_up()
 {
     _mockUsecase           = new Mock <IProcessData>();
     _mockLogger            = new Mock <ILogger <ProcessDataController> >();
     _mockValidatorPost     = new Mock <IPostInitialProcessDocumentRequestValidator>();
     _mockValidatorUpdate   = new Mock <IUpdateProcessDocumentRequestValidator>();
     _mockValidatorGet      = new Mock <IGetProcessDocumentRequestValidator>();
     _processDataController = new ProcessDataController(_mockUsecase.Object, _mockLogger.Object, _mockValidatorPost.Object, _mockValidatorUpdate.Object, _mockValidatorGet.Object);
 }