public async Task WHEN_category_id_found_SHOULD_return_view_model() { // Arrange var categories = new List <Category> { new Category { Id = GetRandom.String(10), DisplayName = new LocalizedString(new Dictionary <string, string> { { CultureName, "level1_0" } }) } }; SetupCategoryRepository(categories); SetupCategoryUrlProvider(); CategoryBrowsingViewService service = _container.CreateInstance <CategoryBrowsingViewService>(); // Act CategoryBrowsingViewModel model = await service.GetCategoryBrowsingViewModelAsync(new GetCategoryBrowsingViewModelParam { CategoryId = categories[0].Id, SelectedFacets = new List <SearchFilter>() }); // Assert model.Should().NotBeNull(); model.CategoryId.Should().Be(categories[0].Id); }
public async Task WHEN_selected_category_is_children_SHOULD_return_filled_landingPageUrls() { // Arrange var level1Id = "level1"; var level2Id = "level2"; var level3Id = "level3"; var categories = new List <Category> { new Category { Id = level1Id, DisplayName = new LocalizedString(new Dictionary <string, string> { { CultureName, "level1_0" } }) }, new Category { Id = level2Id, DisplayName = new LocalizedString(new Dictionary <string, string> { { CultureName, "level2_0" } }), PrimaryParentCategoryId = level1Id }, new Category { Id = level3Id, DisplayName = new LocalizedString(new Dictionary <string, string> { { CultureName, "level3_0" } }), PrimaryParentCategoryId = level2Id } }; SetupCategoryRepository(categories); SetupCategoryUrlProvider(); CategoryBrowsingViewService service = _container.CreateInstance <CategoryBrowsingViewService>(); // Act CategoryBrowsingViewModel model = await service.GetCategoryBrowsingViewModelAsync(new GetCategoryBrowsingViewModelParam { CategoryId = level3Id, SelectedFacets = new List <SearchFilter>() }); //Assert model.Should().NotBeNull(); model.LandingPageUrls.Should().NotBeNullOrEmpty(); model.LandingPageUrls.Should().HaveCount(2); model.LandingPageUrls[0].Should().EndWith(level1Id); model.LandingPageUrls[1].Should().EndWith(level2Id); }