public void HelperTypedContentMediaTest()
        {
            var ctx = UmbracoUnitTestHelper.GetUmbracoContext();

            var contentName = "contentName";
            var mediaName   = "mediaName";
            var contentId   = 20;
            var mediaId     = 30;

            //create some IPublishedContent items
            var mediaItem   = UmbracoUnitTestHelper.GetPublishedContentMock(name: mediaName, id: mediaId);
            var contentItem = UmbracoUnitTestHelper.GetPublishedContentMock(name: contentName, id: contentId);

            //we create a mock of the typed query, which is used internally by the Umbraco helper
            var mockedTypedQuery = new Mock <ITypedPublishedContentQuery>();

            mockedTypedQuery.Setup(s => s.TypedContent(contentId)).Returns(contentItem.Object);
            mockedTypedQuery.Setup(s => s.TypedMedia(mediaId)).Returns(mediaItem.Object);

            //give our typed query mock to the longer version of the UmbracoHelper constructor
            var helper = UmbracoUnitTestHelper.GetUmbracoHelper(ctx, typedQuery: mockedTypedQuery.Object);

            var controller = new BasicTestSurfaceController(ctx, helper);
            var res        = controller.BasicTypedContentMediaAction(contentId, mediaId);
            var model      = res.Model as Tuple <string, string>;

            Assert.AreEqual(contentItem.Object.Name, model.Item1);
            Assert.AreEqual(mediaItem.Object.Name, model.Item2);
        }
        public void EngineTypedContentMediaTest()
        {
            //Auto fixture will take care of the name and unit test engine will assign an ID
            var content = _unitTestEngine.WithPublishedContentPage();
            var media   = _unitTestEngine.WithPublishedMedia();

            var controller = new BasicTestSurfaceController(_unitTestEngine.UmbracoContext, _unitTestEngine.UmbracoHelper);
            var res        = controller.BasicTypedContentMediaAction(content.Id, media.Id);
            var model      = res.Model as Tuple <string, string>;

            Assert.AreEqual(content.Name, model.Item1);
            Assert.AreEqual(media.Name, model.Item2);
        }
Пример #3
0
        public void BasicTypedContentMediaTest()
        {
            var appCtx = ApplicationContext.EnsureContext(
                new DatabaseContext(Mock.Of <IDatabaseFactory>(), Mock.Of <ILogger>(), new SqlSyntaxProviders(new[] { Mock.Of <ISqlSyntaxProvider>() })),
                new ServiceContext(),
                CacheHelper.CreateDisabledCacheHelper(),
                new ProfilingLogger(
                    Mock.Of <ILogger>(),
                    Mock.Of <IProfiler>()), true);

            var ctx = UmbracoContext.EnsureContext(
                Mock.Of <HttpContextBase>(),
                appCtx,
                new Mock <WebSecurity>(null, null).Object,
                Mock.Of <IUmbracoSettingsSection>(),
                Enumerable.Empty <IUrlProvider>(), true);

            var contentName = "contentName";
            var mediaName   = "mediaName";
            var contentId   = 20;
            var mediaId     = 30;

            //create some IPublishedContent items
            var mediaItem   = BasicHelpers.GetPublishedContentMock(name: mediaName, id: mediaId);
            var contentItem = BasicHelpers.GetPublishedContentMock(name: contentName, id: contentId);

            //we create a mock of the typed query, which is used internally by the Umbraco helper
            var mockedTypedQuery = new Mock <ITypedPublishedContentQuery>();

            mockedTypedQuery.Setup(s => s.TypedContent(contentId)).Returns(contentItem.Object);
            mockedTypedQuery.Setup(s => s.TypedMedia(mediaId)).Returns(mediaItem.Object);

            //give our typed query mock to the longer version of the UmbracoHelper constructor
            var helper = new UmbracoHelper(ctx,
                                           Mock.Of <IPublishedContent>(),
                                           mockedTypedQuery.Object,
                                           Mock.Of <IDynamicPublishedContentQuery>(),
                                           Mock.Of <ITagQuery>(),
                                           Mock.Of <IDataTypeService>(),
                                           new UrlProvider(ctx, Mock.Of <IWebRoutingSection>(section => section.UrlProviderMode == UrlProviderMode.Auto.ToString()), new[] { Mock.Of <IUrlProvider>() }),
                                           Mock.Of <ICultureDictionary>(),
                                           Mock.Of <IUmbracoComponentRenderer>(),
                                           new MembershipHelper(ctx, Mock.Of <MembershipProvider>(), Mock.Of <RoleProvider>()));

            var controller = new BasicTestSurfaceController(ctx, helper);
            var res        = controller.BasicTypedContentMediaAction(contentId, mediaId);
            var model      = res.Model as Tuple <string, string>;

            Assert.AreEqual(contentItem.Object.Name, model.Item1);
            Assert.AreEqual(mediaItem.Object.Name, model.Item2);
        }