public void TestOldQnAUrls() { var url = new ReadOnlyApplicationUrl("~/members/resources/qnas"); AssertRedirect(new ReadOnlyApplicationUrl("~/members/resources/answeredquestions/all"), url, url); url = new ReadOnlyApplicationUrl("~/members/resources/qnas/recent"); AssertRedirect(new ReadOnlyApplicationUrl("~/members/resources/recentlyviewed/answeredquestion"), url, url); var categories = _resourcesQuery.GetCategories(); var category = categories.Single(c => c.Name == "Job search"); const string categorySegment = "job-search"; var subcategory = categories.SelectMany(c => c.Subcategories).Single(s => s.Name == "Job seeking tips"); const string subcategorySegment = "job-seeking-tips"; url = new ReadOnlyApplicationUrl("~/members/resources/qnas/" + categorySegment, new ReadOnlyQueryString("categoryId", category.Id.ToString())); AssertRedirect(new ReadOnlyApplicationUrl("~/members/resources/answeredquestions/" + categorySegment, new ReadOnlyQueryString("categoryId", category.Id.ToString())), url, url); url = new ReadOnlyApplicationUrl("~/members/resources/qnas/" + categorySegment + "-" + subcategorySegment, new ReadOnlyQueryString("subcategoryId", subcategory.Id.ToString())); AssertRedirect(new ReadOnlyApplicationUrl("~/members/resources/answeredquestions/" + categorySegment + "-" + subcategorySegment, new ReadOnlyQueryString("subcategoryId", subcategory.Id.ToString())), url, url); var qna = _resourcesQuery.GetQnAs().First(q => q.SubcategoryId == subcategory.Id); url = new ReadOnlyApplicationUrl("~/members/resources/qnas/" + categorySegment + "-" + subcategorySegment + "-" + GetUrlSegmentTitle(qna.Title) + "/" + qna.Id); AssertRedirect(new ReadOnlyApplicationUrl("~/members/resources/answeredquestion/" + categorySegment + "-" + subcategorySegment + "-" + GetUrlSegmentTitle(qna.Title) + "/" + qna.Id), url, url); // No category id. url = new ReadOnlyApplicationUrl("~/members/resources/qnas/" + categorySegment); AssertRedirect(new ReadOnlyApplicationUrl("~/members/resources/answeredquestions/" + categorySegment), url, url); }
public void TestViewedAnsweredQuestions() { TestViewedItems(ResourceType.QnA, () => _resourcesQuery.GetQnAs(), GetViewAnsweredQuestionUrl); }
public ActionResult QnAs(ResourceSearchCriteria criteria, ResourcesPresentationModel presentation) { return(View("QnAs", Resources(criteria, presentation, i => _resourcesQuery.GetQnAs(i), u => _resourcesQuery.GetRecentlyViewedQnAs(u, RecentItemsCount)))); }
protected IList <QnA> GetRecentQnAs(Guid userId, IEnumerable <Resource> excludeResources) { return(GetRecentResources(userId, _resourcesQuery.GetQnAs(), excludeResources)); }