public async Task OneTimeSetUp() { _eventIdProvider = new InMemoryEventIdProvider(); _serializer = new JsonNetSerializer(); _eventSerializer = new EventSerializer(_serializer); _eventCache = new InMemoryEventCache(_eventIdProvider, _eventSerializer); var brokerConfiguration = new BrokerageServiceConfiguration() { HeartbeatEndpoint = HeartbeatEndpoint, StateOfTheWorldEndpoint = StateOfTheWorldEndpoint, ToSubscribersEndpoint = ToSubscribersEndpoint, ToPublisherEndpoint = ToPublishersEndpoint }; _broker = new BrokerageService(brokerConfiguration, LoggerForTests <BrokerageService> .Default(), _eventCache, _serializer); await _broker.Run(); JsonConvert.DefaultSettings = () => { var settings = new JsonSerializerSettings { Formatting = Formatting.Indented, TypeNameHandling = TypeNameHandling.Objects, ContractResolver = new CamelCasePropertyNamesContractResolver() }; return(settings); }; await Task.Delay(1000); }
public IActor GetBrokerageService(IBrokerageServiceConfiguration configuration) { var router = new BrokerageService(configuration, LoggerForTests <BrokerageService> .Default(), _eventCache, _serializer); _actors.Add(router); return(router); }
public void RegisterNullBroker_ThrowsArgumentNullException() { //arrange var service = new BrokerageService(); //act //assert service.RegisterBroker(null); }
public void RegisterThirdBroker_ThrowsApplicationException() { //arrange var service = new BrokerageService(); //act //assert service.RegisterBroker(new DigiCoinBroker(1m, 1m)); service.RegisterBroker(new DigiCoinBroker(1m, 1m)); service.RegisterBroker(new DigiCoinBroker(1m, 1m)); }
public void PlaceOrder_CallTakeOrder_AtLeast1OnBothBroker() { //arrange var service = new BrokerageService(); var broker1Mock = new Mock <IBroker>(); var broker2Mock = new Mock <IBroker>(); broker1Mock.Setup(b => b.GetQuoteForTransaction(It.IsAny <int>())).Returns(10); broker2Mock.Setup(b => b.GetQuoteForTransaction(It.IsAny <int>())).Returns(20); service.RegisterBroker(broker1Mock.Object); service.RegisterBroker(broker2Mock.Object); //act service.PlaceOrder(10); //assert; broker1Mock.Verify(b => b.TakeOrder(It.IsAny <int>()), Times.AtLeast(1)); broker2Mock.Verify(b => b.TakeOrder(It.IsAny <int>()), Times.AtLeast(1)); }
public Position(BrokerageService brokerageService) { _brokerageService = brokerageService; }