public void ModifyAddress_UserNameNotInitialized_ShouldNotReturnAddress(Database db, IContactFactory contactFactory)
        {
            // arrange
            FakeSiteContext.Database = db;
            var accountManager = new MockAccountManager()
            {
                IsCurrentCustomerPartiesInitialized = true
            };
            var orderManager = new MockOrderManager {
                IsAvailableCountriesInitialized = false
            };
            var rep   = new AccountRepository(accountManager, contactFactory, orderManager);
            var model = new PartyInputModelItem {
                Name = "fake"
            };

            using (new Sitecore.Security.Accounts.UserSwitcher("null", false))
            {
                // act
                var result = rep.ModifyAddress(model);

                // assert
                result.Addresses.Count.Should().Be(0);
                result.Countries.Count.Should().Be(0);
                result.Success.Should().BeFalse();
            }
        }
        public void MakeOrderCancellationRequest_adds_order_cancellaction_request_for_short()
        {
            MockOrderManager mom = (MockOrderManager)this.orderManager;

            Assert.AreEqual(0, mom.CancelCounter);
            Assert.AreEqual(0, this.tradingData.Get <IEnumerable <Signal> >().Count());
            Assert.AreEqual(0, this.tradingData.Get <IEnumerable <Order> >().Count());

            Signal signal = new Signal(this.strategyHeader,
                                       BrokerDateTime.Make(DateTime.Now),
                                       TradeAction.Sell,
                                       OrderType.Limit,
                                       145000,
                                       0,
                                       145100);

            this.signalQueue.Enqueue(signal);

            Order order = this.tradingData.Get <IEnumerable <Order> >().Last();

            OrderDeliveryConfirmation odc = new OrderDeliveryConfirmation(order, BrokerDateTime.Make(DateTime.Now));

            this.tradingData.Get <ObservableHashSet <OrderDeliveryConfirmation> >().Add(odc);

            this.quotesProvider.Update(0, this.strategyHeader.Symbol, 145040, 150, 145050, 150);

            Assert.AreEqual(1, this.tradingData.CancellationRequests.Count());
            Assert.AreEqual(1, mom.CancelCounter);
        }
        public void repeat_cancellation_request_if_previous_is_older_than_sixty_seconds_for_sell_test()
        {
            MockOrderManager mom = (MockOrderManager)this.orderManager;

            Assert.AreEqual(0, mom.CancelCounter);
            Assert.AreEqual(0, this.tradingData.Get <IEnumerable <Signal> >().Count());
            Assert.AreEqual(0, this.tradingData.Get <IEnumerable <Order> >().Count());
            Assert.AreEqual(0, this.tradingData.CancellationRequests.Count());

            Signal signal = new Signal(this.strategyHeader,
                                       BrokerDateTime.Make(DateTime.Now),
                                       TradeAction.Sell,
                                       OrderType.Limit,
                                       145000,
                                       0,
                                       145100);

            this.signalQueue.Enqueue(signal);

            Order order = this.tradingData.Get <IEnumerable <Order> >().Last();

            OrderCancellationRequest firstRequest = new OrderCancellationRequest(order, "First request");

            firstRequest.DateTime = BrokerDateTime.Make(DateTime.Now.AddSeconds(-61));
            this.tradingData.Get <ICollection <OrderCancellationRequest> >().Add(firstRequest);

            OrderDeliveryConfirmation odc = new OrderDeliveryConfirmation(order, BrokerDateTime.Make(DateTime.Now));

            this.tradingData.Get <ObservableHashSet <OrderDeliveryConfirmation> >().Add(odc);

            this.quotesProvider.Update(0, this.strategyHeader.Symbol, 144800, 150, 144810, 150);

            Assert.AreEqual(2, this.tradingData.CancellationRequests.Count());
            Assert.AreEqual(1, mom.CancelCounter);
        }
Exemplo n.º 4
0
        public void Handlers_Setup()
        {
            this.tradingData = new TradingDataContext();
            this.manager     = new MockOrderManager();
            CancelOrderOnCancellationRequest handler = new CancelOrderOnCancellationRequest(this.manager, this.tradingData, new NullLogger());

            AddStrategies();

            AddSignals();
        }
Exemplo n.º 5
0
        public void Handlers_Setup()
        {
            this.tradingData = new TradingDataContext();
            this.orderQueue  = new ObservableQueue <Order>();
            this.manager     = new MockOrderManager();

            OrderQueueProcessor   processor    = new OrderQueueProcessor(this.manager, this.tradingData, this.orderQueue, new NullLogger());
            UpdatePositionOnTrade tradeHandler = new UpdatePositionOnTrade(this.tradingData, new NullLogger());

            AddStrategies();

            AddSignals();
        }
        public void GetRecentOrders_LastModifiedTooOld_ShouldNotReturnOrders(Database db, IContactFactory contactFactory)
        {
            // arrange
            FakeSiteContext.Database = db;
            var orderManager = new MockOrderManager {
                GetOrdersLastModifyDateIsTooOld = true, GetOrdersDaysOld = AccountRepository.ReturnLastModifiedOrdersDaysOld
            };
            var rep = new AccountRepository(new MockAccountManager(), contactFactory, orderManager);

            // act
            var result = rep.GetRecentOrders("fake");

            // assert
            result.Orders.Count.Should().Be(0);
            result.Success.Should().BeTrue();
        }
        public void GetAddressList_CountriesNotInitialized_ShouldReturnAddressList(Database db, IContactFactory contactFactory)
        {
            // arrange
            FakeSiteContext.Database = db;
            var accountManager = new MockAccountManager()
            {
                IsCurrentCustomerPartiesInitialized = true
            };
            var orderManager = new MockOrderManager {
                IsAvailableCountriesInitialized = false
            };
            var rep = new AccountRepository(accountManager, contactFactory, orderManager);

            // act
            var result = rep.GetAddressList();

            // assert
            result.Addresses.Count.Should().BeGreaterThan(0);
            result.Countries.Count.Should().Be(0);
            result.Success.Should().BeFalse();
        }