public void PresenterProvidesViewModelToBindTo()
        {
            var view      = new MockOrderDetailsView();
            var presenter = new OrderDetailsPresentationModel(view, null, null);

            Assert.IsNotNull(view.Model);
        }
        public void PresenterCreatesCallSetTimeInForce()
        {
            var view      = new MockOrderDetailsView();
            var presenter = new OrderDetailsPresentationModel(view, null, null);

            Assert.IsNotNull(presenter.AvailableTimesInForce);
            Assert.IsTrue(presenter.AvailableTimesInForce.Count > 0);
            Assert.AreEqual(Enum.GetValues(typeof(TimeInForce)).Length, presenter.AvailableTimesInForce.Count);
        }
        public void PresenterInitializesCommandsBasedOnActiveView()
        {
            var view = new MockOrderDetailsView();

            view.IsActive = true;

            var presenter = new TestableOrderDetailsPresenter(view, null);

            Assert.IsTrue(presenter.CancelCommand.IsActive);
        }
Beispiel #4
0
        public void PresenterCreatesCallSetOrderTypes()
        {
            var view = new MockOrderDetailsView();

            var presenter = new OrderDetailsPresentationModel(view, null, null);

            Assert.IsNotNull(presenter.AvailableOrderTypes);
            Assert.IsTrue(presenter.AvailableOrderTypes.Count > 0);
            Assert.AreEqual(GetEnumCount(typeof(OrderType)), presenter.AvailableOrderTypes.Count);
        }
        public void SetTransactionInfoShouldUpdateTheModel()
        {
            var view      = new MockOrderDetailsView();
            var presenter = new OrderDetailsPresentationModel(view, new MockAccountPositionService(), null);

            presenter.TransactionInfo = new TransactionInfo {
                TickerSymbol = "T000", TransactionType = TransactionType.Sell
            };

            Assert.AreEqual("T000", presenter.TickerSymbol);
            Assert.AreEqual(TransactionType.Sell, presenter.TransactionType);
        }
        public void CanExecuteChangedIsRaisedForSubmitCommandWhenModelChanges()
        {
            var  view = new MockOrderDetailsView();
            bool canExecuteChanged = false;

            var presenter = new TestableOrderDetailsPresenter(view, null);

            presenter.SubmitCommand.CanExecuteChanged += delegate { canExecuteChanged = true; };

            presenter.Shares = 2;

            Assert.IsTrue(canExecuteChanged);
        }
Beispiel #7
0
        public void CanExecuteChangedIsRaisedForSubmitCommandWhenModelBecomesValid()
        {
            var  view = new MockOrderDetailsView();
            bool canExecuteChanged = false;
            var  presenter         = CreatePresentationModel(view, null);

            presenter.SubmitCommand.CanExecuteChanged += delegate { canExecuteChanged = true; };
            presenter.Shares  = 2;
            canExecuteChanged = false;

            presenter.StopLimitPrice = 2;

            Assert.IsTrue(canExecuteChanged);
        }
        public void VerifyTransactionInfoModificationsInOrderDetails()
        {
            var view = new MockOrderDetailsView();
            var orderDetailsPresenter = new OrderDetailsPresentationModel(view, new MockAccountPositionService(), null);
            var transactionInfo       = new TransactionInfo {
                TickerSymbol = "Fund0", TransactionType = TransactionType.Buy
            };

            orderDetailsPresenter.TransactionInfo = transactionInfo;
            orderDetailsPresenter.TransactionType = TransactionType.Sell;
            Assert.AreEqual(TransactionType.Sell, transactionInfo.TransactionType);

            orderDetailsPresenter.TickerSymbol = "Fund1";
            Assert.AreEqual("Fund1", transactionInfo.TickerSymbol);
        }
        public void PresenterUpdatesCommandsBasedOnActiveChangedOfView()
        {
            var view      = new MockOrderDetailsView();
            var presenter = new TestableOrderDetailsPresenter(view, null);

            view.IsActive = true;
            view.RaiseIsActiveChanged();

            Assert.IsTrue(presenter.CancelCommand.IsActive);

            view.IsActive = false;
            view.RaiseIsActiveChanged();

            Assert.IsFalse(presenter.CancelCommand.IsActive);

            view.IsActive = true;
            view.RaiseIsActiveChanged();

            Assert.IsTrue(presenter.CancelCommand.IsActive);
        }