public ProcessedGroupHomepage(string title, string metaDescription, string backgroundImage, string featuredGroupsHeading, List <Group> featuredGroups, GroupCategory featuredGroupsCategory, GroupSubCategory featuredGroupsSubCategory, List <Alert> alerts, string bodyHeading, string body, string secondaryBodyHeading, string secondaryBody, EventBanner eventBanner) { Title = title; MetaDescription = metaDescription; BackgroundImage = backgroundImage; FeaturedGroupsHeading = featuredGroupsHeading; FeaturedGroups = featuredGroups; FeaturedGroupsCategory = featuredGroupsCategory; FeaturedGroupsSubCategory = featuredGroupsSubCategory; Alerts = alerts; BodyHeading = bodyHeading; Body = body; SecondaryBodyHeading = secondaryBodyHeading; SecondaryBody = secondaryBody; EventBanner = eventBanner; }
public void ShouldReturnGroupHomepage() { // Arrange var eventBanner = new EventBanner("title", "teaser", "icon", "link"); var featuredGroup = new GroupBuilder().Build(); var category = new GroupCategory("title", "slug", "icon", "image"); var subCategory = new GroupSubCategory("title", "slug"); var alert = new Alert("title", "subheading", "body", "severity", DateTime.MinValue, DateTime.MinValue, "slug", false); _groupFactory.Setup(o => o.ToModel(It.IsAny <ContentfulGroup>())).Returns(featuredGroup); _groupCategoryFactory.Setup(o => o.ToModel(It.IsAny <ContentfulGroupCategory>())).Returns(category); _groupSubCategoryFactory.Setup(o => o.ToModel(It.IsAny <ContentfulGroupSubCategory>())).Returns(subCategory); _eventBannerFactory.Setup(o => o.ToModel(_contentfulGroupHomepage.EventBanner)).Returns(eventBanner); _alertFactory.Setup(_ => _.ToModel(It.IsAny <ContentfulAlert>())).Returns(alert); // Act var result = _groupHomepageContentfulFactory.ToModel(_contentfulGroupHomepage); // Assert result.Title.Should().Be("title"); result.Slug.Should().Be("slug"); result.MetaDescription.Should().Be("metaDescription"); result.BackgroundImage.Should().Be("image-url.jpg"); result.FeaturedGroupsHeading.Should().Be("heading"); result.FeaturedGroups.Count.Should().Be(1); result.FeaturedGroups.First().Should().BeEquivalentTo(featuredGroup); result.FeaturedGroupsCategory.Should().BeEquivalentTo(category); result.FeaturedGroupsSubCategory.Should().BeEquivalentTo(subCategory); result.Alerts.Count().Should().Be(1); result.Alerts.First().Should().BeEquivalentTo(alert); result.BodyHeading.Should().Be("bodyheading"); result.Body.Should().Be("body"); result.SecondaryBodyHeading.Should().Be("secondaryBodyHeading"); result.SecondaryBody.Should().Be("secondaryBody"); result.EventBanner.Should().BeEquivalentTo(eventBanner); }