public void TradingStatus_Disabled_BackwardsCompatibility() { var reason = InstrumentTradingDisabledReason.InstrumentTradingDisabled; var status = InstrumentTradingStatus.Disabled(reason); Assert.True(status); }
public void TradingStatus_Enabled() { var status = InstrumentTradingStatus.Enabled(); Assert.True(status.TradingEnabled); Assert.That(status.Reason == InstrumentTradingDisabledReason.None); }
public InstrumentTradingStatus GetInstrumentTradingStatus(string assetPairId, TimeSpan scheduleCutOff) { var assetPair = _assetPairsCache.GetAssetPairByIdOrDefault(assetPairId); if (assetPair == null) { _log.WriteWarningAsync(nameof(ScheduleSettingsCacheService), nameof(GetInstrumentTradingStatus), $"AssetPair [{assetPairId}] does not exist in cache. Trading is disabled.").GetAwaiter().GetResult(); return(InstrumentTradingStatus.Disabled(InstrumentTradingDisabledReason.InstrumentNotFound)); } if (assetPair.IsTradingDisabled) { return(InstrumentTradingStatus.Disabled(InstrumentTradingDisabledReason.InstrumentTradingDisabled)); } if (!_marketStates.TryGetValue(assetPair.MarketId, out var marketState)) { _log.WriteWarningAsync(nameof(ScheduleSettingsCacheService), nameof(GetInstrumentTradingStatus), $"Market status of market [{assetPair.MarketId}] for asset pair [{assetPairId}] does not exist in cache. Trading is disabled.").GetAwaiter().GetResult(); return(InstrumentTradingStatus.Disabled(InstrumentTradingDisabledReason.MarketStateNotFound)); } return(marketState.IsEnabled ? InstrumentTradingStatus.Enabled() : InstrumentTradingStatus.Disabled(InstrumentTradingDisabledReason.MarketDisabled)); }
public void TradingStatus_Disabled() { var reason = InstrumentTradingDisabledReason.InstrumentTradingDisabled; var status = InstrumentTradingStatus.Disabled(reason); Assert.False(status.TradingEnabled); Assert.That(status.Reason == reason); }
public static string GetInstrumentTradingStatus(InstrumentTradingStatus value) { switch (value) { case InstrumentTradingStatus.Closed: return(Constants.TradingStatus.Closed); case InstrumentTradingStatus.Open: return(Constants.TradingStatus.Open); } throw new ArgumentOutOfRangeException("value"); }
public void SetUp() { _bestPricesChannelMock = new Mock <IEventChannel <BestPriceChangeEventArgs> >(); _dateServiceMock = new Mock <IDateService>(); _assetPairsCacheMock = new Mock <IAssetPairsCache>(); _cqrsSenderMock = new Mock <ICqrsSender>(); _identityGeneratorMock = new Mock <IIdentityGenerator>(); _logMock = new Mock <ILog>(); _assetPairDayOffMock = new Mock <IAssetPairDayOffService>(); _assetPairDayOffMock.Setup(x => x.IsAssetTradingDisabled(It.IsAny <string>())) .Returns(InstrumentTradingStatus.Enabled); _assetPairDayOffMock.Setup(x => x.IsAssetTradingDisabled(It.Is <string>(x => x == TradingDisabledAssetPair))) .Returns(InstrumentTradingStatus.Disabled(InstrumentTradingDisabledReason.InstrumentTradingDisabled)); _schedulteSettingsMock = new Mock <IScheduleSettingsCacheService>(); }
public ExternalOrderbookServicesBenchmark() { var doMock = new Mock <IAssetPairDayOffService>(); doMock.Setup(a => a.IsAssetTradingDisabled(It.IsAny <string>())).Returns(InstrumentTradingStatus.Enabled()); _service = new ExternalOrderbookService( Mock.Of <IEventChannel <BestPriceChangeEventArgs> >(), Mock.Of <IOrderBookProviderApi>(), Mock.Of <IDateService>(), Mock.Of <IConvertService>(), doMock.Object, Mock.Of <ScheduleSettingsCacheService>(), Mock.Of <IAssetPairsCache>(), Mock.Of <ICqrsSender>(), Mock.Of <IIdentityGenerator>(), Mock.Of <ILog>(), new MarginTradingSettings() { DefaultExternalExchangeId = "test" }); _lightweightService = new LightweightExternalOrderbookService( Mock.Of <IEventChannel <BestPriceChangeEventArgs> >(), Mock.Of <IOrderBookProviderApi>(), Mock.Of <IDateService>(), Mock.Of <IConvertService>(), Mock.Of <IScheduleSettingsCacheService>(), doMock.Object, Mock.Of <IAssetPairsCache>(), Mock.Of <ICqrsSender>(), Mock.Of <IIdentityGenerator>(), Mock.Of <ILog>(), new MarginTradingSettings() { DefaultExternalExchangeId = "test" }); }
public void TradingStatus_Enabled_BackwardsCompatibility() { var status = InstrumentTradingStatus.Enabled(); Assert.False(status); }