public void Can_Resolve_Home_Page_With_Default_Action(string path) { // Given var mapper = A.Fake <IControllerMapper>(); var context = A.Fake <HttpContextBase>(); var trie = A.Fake <IRouteResolverTrie>(); var theTrie = new Trie { Id = DefaultBrickPileBootstrapper.TrieId, RootNode = new TrieNode { PageId = "pages/1", Url = "page" } }; A.CallTo(() => context.Request.Path).Returns(path); A.CallTo(() => mapper.GetControllerName(typeof(FakeController))).Returns("FakeController"); A.CallTo(() => mapper.ControllerHasAction("FakeController", "index")).Returns(true); A.CallTo(() => trie.LoadTrie()).Returns(theTrie); // When RouteData data; using (var store = NewDocumentStore()) { using (var session = store.OpenSession()) { var page = new FakePage { Id = "pages/1" }; session.Store(page); session.SaveChanges(); var route = new DefaultRoute(new VirtualPathResolver(), new DefaultRouteResolver(trie), store, mapper); data = route.GetRouteData(context); } } //Then Assert.NotNull(data); Assert.Equal("index", data.Values["action"]); Assert.Equal("FakeController", data.Values["controller"]); }
public void Returns_Null_If_Request_Is_For_Static_Content(string path) { // Given var store = NewDocumentStore(); var mapper = A.Fake <IControllerMapper>(); var context = A.Fake <HttpContextBase>(); var trie = A.Fake <IRouteResolverTrie>(); A.CallTo(() => context.Request.Path).Returns(path); A.CallTo(() => mapper.GetControllerName(typeof(FakeController))).Returns("FakeController"); A.CallTo(() => mapper.ControllerHasAction("FakeController", "index")).Returns(false); // When RouteData data; using (var session = store.OpenSession()) { var page = new FakePage(); session.Store(page); var node = new TrieNode { PageId = page.Id }; session.Store(new Trie { Id = DefaultBrickPileBootstrapper.TrieId, RootNode = node }); session.SaveChanges(); var route = new DefaultRoute(new VirtualPathResolver(), new DefaultRouteResolver(trie), store, mapper); data = route.GetRouteData(context); } // Then Assert.Null(data); }