/// <see cref="ISiteAvailabilityRepository.SetPeriodSecondsAsync(int)"/> public async Task <bool> SetPeriodSecondsAsync(int periodSeconds) { if (await GetMonitoringSettingsAsync() == null) { MonitoringSettings monitoringSettings = new MonitoringSettings { PeriodSeconds = periodSeconds }; await _context.MonitoringSettings.InsertOneAsync(monitoringSettings); return(true); } else { var filter = Builders <MonitoringSettings> .Filter.Empty; var update = Builders <MonitoringSettings> .Update .Set(s => s.PeriodSeconds, periodSeconds); var result = await _context.MonitoringSettings.UpdateOneAsync(filter, update); if (result.IsAcknowledged) { return(true); } } return(false); }
public FileChaosController(ResilientHttpClient client, IOptions <MonitoringSettings> monitoringOptions, IOptionsSnapshot <AppChaosSettings> chaosOptionsSnapshot, ILogger <FileChaosController> logger) { this.client = client; monitoringSettings = monitoringOptions.Value; chaosSettings = chaosOptionsSnapshot.Value; _logger = logger; }
public async Task TestPostPeriodSecondsAsyncSuccess() { var repository = Substitute.For <ISiteAvailabilityRepository>(); var controller = new SiteAvailabilityController(repository); var monitoringSettings = new MonitoringSettings { PeriodSeconds = 10 }; repository.SetPeriodSecondsAsync(monitoringSettings.PeriodSeconds).Returns(Task.FromResult <bool>(true)); var result = await controller.PostPeriodSecondsAsync(monitoringSettings); Assert.IsTrue(result is OkResult); }
private void ApplyMonitoringHoldingsSettings(MonitoringSettings monitoringSettings) { _gridHoldingsData.Rows.Clear(); foreach (var desiredCurrency in monitoringSettings.Holdings) { var newRow = new DataGridViewRow(); newRow.CreateCells(_gridHoldingsData); newRow.SetValues(FormatCurrencyForDisplay(desiredCurrency.RowTag, monitoringSettings.CurrencyDisplayType), decimal.Parse(desiredCurrency.Value), "0.00", 0); newRow.Tag = desiredCurrency.RowTag; _gridHoldingsData.Rows.Add(newRow); } }
private void ApplyMonitoringMarketSettings(MonitoringSettings monitoringSettings) { _gridMarketData.Rows.Clear(); foreach (var desiredCurrency in monitoringSettings.MarketCurrencyTypes) { var newRow = new DataGridViewRow(); newRow.CreateCells(_gridMarketData); newRow.Tag = desiredCurrency; newRow.SetValues(FormatCurrencyForDisplay(desiredCurrency, monitoringSettings.CurrencyDisplayType), "0.00", 0, 0, 0, 0, 0, "0.00", "0.00", 0); _gridMarketData.Rows.Add(newRow); } }
public async Task <IActionResult> PostPeriodSecondsAsync([FromBody] MonitoringSettings monitoringSettings) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var result = await _siteAvailabilityRepository.SetPeriodSecondsAsync(monitoringSettings.PeriodSeconds); if (!result) { return(UnprocessableEntity()); } return(Ok()); }
private static TradesMonitor GetObjectUnderTest() { var validationSettings = new ValidationSettings() { OpenTimeDelta = 1, VolumeToBalanceRatio = 0.05m, }; var monitoringSettings = new MonitoringSettings() { RetentionPeriod = 3 }; var settingsRepositoryMock = new Mock <IValidationSettingsRepository>(); settingsRepositoryMock.Setup(r => r.Get()).Returns(validationSettings); var monitoringSettingsRepositoryMock = new Mock <IMonitoringSettingsRepository>(); monitoringSettingsRepositoryMock.Setup(r => r.Get()).Returns(monitoringSettings); var validator = new TradeValidator(settingsRepositoryMock.Object); var loggerMock = new Mock <ILogger>(); var underTest = new TradesMonitor(validator, loggerMock.Object, monitoringSettingsRepositoryMock.Object); return(underTest); }
private void ApplyMonitoringSettings(MonitoringSettings monitoringSettings) { ApplyMonitoringMarketSettings(monitoringSettings); ApplyMonitoringHoldingsSettings(monitoringSettings); UpdateRefreshInterval(monitoringSettings.RefreshInterval); }
public CompleteSettings() { Layout = new LayoutSettings(); Monitoring = new MonitoringSettings(); }
public MonitoringController(ResilientHttpClient client, IOptions <MonitoringSettings> monitoringOptions, IOptionsSnapshot <AppChaosSettings> chaosOptionsSnapshot) { this.client = client; monitoringSettings = monitoringOptions.Value; chaosSettings = chaosOptionsSnapshot.Value; }