public void PresenterProvidesViewModelToBindTo() { var view = new MockOrderDetailsView(); var presenter = new OrderDetailsPresentationModel(view, null, null); Assert.IsNotNull(view.Model); }
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 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); }
public MockOrderDetailsPresentationModel() { View = new MockOrderDetailsView(); }
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 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 PresenterCreatesCallSetTimeInForce() { var view = new MockOrderDetailsView(); var presenter = new OrderDetailsPresentationModel(view, null, null); Assert.IsNotNull(presenter.AvailableTimesInForce); Assert.IsTrue(presenter.AvailableTimesInForce.Count > 0); Assert.AreEqual(GetEnumCount(typeof(TimeInForce)), presenter.AvailableTimesInForce.Count); }
public void PresenterInitializesCommandsBasedOnActiveView() { var view = new MockOrderDetailsView(); view.IsActive = true; var presenter = new TestableOrderDetailsPresenter(view, null); Assert.IsTrue(presenter.CancelCommand.IsActive); }
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); }
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(Enum.GetValues(typeof(OrderType)).Length, presenter.AvailableOrderTypes.Count); }