示例#1
0
        public async Task <ResponseBase <long> > Update(ExampleModel data)
        {
            IRepository <SqlParameterCollection> repository = new SqlServerRepository(connString);
            var response = new ResponseBase <long>()
            {
                Message = "Datos actualizados"
            };

            repository.Parameters.Add("@id", SqlDbType.BigInt).Value          = data.Id;
            repository.Parameters.Add("@name", SqlDbType.NVarChar, 100).Value = data.Name;
            repository.Parameters.Add("@date", SqlDbType.DateTime).Value      = data.Date;

            repository.SaveChanges("usp_toures_update");

            if (repository.Status.Code != Status.Ok)
            {
                response.Data    = 0;
                response.Message = repository.Status.Message;
            }
            else
            {
                response.Data = data.Id;
            }
            response.Code = repository.Status.Code;

            return(await Task.Run(() => response));
        }
        public HttpResponseMessage GenerateCSV()
        {
            //Initialize service and model properties
            var connectionFactory = new HelperConnectionFactory(ConnectionHelper.Helper());
            var sqlRepo           = new SqlServerRepository(connectionFactory);
            var reportRepository  = new LegacyRecoverabilityIntegrityReportRepository(connectionFactory);
            var svc = new BackupDbccService(sqlRepo, reportRepository);
            var qualityIndicatorService = new QualityIndicatorService(new QualityIndicatorConfigurationService(new ConfigurationRepository(connectionFactory)));

            var model = PopulateModelSettings();

            model.GridConditions.StartRow = 1;
            model.GridConditions.EndRow   = int.MaxValue;
            //Get the data
            var fetchedData = FetchFileData(svc, model, qualityIndicatorService);

            //Serialize response
            HttpResponseMessage message = new HttpResponseMessage(HttpStatusCode.OK);

            message.Content = new StringContent(fetchedData);
            message.Content.Headers.ContentType                 = new System.Net.Http.Headers.MediaTypeHeaderValue("text/csv");
            message.Content.Headers.ContentDisposition          = new System.Net.Http.Headers.ContentDispositionHeaderValue("attachment");
            message.Content.Headers.ContentDisposition.FileName = string.Format("RecoveryObjectives-{0}.csv", DateTime.Now.ToString("yyyyMMdd-HHmmss"));
            return(message);
        }
示例#3
0
        public void WhenCreateNewReport_Then_ValidateRequiredParameters()
        {
            //arrange
            var reportName      = "Mock_Report";
            var storedProcedure = @"sp_GetReportData";
            var context         = new SqlServerRepository(connectionString);

            var report = new ReportModel
            {
                Name = reportName,
                StoredProcedureName = storedProcedure,
                Parameters          = new[] {
                    new ReportParameterModel {
                        ExternalName = "Start Date", InternalName = "startDate", DataType = "DateTime", IsRequired = true, DefaultValue = "UtcNow() -5d"
                    },
                    new ReportParameterModel {
                        ExternalName = "End Date", InternalName = "EndDate", DataType = "DateTime", IsRequired = true, DefaultValue = "UtcNow()"
                    }
                }
            };

            var repository = new ReportRepository(context);

            //act
            repository.Insert(report);
            var currentDbInstance = repository.GetById(report.Id);

            //assert
            Assert.IsNotNull(currentDbInstance);
            Assert.IsTrue(currentDbInstance.Id > 0);
            Assert.AreEqual(reportName, currentDbInstance.Name);
            Assert.AreEqual(storedProcedure, currentDbInstance.StoredProcedureName);
        }
示例#4
0
        public HttpResponseMessage GenerateCSV()
        {
            //Initialize service and model properties
            var connectionFactory = new HelperConnectionFactory(ConnectionHelper.Helper());
            var sqlRepo           = new SqlServerRepository(connectionFactory);
            var svc   = new FileLatencyService(sqlRepo);
            var model = PopulateFileLatencyModelSettings();

            model.GridConditions.StartRow = 1;
            model.GridConditions.EndRow   = int.MaxValue;

            //Get the data
            model.GridConditions.EndRow   = 0;
            model.GridConditions.StartRow = 0;
            String fileData = GetFileLatencyCsvData(svc, model);

            //Serialize response
            HttpResponseMessage message = new HttpResponseMessage(HttpStatusCode.OK);

            message.Content = new StringContent(fileData);
            message.Content.Headers.ContentType                 = new System.Net.Http.Headers.MediaTypeHeaderValue("text/csv");
            message.Content.Headers.ContentDisposition          = new System.Net.Http.Headers.ContentDispositionHeaderValue("attachment");
            message.Content.Headers.ContentDisposition.FileName = string.Format("FileLatencyReport-{0}.csv", DateTime.Now.ToString("yyyyMMdd-HHmmss"));
            return(message);
        }
示例#5
0
        public async Task <ResponseBase <AuthenticateResponse> > Authenticate(AuthenticateModel data)
        {
            IRepository <SqlParameterCollection> repository = new SqlServerRepository(connString);
            var response = new ResponseBase <AuthenticateResponse>();
            var user     = new AuthenticateResponse();

            repository.Parameters.Add("@username", SqlDbType.NVarChar, 50).Value  = data.UserName;
            repository.Parameters.Add("@password", SqlDbType.NVarChar, 200).Value = data.Password;

            var result = repository.Get("usp_toures_authenticate");

            if (repository.Status.Code == Status.Ok)
            {
                foreach (var item in result)
                {
                    //user.Id = (long)result[0]["IdUser"];
                    //user.Names = (string)result[0]["Names"];
                    //user.Surnames = (string)result[0]["Surnames"];
                    //user.BirthDate = (DateTime)result[0]["BirthDate"];
                    //user.Age = (int)result[0]["Age"];
                }
                response.Data = user;
            }
            else
            {
                response.Message = repository.Status.Message;
            }
            response.Code = repository.Status.Code;

            return(await Task.Run(() => response));
        }
示例#6
0
        public HttpResponseMessage ResetTuningForkLastRun(Boolean config)
        {
            var connectionFactory = new HelperConnectionFactory(ConnectionHelper.Helper());
            var sqlRepo           = new SqlServerRepository(connectionFactory);
            var svc = new EnvironmentCheckService(sqlRepo);

            //get data
            DateTime lastRunTime;

            if (config)
            {
                lastRunTime = svc.ResetTuningForkLastRun(ProcessControlId.EnvironmentCheckRelativityConfig, ProcessControlId.EnvironmentCheckSqlConfig);
            }
            else
            {
                lastRunTime = svc.ResetTuningForkLastRun(ProcessControlId.EnvironmentCheckServerInfo);
            }

            //Serialize response
            var json     = lastRunTime.ToJson();
            var response = Request.CreateResponse(HttpStatusCode.OK);

            response.Content = new StringContent(json, System.Text.Encoding.UTF8, "application/json");
            return(response);
        }
        public HttpResponseMessage GenerateCSV()
        {
            //Initialize service and model properties
            var connectionFactory = new HelperConnectionFactory(ConnectionHelper.Helper());
            var sqlRepo           = new SqlServerRepository(connectionFactory);
            var svc = new UserExperienceService(sqlRepo);
            var qualityIndicatorService = new QualityIndicatorService(new QualityIndicatorConfigurationService(new ConfigurationRepository(connectionFactory)));

            var model = PopulateServerModelSettings();

            model.GridConditions.StartRow = 1;
            model.GridConditions.EndRow   = int.MaxValue;
            //Get the data
            var fetchedData = FetchFileData(svc, model, qualityIndicatorService);

            //Serialize response
            var message = new HttpResponseMessage(HttpStatusCode.OK)
            {
                Content = new StringContent(fetchedData)
            };

            message.Content.Headers.ContentType        = new System.Net.Http.Headers.MediaTypeHeaderValue("text/csv");
            message.Content.Headers.ContentDisposition = new System.Net.Http.Headers.ContentDispositionHeaderValue("attachment")
            {
                FileName = $"UserExperienceServers-{DateTime.Now:yyyyMMdd-HHmmss}.csv"
            };
            return(message);
        }
示例#8
0
        public void WhenCreateNewReportProcess_Then_StatusPending()
        {
            //arrange
            var globalConfig = new GlobalConfiguration {
                PathToExportExcelFiles = Environment.CurrentDirectory, TimerIntervalInMiliSeconds = 10000
            };
            var fileHandler             = new FileHandler();
            var excelExportService      = new DataTableExportToCsvService(fileHandler);
            var repositoryForSql        = new SqlServerRepository(connectionString);
            var repositoryReportProcess = new ReportProcessRepository(repositoryForSql);
            var reportProcessService    = new ReportProcessService(repositoryReportProcess, repositoryForSql, excelExportService, globalConfig);

            //act
            var listToProcess = repositoryReportProcess.GetListPendingToStart();

            var threadManager = new ThreadManager <ReportProcessModel>();

            threadManager.ProcessInParallel(10, listToProcess, reportProcessService.ExecuteProcess, TimeSpan.FromMinutes(2));

            var listToProcessSecondCycle = repositoryReportProcess.GetListPendingToStart();

            //assert
            Assert.IsTrue(listToProcess.Count() > 0);
            Assert.AreEqual(0, listToProcessSecondCycle.Count());
        }
示例#9
0
        protected override void ExecutePdbAgent(CancellationToken cancellationToken)
        {
            var connectionFactory = new HelperConnectionFactory(this.Helper);
            var sqlService        = new SqlServerRepository(connectionFactory);
            var logger            = new CompositeLogger(new List <ILogger>()
            {
                new AgentLogger(this),
                new DatabaseLogger(sqlService.LogRepository, new LogService(sqlService.ConfigurationRepository, sqlService.LogRepository), this)
            });

            try
            {
                //can only debug, once the EDDSPerformance database exists... b/c the config key lives there
                sqlService.IfInDebugModeLaunchDebugger();

                using (var kernel = this.GetKernel())
                {
                    var managerLogic = kernel.Get <MetricSystemManagerAgentLogic>();
                    logger.WithClassName().LogVerbose($"Starting Manager Logic");
                    managerLogic.Execute(cancellationToken).GetAwaiter().GetResult();
                    logger.WithClassName().LogVerbose($"Finish Manager Logic, Start kernel dispose");
                }

                logger.WithClassName().LogVerbose($"Finish kernel Dispose");
            }
            catch (Exception ex)
            {
                logger.WithClassName().LogError($"Metric Manager Failed. Details: {ex.ToString()}");
            }
        }
示例#10
0
        protected override void ExecutePdbAgent(CancellationToken cancellationToken)
        {
            var connectionFactory = new HelperConnectionFactory(this.Helper);
            var sqlService        = new SqlServerRepository(connectionFactory);
            var logger            = new CompositeLogger(new List <ILogger>()
            {
                new AgentLogger(this),
                new DatabaseLogger(sqlService.LogRepository, new LogService(sqlService.ConfigurationRepository, sqlService.LogRepository), this)
            });

            try
            {
                //can only debug, once the EDDSPerformance database exists... b/c the config key lives there
                sqlService.IfInDebugModeLaunchDebugger();

                var eventSytemState             = sqlService.EventRepository.ReadEventSystemStateAsync().GetAwaiter().GetResult();
                var serversPendingQosDeployment = sqlService.PerformanceServerRepository.ReadServerPendingQosDeploymentAsync().GetAwaiter().GetResult();

                //If the event system is running normal and there are no servers pending qos deployment
                if (eventSytemState == EventSystemState.Normal && !serversPendingQosDeployment.Any())
                {
                    var qosManager = new QoSTaskManager(logger, sqlService, this);
                    qosManager.Run();
                }
            }
            catch (Exception ex)
            {
                logger.WithClassName().LogError($"QoS Manager Failed. Details: {ex.ToString()}");
            }
        }
        public ConfigurationController()
        {
            var helper            = ConnectionHelper.Helper();
            var connectionFactory = new HelperConnectionFactory(helper);
            var sqlRepo           = new SqlServerRepository(connectionFactory);

            this.configurationService = new PdbConfigurationService(sqlRepo, sqlRepo.ConfigurationRepository, sqlRepo.ProcessControlRepository);
        }
		/// <summary>
		/// 
		/// </summary>
		public VerifyRepositoryIntegrityTag(SqlServerRepository repository)
		{
			// validate arguments
			if (repository == null)
				throw new ArgumentNullException("repository");

			// set values
			this.repository = repository;
		}
示例#13
0
        public void Main(string[] args)
        {
            var dbType = args[0];
            IRepository <Customer> repository = CreateRepository <Customer>(dbType);

            IRepository <Customer> customerRepo = new SqlServerRepository <Customer>();
            IRepository <User>     userRepo     = new SqlServerRepository <User>();
            IRepository <Book>     booksRepo    = new PostgresRepository <Book>();
        }
        public SystemLoadController()
        {
            // TODO - Get rid of inheritence
            this.requestService = new RequestService();
            var connectionFactory = new HelperConnectionFactory(ConnectionHelper.Helper());
            var sqlRepo           = new SqlServerRepository(connectionFactory);

            this.reportingService = new BestInServiceReportingService(sqlRepo);
        }
        public void SetUp()
        {
            var logger            = TestUtilities.GetMockLogger();
            var connectionFactory = TestUtilities.GetIntegrationConnectionFactory();
            var sqlRepo           = new SqlServerRepository(connectionFactory);
            var agentId           = 37715;

            this.task = new LoadServerHealthSummaryTask(logger.Object, sqlRepo, agentId);
        }
        public SqlServerRepositorySpecSetup()
        {
            var config      = new ConfigurationBuilder().AddJsonFile(@"appsettings.json").Build();
            var settings    = new NetCoreAppSettings(config);
            var serviceName = settings.GetString("Storage:SqlServerServiceName");

            Repository = SqlServerRepository.FromSettings(NullRecorder.Instance, settings);
            SqlServerStorageBase.InitializeAllTests(serviceName, "TestDatabase");
        }
示例#17
0
        static UserService() //Dependency Injection
        {
            IIdentityUserRepository store = new IdentityUserRepository();

            Obj = new UserService(store);

            _identityUserRepository = new IdentityUserRepository();
            _serverRepository       = new SqlServerRepository();
        }
        public void Should_retrieve_a_feature_toggle_by_type()
        {
            _dbConnection.Query<FeatureToggle>(Arg.Any<string>(), Arg.Any<object>()).Returns(new List<FeatureToggle>() { new FeatureToggle("Test", "MyType") });
            var repository = new SqlServerRepository(_dbConnection);

            var result = repository.GetAllByType("MyType");

            Check.That(result).IsNotNull();
            Check.That(result.Count).IsEqualTo(1);
        }
示例#19
0
        private BackupDbccService GetBackupDbccService()
        {
            var connectionFactory       = new HelperConnectionFactory(ConnectionHelper.Helper());
            var sqlRepo                 = new SqlServerRepository(connectionFactory);
            var toggleProvider          = new PdbSqlToggleProvider(connectionFactory);
            var reportRepositoryFactory = new RecoverabilityIntegrityReportReaderFactory(toggleProvider, connectionFactory);
            var reportRepository        = reportRepositoryFactory.Get();

            return(new BackupDbccService(sqlRepo, reportRepository));
        }
        public void Should_delete_a_feature_and_audit()
        {
            var featureToDelete = new FeatureToggle("MyFeatureToDelete");

            var repository = new SqlServerRepository(_dbConnection);

            repository.Delete(featureToDelete.Id);

            _dbConnection.Received(1).Execute("delete FeatureToggle where Id = @Id", Arg.Any<object>());
            _dbConnection.Received(1).Execute("insert into FeatureToggleAudit (Id, Status, Enable, ModificationDate) values (@Id, @Status, @Enable, @ModificationDate)", Arg.Any<object>());
        }
示例#21
0
        public void Loading_GivenEmptyStore_ShouldReturnNull()
        {
            // Arrange
            IRepository<Customer> repository = new SqlServerRepository<Customer>("");

            // Act
            Customer customer = repository.Get(Guid.NewGuid());

            // Assert
            Assert.Null(customer);
        }
示例#22
0
        public void Loading_GivenEmptyStore_ShouldReturnNull()
        {
            // Arrange
            IRepository <Customer> repository = new SqlServerRepository <Customer>("");

            // Act
            Customer customer = repository.Get(Guid.NewGuid());

            // Assert
            Assert.Null(customer);
        }
示例#23
0
        public bool SaveAndPublish(string pageUrl, int[] problemTypes, string message)
        {
            if (String.IsNullOrEmpty(pageUrl))
            {
                throw new ArgumentNullException("pageUrl");
            }
            if (problemTypes == null || problemTypes.Length == 0)
            {
                throw new ArgumentNullException("problemTypes");
            }
            if (String.IsNullOrEmpty(message))
            {
                throw new ArgumentNullException("message");
            }

            var problem = new ProblemReport();

            IContentManagementProvider cms = new UmbracoContentManagementSystem();

            problem.Page        = cms.ReadMetadataForPage(new Uri(pageUrl));
            problem.ReportDate  = DateTime.Now;
            problem.MessageHtml = message;

            AddWebAuthorsToProblem(problem, cms);

            if (problem.WebAuthors.Count > 0)
            {
                IWebAuthorMonitoringRepository repo = new SqlServerRepository();
                var problemTypesFromRepo            = repo.ReadProblemTypes();
                AddProblemTypesToProblem(problem, problemTypes, problemTypesFromRepo);

                // Check problem type was recognised
                if (problem.ProblemTypes.Count == 0)
                {
                    throw new ArgumentException("problemTypes");
                }

                CreateHtmlMessage(problem);

                repo.SaveProblemReport(problem);

                IEnumerable <IReportListener> listeners = new[] { String.IsNullOrEmpty(ConfigurationManager.AppSettings["Escc.WebAuthorMonitoring.TestEmailListenerAddress"]) ? new EmailListener() : new TestEmailListener() };
                foreach (var listener in listeners)
                {
                    listener.ReportPublished(problem);
                }

                return(true);
            }
            else
            {
                return(false);
            }
        }
示例#24
0
        public void Save(Person person)
        {
            // Here we are using the sql server repository but if we need to change, we need to
            // modify it and do it in each class that depends of SqlServerRepository

            //MongoDBRepository persistence = new MongoDBRepository();

            SqlServerRepository persistence = new SqlServerRepository();

            persistence.Save(person);
        }
        public static void InitializeAllTests(TestContext context)
        {
            InitializeAllTests();
            var          config       = new ConfigurationBuilder().AddJsonFile(@"appsettings.json").Build();
            var          settings     = new NetCoreAppSettings(config);
            var          serviceName  = settings.GetString("SqlServerServiceName");
            const string databaseName = "TestDatabase";

            repository = SqlServerRepository.FromSettings(settings, databaseName);
            SqlServerStorageBase.InitializeAllTests(context, serviceName, databaseName);
        }
示例#26
0
        public void ReadCheckIFISettings_Success()
        {
            //Arrange
            var sqlRepo = new SqlServerRepository(ConnectionFactorySetup.ConnectionFactory);
            var dirs    = sqlRepo.DeploymentRepository.ReadMdfLdfDirectories();

            //Act
            var result = sqlRepo.EnvironmentCheckRepository.ReadCheckIFISettings(dirs);

            //Assert
            Assert.That(result, Is.True);
        }
        /// <summary>
        /// Disposes of resources used by this instance.
        /// </summary>
        /// <param name="disposing">A value indicating whether to dispose of managed resources.</param>
        protected override void Dispose(bool disposing)
        {
            if (!this.disposed)
            {
                if (this.repository != null)
                {
                    this.repository.Dispose();
                    this.repository = null;
                }

                this.disposed = true;
            }
        }
示例#28
0
        public override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            //Redirect if elevated permissions are needed for script updates
            var sqlRepo = new SqlServerRepository(new HelperConnectionFactory(ConnectionHelper.Helper()));

            if (!sqlRepo.AdminScriptsInstalled())
            {
                filterContext.Result = new RedirectResult("~/AdministrationInstall.aspx");
            }
            else
            {
                base.OnActionExecuting(filterContext);
            }
        }
示例#29
0
        public HttpResponseMessage GenerateCSV()
        {
            //Initialize service and model properties
            var connectionFactory = new HelperConnectionFactory(ConnectionHelper.Helper());
            var sqlRepo           = new SqlServerRepository(connectionFactory);
            var svc   = new EnvironmentCheckService(sqlRepo);
            var model = PopulateModelSettings();

            model.GridConditions.StartRow = 1;
            model.GridConditions.EndRow   = int.MaxValue;

            //Get the data
            String fileData;

            if (model.ReportType == EnvironmentCheckReportType.Recommendations)
            {
                model = PopulateRecommendationModelSettings();
                model.GridConditions.EndRow   = 0;
                model.GridConditions.StartRow = 0;
                fileData = FetchFileRecommendationData(svc, model);
            }
            else if (model.ReportType == EnvironmentCheckReportType.Server)
            {
                model = PopulateServerModelSettings();
                model.GridConditions.EndRow   = 0;
                model.GridConditions.StartRow = 0;
                fileData = FetchFileServerData(svc, model);
            }
            else if (model.ReportType == EnvironmentCheckReportType.Database)
            {
                model = PopulateDatabaseModelSettings();
                model.GridConditions.EndRow   = 0;
                model.GridConditions.StartRow = 0;
                fileData = FetchFileDatabaseData(svc, model);
            }
            else
            {
                throw new Exception("Invalid report type.");
            }

            //Serialize response
            HttpResponseMessage message = new HttpResponseMessage(HttpStatusCode.OK);

            message.Content = new StringContent(fileData);
            message.Content.Headers.ContentType                 = new System.Net.Http.Headers.MediaTypeHeaderValue("text/csv");
            message.Content.Headers.ContentDisposition          = new System.Net.Http.Headers.ContentDispositionHeaderValue("attachment");
            message.Content.Headers.ContentDisposition.FileName = string.Format("EnvironmentCheck-{0}.csv", DateTime.Now.ToString("yyyyMMdd-HHmmss"));
            return(message);
        }
示例#30
0
		/// <summary>
		/// 
		/// </summary>
		/// <param name="typeService"></param>
		/// <param name="parser"> </param>
		/// <param name="repository"></param>
		/// <exception cref="ArgumentNullException"></exception>
		public SyncTablesTag(ITypeService typeService, IQueryParser parser, SqlServerRepository repository)
		{
			// validate arguments
			if (typeService == null)
				throw new ArgumentNullException("typeService");
			if (parser == null)
				throw new ArgumentNullException("parser");
			if (repository == null)
				throw new ArgumentNullException("repository");

			// set values
			this.typeService = typeService;
			this.parser = parser;
			this.repository = repository;
		}
示例#31
0
        public void ExecuteEnvironmentCheckServerInfo_ExecuteTuningForkSystem()
        {
            //Arrange
            var logger = TestUtilities.GetMockLogger();

            var connectionFactory = TestUtilities.GetIntegrationConnectionFactory();
            var sqlRepo           = new SqlServerRepository(connectionFactory);

            //Act
            var tsk = new EnvironmentCheckServerInfoTask(logger.Object, sqlRepo, 0);

            tsk.Execute(new ProcessControl());

            //Assert
        }
示例#32
0
        static void Main(string[] args)
        {
            var serilogLogger = new LoggerConfiguration()
                                .WriteTo.File("log.txt", rollingInterval: RollingInterval.Day)
                                .CreateLogger();

            IRateMyAgentLogger logger     = new RateMyAgentLogger(serilogLogger);
            IRepository        repository = new SqlServerRepository();
            ITradeRecordParser parser     = new TradeRecordParser(logger);
            ITradeStreamReader reader     = new HardcodedTradeStreamReader();

            ITradeProcessor processor = new TradeProcessor(logger, repository, parser, reader);

            processor.ProcessTrades();
        }
        public void SetUp()
        {
            var connectionFactory = TestUtilities.GetIntegrationConnectionFactory();
            var sql           = new SqlServerRepository(connectionFactory);
            var hashConverter = new LegacyHashConversionService();
            var tabService    = new TabService(new TabRepository(connectionFactory), new RelativityOneService(sql.ConfigurationRepository));

            this.textLogger = new TextLogger();
            var dbDeployer = new DatabaseDeployer(
                new DatabaseMigratorFactory(connectionFactory),
                new ErrorOnlyMigrationResultHandler(this.textLogger));

            this.applicationInstallationService =
                new ApplicationInstallationService(connectionFactory, sql, hashConverter, tabService, dbDeployer, this.textLogger);
        }
示例#34
0
        public void Saving_GivenNewAggregate_ShouldAllowReloading()
        {
            // Arrange
            IRepository<Customer> repository = new SqlServerRepository<Customer>("");

            // Act
            var customer = new Customer();
            Guid id = customer.Id;
            repository.Save(customer);
            customer = repository.Get(id);

            // Assert
            Assert.NotNull(customer);
            Assert.AreEqual(id, customer.Id);
        }
        public void Should_create_a_feature_and_audit()
        {
            var featureToCreate = new FeatureToggle("MyFeatureToDelete")
            {
                Type = "Test",
                Enable = true
            };

            var repository = new SqlServerRepository(_dbConnection);

            repository.Create(featureToCreate);

            _dbConnection.Received(1).Execute("insert into FeatureToggle (Id, Name, Type, Enable, Description) values (@Id, @Name, @Type, @Enable, @Description)", Arg.Any<object>());
            _dbConnection.Received(1).Execute("insert into FeatureToggleAudit (Id, Status, Enable, ModificationDate) values (@Id, @Status, @Enable, @ModificationDate)", Arg.Any<object>());
        }
示例#36
0
        public HttpResponseMessage FileLatencyLastRun()
        {
            var connectionFactory = new HelperConnectionFactory(ConnectionHelper.Helper());
            var sqlRepo           = new SqlServerRepository(connectionFactory);
            var svc = new FileLatencyService(sqlRepo);

            //get data
            DateTime lastRunTime = svc.FileLatencyLastRun();

            //Serialize response
            var json     = lastRunTime.ToJson();
            var response = Request.CreateResponse(HttpStatusCode.OK);

            response.Content = new StringContent(json, System.Text.Encoding.UTF8, "application/json");
            return(response);
        }
示例#37
0
        public void Saving_GivenNewAggregate_ShouldAllowReloading()
        {
            // Arrange
            IRepository <Customer> repository = new SqlServerRepository <Customer>("");

            // Act
            var  customer = new Customer();
            Guid id       = customer.Id;

            repository.Save(customer);
            customer = repository.Get(id);

            // Assert
            Assert.NotNull(customer);
            Assert.AreEqual(id, customer.Id);
        }
        /// <summary>
        /// Disposes of resources used by this instance.
        /// </summary>
        /// <param name="disposing">A value indicating whether to dispose of managed resources.</param>
        protected override void Dispose(bool disposing)
        {
            if (!this.disposed)
            {
                if (this.repository != null)
                {
                    this.repository.Dispose();
                    this.repository = null;
                }

                this.disposed = true;
            }
        }