public void MediaUrlShoulReturnEmptyStringWhenLinkNull([Content] Item item, [Content] MediaTemplate template) { var mediaItem = item.Add("media", new TemplateID(template.ID)); ItemExtensions.MediaUrl(mediaItem, template.FieldId).Should().NotBeNull(); ItemExtensions.MediaUrl(mediaItem, template.FieldId).Should().BeEmpty(); }
public void MediaUrlShoulReturnLink([Content] Db db, [Content] Item target, [Content] MediaTemplate template, string expectedUri) { var newID = ID.NewID; db.Add(new Sitecore.FakeDb.DbItem("home", newID, template.ID) { new Sitecore.FakeDb.DbLinkField("medialink", template.FieldId) { LinkType = "media", TargetID = target.ID } }); Sitecore.Resources.Media.MediaProvider mediaProvider = NSubstitute.Substitute.For <Sitecore.Resources.Media.MediaProvider>(); mediaProvider .GetMediaUrl(Arg.Is <Sitecore.Data.Items.MediaItem>(i => i.ID == target.ID)) .Returns(expectedUri); // substitute the original provider with the mocked one using (new Sitecore.FakeDb.Resources.Media.MediaProviderSwitcher(mediaProvider)) ItemExtensions.MediaUrl(Database.GetDatabase("master").GetItem(newID), template.FieldId).Should().Be(expectedUri); }