public PolymorphicSubLinkedSourcesTests() { var loadLinkProtocolBuilder = new LoadLinkProtocolBuilder(); loadLinkProtocolBuilder.For <WithPolymorphicSubLinkedSource>() .LoadLinkPolymorphicList( linkedSource => linkedSource.Model.Subs, linkedSource => linkedSource.Subs, link => link.GetType(), includes => includes.Include <SubContentWithImageLinkedSource>().AsNestedLinkedSourceFromModel( typeof(SubContentWithImage), link => (SubContentWithImage)link, (linkedSource, referenceIndex, childLinkedSource) => childLinkedSource.Contextualization = linkedSource.Model.Contextualizations[referenceIndex] ) .Include <SubContentWithoutReferencesLinkedSource>().AsNestedLinkedSourceFromModel( typeof(SubContentWithoutReferences), link => (SubContentWithoutReferences)link, (linkedSource, referenceIndex, childLinkedSource) => childLinkedSource.Contextualization = linkedSource.Model.Contextualizations[referenceIndex] ) ); loadLinkProtocolBuilder.For <SubContentWithImageLinkedSource>() .LoadLinkReferenceById( linkedSource => linkedSource.Model.ImageId, linkedSource => linkedSource.Image); _sut = loadLinkProtocolBuilder.Build(() => new ReferenceLoaderStub()); }
public PolymorphicSubLinkedSourceTests() { var loadLinkProtocolBuilder = new LoadLinkProtocolBuilder(); loadLinkProtocolBuilder.For <LinkedSource>() .LoadLinkPolymorphic( linkedSource => linkedSource.Model.Target, linkedSource => linkedSource.Target, link => link.Type, includes => includes.Include <PdfReferenceLinkedSource>().AsNestedLinkedSourceFromModel( "pdf", link => link, (linkedSource, referenceIndex, childLinkedSource) => childLinkedSource.Contextualization = "From the level below:" + linkedSource.Model.Id ) .Include <WebPageReferenceLinkedSource>().AsNestedLinkedSourceFromModel( "web-page", link => link.GetAsBlogPostReference() ) ); loadLinkProtocolBuilder.For <WebPageReferenceLinkedSource>() .LoadLinkReferenceById( linkedSource => linkedSource.Model.ImageId, linkedSource => linkedSource.Image); _sut = loadLinkProtocolBuilder.Build(() => new ReferenceLoaderStub()); }
public PolymorphicNestedLinkedSourcesTests() { var loadLinkProtocolBuilder = new LoadLinkProtocolBuilder(); loadLinkProtocolBuilder.For <WithNestedPolymorphicContentsLinkedSource>() .LoadLinkPolymorphicList( linkedSource => linkedSource.Model.ContentContextualizations, linkedSource => linkedSource.Contents, link => link.ContentType, includes => includes.Include <PersonWithoutContextualizationLinkedSource>().AsNestedLinkedSourceById( "person", link => (string)link.Id) .Include <ImageWithContextualizationLinkedSource>().AsNestedLinkedSourceById( "image", link => (string)link.Id, (linkedSource, referenceIndex, childLinkedSource) => { var contextualization = linkedSource.Model.ContentContextualizations[referenceIndex]; childLinkedSource.ContentContextualization = contextualization; } ) ); _sut = loadLinkProtocolBuilder.Build(() => new ReferenceLoaderStub()); }
public PolymorphicList_WithDependenciesBetweenItemsTests() { var loadLinkProtocolBuilder = new LoadLinkProtocolBuilder(); loadLinkProtocolBuilder.For <LinkedSource>() .LoadLinkPolymorphicList( linkedSource => linkedSource.Model.PolyLinks, linkedSource => linkedSource.PolyLinks, link => link.Type, includes => includes.Include <Image>().AsReferenceById( "image", link => link.Id ) .Include <PersonLinkedSource>().AsNestedLinkedSourceById( "person", link => link.Id ) ); loadLinkProtocolBuilder.For <PersonLinkedSource>() .LoadLinkReferenceById( linkedSource => linkedSource.Model.SummaryImageId, linkedSource => linkedSource.SummaryImage); _sut = loadLinkProtocolBuilder.Build(() => new ReferenceLoaderStub()); }
public PolymorphicMixtedTests() { var loadLinkProtocolBuilder = new LoadLinkProtocolBuilder(); loadLinkProtocolBuilder.For <LinkedSource>() .LoadLinkPolymorphic( linkedSource => linkedSource.Model.TargetReference, linkedSource => linkedSource.Target, link => link.GetType(), includes => includes.Include <Person>().AsReferenceById( typeof(int), link => link.ToString() ) .Include <PersonLinkedSource>().AsNestedLinkedSourceById( typeof(string), link => link.ToString() ) .Include <PersonLinkedSource>().AsNestedLinkedSourceFromModel( typeof(Person), link => (Person)link ) ); loadLinkProtocolBuilder.For <PersonLinkedSource>() .LoadLinkReferenceById( linkedSource => linkedSource.Model.SummaryImageId, linkedSource => linkedSource.SummaryImage); _sut = loadLinkProtocolBuilder.Build(() => new ReferenceLoaderStub()); }
public DebugModeTests() { var loadLinkProtocolBuilder = new LoadLinkProtocolBuilder(); loadLinkProtocolBuilder.For <BlogPostLinkedSource>() .LoadLinkNestedLinkedSourceById( linkedSource => linkedSource.Model.AuthorId, linkedSource => linkedSource.Author) .LoadLinkNestedLinkedSourceById( linkedSource => linkedSource.Model.MediaId, linkedSource => linkedSource.Media); loadLinkProtocolBuilder.For <PersonLinkedSource>() .LoadLinkReferenceById( linkedSource => linkedSource.Model.SummaryImageId, linkedSource => linkedSource.SummaryImage); loadLinkProtocolBuilder.For <MediaLinkedSource>() .LoadLinkReferenceById( linkedSource => linkedSource.Model.SummaryImageId, linkedSource => linkedSource.SummaryImage); var blogPostConfig = new ReferenceTypeConfig <BlogPost, string>( ids => ids.Select(GetBlogPost), reference => reference.Id ); _sut = loadLinkProtocolBuilder.Build(() => new ReferenceLoaderStub(blogPostConfig)); }
public LoadLinkPrimitiveModelTests() { var loadLinkProtocolBuilder = new LoadLinkProtocolBuilder(); loadLinkProtocolBuilder.For <PrimitiveLinkedSource>() .LoadLinkReferenceById( linkedSource => linkedSource.Model, linkedSource => linkedSource.Media); _sut = loadLinkProtocolBuilder.Build(() => new ReferenceLoaderStub()); }
public LoadLinkModelTests() { var loadLinkProtocolBuilder = new LoadLinkProtocolBuilder(); loadLinkProtocolBuilder.For <SingleReferenceLinkedSource>() .LoadLinkReferenceById( linkedSource => linkedSource.Model.SummaryImageId, linkedSource => linkedSource.SummaryImage); _sut = loadLinkProtocolBuilder.Build(() => new ReferenceLoaderStub()); }
public OptionalReferenceTests() { var loadLinkProtocolBuilder = new LoadLinkProtocolBuilder(); loadLinkProtocolBuilder.For <LinkedSource>() .LoadLinkReferenceById( linkedSource => linkedSource.Model.MediaId, linkedSource => linkedSource.Media ); _sut = loadLinkProtocolBuilder.Build(() => new ReferenceLoaderStub()); }
public MultipleReferencesTypeTests() { var loadLinkProtocolBuilder = new LoadLinkProtocolBuilder(); loadLinkProtocolBuilder.For <MultipleReferencesTypeLinkedSource>() .LoadLinkReferenceById( linkedSource => linkedSource.Model.SummaryImageId, linkedSource => linkedSource.SummaryImage) .LoadLinkReferenceById( linkedSource => linkedSource.Model.AuthorId, linkedSource => linkedSource.Author); _sut = loadLinkProtocolBuilder.Build(() => new ReferenceLoaderStub()); }
public NestedLinkedSourcesTests() { var loadLinkProtocolBuilder = new LoadLinkProtocolBuilder(); loadLinkProtocolBuilder.For <NestedLinkedSources>() .LoadLinkNestedLinkedSourcesByIds( linkedSource => linkedSource.Model.AuthorIds, linkedSource => linkedSource.Authors); loadLinkProtocolBuilder.For <PersonLinkedSource>() .LoadLinkReferenceById( linkedSource => linkedSource.Model.SummaryImageId, linkedSource => linkedSource.SummaryImage); _sut = loadLinkProtocolBuilder.Build(() => new ReferenceLoaderStub()); }
public ManyReferencesTests() { var loadLinkProtocolBuilder = new LoadLinkProtocolBuilder(); loadLinkProtocolBuilder.For <ManyReferencesLinkedSource>() .LoadLinkReferenceById( linkedSource => linkedSource.Model.SummaryImageId, linkedSource => linkedSource.SummaryImage) .LoadLinkReferenceById( linkedSource => linkedSource.Model.AuthorImageId, linkedSource => linkedSource.AuthorImage) .LoadLinkReferencesByIds( linkedSource => linkedSource.Model.FavoriteImageIds, linkedSource => linkedSource.FavoriteImages); _sut = loadLinkProtocolBuilder.Build(() => new ReferenceLoaderStub()); }
public NestedLinkedSourceTests() { var loadLinkProtocolBuilder = new LoadLinkProtocolBuilder(); loadLinkProtocolBuilder.For <NestedLinkedSource>() .LoadLinkNestedLinkedSourceById( linkedSource => linkedSource.Model.AuthorDetailId, linkedSource => linkedSource.AuthorDetail) .LoadLinkReferenceById( linkedSource => linkedSource.Model.ClientSummaryId, linkedSource => linkedSource.ClientSummary); loadLinkProtocolBuilder.For <PersonLinkedSource>() .LoadLinkReferenceById( linkedSource => linkedSource.Model.SummaryImageId, linkedSource => linkedSource.SummaryImage); _referenceLoaderStub = new ReferenceLoaderStub(); _sut = loadLinkProtocolBuilder.Build(() => _referenceLoaderStub); }
public PolymorphicReferencesTests() { var loadLinkProtocolBuilder = new LoadLinkProtocolBuilder(); loadLinkProtocolBuilder.For <LinkedSource>() .LoadLinkPolymorphicList( linkedSource => linkedSource.Model.Target, linkedSource => linkedSource.Target, link => link.Type, includes => includes.Include <Image>().AsReferenceById( "image", link => link.Id ) .Include <Person>().AsReferenceById( "person", link => link.Id ) ); _sut = loadLinkProtocolBuilder.Build(() => new ReferenceLoaderStub()); }
public SubLinkedSourceTests() { var loadLinkProtocolBuilder = new LoadLinkProtocolBuilder(); loadLinkProtocolBuilder.For <SubContentOwnerLinkedSource>() .LoadLinkNestedLinkedSourceFromModel( linkedSource => linkedSource.Model.SubContent, linkedSource => linkedSource.SubContent) .LoadLinkNestedLinkedSourceFromModel( linkedSource => linkedSource.Model.SubSubContent, linkedSource => linkedSource.SubSubContent); loadLinkProtocolBuilder.For <SubContentLinkedSource>() .LoadLinkNestedLinkedSourceFromModel( linkedSource => linkedSource.Model.SubSubContent, linkedSource => linkedSource.SubSubContent); loadLinkProtocolBuilder.For <SubSubContentLinkedSource>() .LoadLinkReferenceById( linkedSource => linkedSource.Model.SummaryImageId, linkedSource => linkedSource.SummaryImage); _sut = loadLinkProtocolBuilder.Build(() => new ReferenceLoaderStub()); }