public async Task Test_DisplayQuestion_Calls_Navigate_With_The_Given_QuestionViewModel() { var application = new ApplicationViewModel(); var question = new Question(); var questionViewModel = new QuestionItemViewModel(question); Subject = new QuestionsViewModel(application, Search, NetworkApi); using (application.Navigate.RegisterHandler(ctx => { Assert.Same(question, ctx.Input.Parameter); ctx.SetOutput(Unit.Default); })) { await Subject.DisplayQuestion.Execute(questionViewModel); } }
public async Task Test_LoadQuestions_Does_Not_Reload_When_Questions_Already_Exist() { Site = new SiteViewModel(new Site() { ApiSiteParameter = "stackoverflow" }); Subject.LoadedSite = "stackoverflow"; var question = new QuestionItemViewModel(); Subject.Questions.Add(question); await Subject.LoadQuestions.Execute(); Assert.Collection(Subject.Questions, q => Assert.Same(question, q)); }
private async Task DisplayQuestionImpl(QuestionItemViewModel question) { await Application.Navigate.Handle(new NavigationParams(typeof(QuestionPage), question.Question)); Query = ""; }