public void Menu_gets_home_page_as_first_result()
        {
            Mapper.Reset();
            AutoMapperConfig.RegisterMappings();

            var store = new TestableStore();

            int pagesCount = 2;

            using (var navigationController = new NavigationController(store))
            {
                using (var session = store.OpenSession())
                {
                    PersistTestPages(session, pagesCount);

                    RavenControllerTestHelper.SetSessionOnController(navigationController, session);

                    var actionResult = navigationController.Menu();
                    var pageViewModels = ControllerTestHelper.GetModelInActionResult<IEnumerable<PageViewModel>>(actionResult);

                    var firstPageViewModel = pageViewModels.First();
                    Assert.Equal(Page.HomePage.Id, firstPageViewModel.Id);
                }
            }

            Mapper.Reset();
        }
        public void Menu_gets_all_pages_in_database()
        {
            Mapper.Reset();
            AutoMapperConfig.RegisterMappings();

            var store = new TestableStore();

            int pagesCount = 2;

            using (var navigationController = new NavigationController(store))
            {
                using (var session = store.OpenSession())
                {
                    PersistTestPages(session, pagesCount);

                    RavenControllerTestHelper.SetSessionOnController(navigationController, session);

                    var actionResult = navigationController.Menu();
                    var pageViewModels = ControllerTestHelper.GetModelInActionResult<IEnumerable<PageViewModel>>(actionResult);

                    for (int i = 0; i < pagesCount; i++)
                    {
                        Assert.True(pageViewModels.Any(vm => vm.Id == Page.IdPrefix + i));
                    }
                }
            }

            Mapper.Reset();
        }