private void SetUpView() { _view = Substitute.For <CustomizationView>(); _view.CategorySelected.Returns(_categorySelected.AsObservable()); _view.ItemSelected.Returns(_itemSelected.AsObservable()); _view.OnComplete.Returns(_complete.AsObservable()); _view.OnEnabled.Returns(_enabled.AsObservable()); _view.ShowPurchaseConfirmation(Arg.Any <Item>()).Returns(_confirmPurchase.AsObservable()); }
public CustomizationPresenter( CustomizationView view, NavigatorGateway navigator, CategoryRepository categoryRepository, GetItems getItems, PurchaseItem purchaseItem) { _view = view; _navigator = navigator; _categoryRepository = categoryRepository; _getItems = getItems; _purchaseItem = purchaseItem; _view.OnEnabled.Subscribe(DisplayCategories); _view.CategorySelected.Subscribe(OnCategorySelected); _view.ItemSelected .Where(IsItemUnlocked) .SelectMany(AskPurchaseIfNotPurchased) .Do(OnSelectItem) .Subscribe(); _view.OnComplete.Subscribe(GoToNextStep); }