Пример #1
0
        public SearchQuizPageSelectQuiz(SearchQuizViewModel viewModel, string category = null)
        {
            InitializeComponent();
            NavigationPage.SetHasNavigationBar(this, false);
            viewModel_ = viewModel;
            if (viewModel_ == null)
            {
                viewModel_ = new SearchQuizViewModel("Vælg Quiz", new QuizDBServices());
            }

            BindingContext = viewModel_;

            if (category != null)
            {
                viewModel_.LoadQuizzesFromCategory(category);
            }

            LViewQuizzes.ItemSelected += listQuizSelected;
            LViewQuizzes.ItemTapped   += (sender, args) => LViewQuizzes.SelectedItem = null;
        }
        public void LoadQuizzesFromCategoryCalled_CategoriesPropertyChangedCalled()
        {
            //Arrange:
            Quiz quiz1 = new Quiz(); quiz1.Category = "Test Category";
            Quiz quiz2 = new Quiz(); quiz2.Category = "Test Category";
            Quiz quiz3 = new Quiz(); quiz3.Category = "Test Category";
            Quiz quiz4 = new Quiz(); quiz4.Category = "Test Category";
            Quiz quiz5 = new Quiz(); quiz5.Category = "Test Category";

            List <Quiz> fakedQuizList = new List <Quiz>()
            {
                quiz1, quiz2, quiz3, quiz4, quiz5
            };

            uut_.PropertyChanged += (o, arg) => { eventsReceived++; };

            fakeService_.GetAllQuizzesAsync().ReturnsForAnyArgs(fakedQuizList);

            //Act:
            uut_.LoadQuizzesFromCategory("Test Category");

            //Assert:
            Assert.That(eventsReceived, Is.EqualTo(1));
        }