示例#1
0
        public void SetUp()
        {
            IRestServiceGrammar  restGrammar   = RestServiceGrammar.ItemWebApiV2Grammar();
            IWebApiUrlParameters webApiGrammar = WebApiUrlParameters.ItemWebApiV2UrlParameters();

            this.builderForId    = new ItemByIdUrlBuilder(restGrammar, webApiGrammar);
            this.builderForPath  = new ItemByPathUrlBuilder(restGrammar, webApiGrammar);
            this.builderForQuery = new ItemByQueryUrlBuilder(restGrammar, webApiGrammar);

            this.defaultSource = new ItemSourcePOD(null, null, null);

            SessionConfigPOD mutableSessionConfig = new SessionConfigPOD();

            mutableSessionConfig.ItemWebApiVersion = "v1";
            mutableSessionConfig.InstanceUrl       = "tumba.yumba";
            mutableSessionConfig.Site = null;
            this.sessionConfig        = mutableSessionConfig;


            mutableSessionConfig = new SessionConfigPOD();
            mutableSessionConfig.ItemWebApiVersion = "v234";
            mutableSessionConfig.InstanceUrl       = "trololo.net";
            mutableSessionConfig.Site = "/sitecore/shell";
            this.sitecoreShellConfig  = mutableSessionConfig;
        }
示例#2
0
        public void TestUrlAndVersionMustBeSetOnDefaultConfig()
        {
            var noInstanceUrl = new SessionConfigPOD();

            noInstanceUrl.InstanceUrl       = null;
            noInstanceUrl.ItemWebApiVersion = "v1";
            noInstanceUrl.Site = "/sitecore/shell";

            var noSite = new SessionConfigPOD();

            noSite.InstanceUrl       = "http://localhost:80";
            noSite.ItemWebApiVersion = "v1";
            noSite.Site = null;


            var noWebApiVersion = new SessionConfigPOD();

            noWebApiVersion.InstanceUrl       = "sitecore.net";
            noWebApiVersion.ItemWebApiVersion = null;
            noWebApiVersion.Site = "/sitecore/shell";



            Assert.Throws <ArgumentNullException>(() => new SessionConfigMerger(noInstanceUrl));
            Assert.Throws <ArgumentNullException>(() => new SessionConfigMerger(noWebApiVersion));
            Assert.DoesNotThrow(() => new SessionConfigMerger(noSite));
        }
        public void SetUp()
        {
            SessionConfigPOD mockConfig = new SessionConfigPOD();

            mockConfig.InstanceUrl       = "localhost";
            mockConfig.ItemWebApiVersion = "v1";
            mockConfig.Site = null;

            var itemSource = new ItemSourcePOD("master", "fr");

            var mediaSettings = new MutableMediaLibrarySettings();

            this.builder = new MediaItemUrlBuilder(
                RestServiceGrammar.ItemWebApiV2Grammar(),
                WebApiUrlParameters.ItemWebApiV2UrlParameters(),
                mockConfig,
                mediaSettings,
                itemSource);


            SessionConfigPOD mockConfigWithShell = new SessionConfigPOD();

            mockConfigWithShell.InstanceUrl       = "localhost";
            mockConfigWithShell.ItemWebApiVersion = "v1";
            mockConfigWithShell.Site  = "/sitecore/shell";
            this.builderWithShellSite = new MediaItemUrlBuilder(
                RestServiceGrammar.ItemWebApiV2Grammar(),
                WebApiUrlParameters.ItemWebApiV2UrlParameters(),
                mockConfigWithShell,
                mediaSettings,
                itemSource);
        }
        public void TestCustomMediaHook()
        {
            SessionConfigPOD sessionConfig = new SessionConfigPOD();

            sessionConfig.InstanceUrl       = "htTP://CUSTOM.hoST";
            sessionConfig.ItemWebApiVersion = "v1";
            sessionConfig.Site             = "/sitecore/shell";
            sessionConfig.MediaLibraryRoot = "/SiteCore/Other Media Library";
            sessionConfig.DefaultMediaResourceExtension = "ZIP";
            sessionConfig.MediaPrefix = "~/MediaXyZ";

            ISessionConfig        sessionSettings = sessionConfig;
            IMediaLibrarySettings mediaSettings   = sessionConfig;


            ItemSource itemSource = LegacyConstants.DefaultSource();

            this.builder = new MediaItemUrlBuilder(this.restGrammar, this.webApiGrammar, sessionSettings, mediaSettings, itemSource);

            var customBuilder =
                new MediaItemUrlBuilder(
                    this.restGrammar,
                    this.webApiGrammar,
                    sessionSettings,
                    mediaSettings,
                    itemSource);


            string result   = customBuilder.BuildUrlStringForPath("~/mediaXYZ/1.png.ashx", null);
            string expected = "http://custom.host/~/mediaxyz/1.png.ashx?db=web&la=en";

            Assert.AreEqual(expected, result);
        }
        public void TestUrlMustBeSetOnDefaultConfig()
        {
            var noInstanceUrl = new SessionConfigPOD();

            noInstanceUrl.InstanceUrl = null;

            Assert.Throws <ArgumentNullException>(() => new SessionConfigMerger(noInstanceUrl));
        }
        public void TestBuildWithInvalidSite()
        {
            SessionConfigPOD mockConfig = new SessionConfigPOD();

            mockConfig.InstanceUrl       = "localhost";
            mockConfig.ItemWebApiVersion = "v1";

            TestDelegate action = () => mockConfig.Site = "sitecore/shell";

            Assert.Throws <ArgumentException>(action, "site must starts with '/'");
        }
        public void SetUp()
        {
            IRestServiceGrammar restGrammar   = RestServiceGrammar.ItemSSCV2Grammar();
            ISSCUrlParameters   webApiGrammar = SSCUrlParameters.ItemSSCV2UrlParameters();

            this.getEntityBuilder = new GetEntitiesUrlBuilder <IBaseEntityRequest>(restGrammar, webApiGrammar);

            SessionConfigPOD mutableSession = new SessionConfigPOD();

            mutableSession.InstanceUrl = "http://mobiledev1ua1.dk.sitecore.net";
            this.sessionConfig         = mutableSession;
        }
        public void TestMergerReturnsDefaultSourceForNilInput()
        {
            var defaultConfig = new SessionConfigPOD();

            defaultConfig.InstanceUrl = "sitecore.net";


            var            merger = new SessionConfigMerger(defaultConfig);
            ISessionConfig result = merger.FillSessionConfigGaps(null);

            Assert.AreSame(defaultConfig, result);
        }
        public void TestBuildBaseUrlWithoutSite()
        {
            SessionConfigUrlBuilder builder    = new SessionConfigUrlBuilder(RestServiceGrammar.ItemSSCV2Grammar(), SSCUrlParameters.ItemSSCV2UrlParameters());
            SessionConfigPOD        mockConfig = new SessionConfigPOD();

            mockConfig.InstanceUrl = "localhost";

            string result   = builder.BuildUrlString(mockConfig);
            string expected = "https://localhost/sitecore/api/ssc";

            Assert.AreEqual(expected, result);
        }
        public ISessionConfig FillSessionConfigGaps(ISessionConfig userConfig)
        {
            if (null == userConfig)
            {
                return(this.defaultSessionConfig);
            }

            var result = new SessionConfigPOD();

            result.InstanceUrl = userConfig.InstanceUrl ?? this.defaultSessionConfig.InstanceUrl;

            return(result);
        }
        public void SetUp()
        {
            IRestServiceGrammar restGrammar   = RestServiceGrammar.ItemSSCV2Grammar();
            ISSCUrlParameters   webApiGrammar = SSCUrlParameters.ItemSSCV2UrlParameters();

            this.builder = new ItemByPathUrlBuilder(restGrammar, webApiGrammar);

            SessionConfigPOD mutableSession = new SessionConfigPOD();

            mutableSession.InstanceUrl = "http://mobiledev1ua1.dk.sitecore.net";
            this.sessionConfig         = mutableSession;

            this.payload = new QueryParameters(null);
        }
        public void TestBuildBaseUrlWithoutSite()
        {
            SessionConfigUrlBuilder builder    = new SessionConfigUrlBuilder(RestServiceGrammar.ItemWebApiV2Grammar(), WebApiUrlParameters.ItemWebApiV2UrlParameters());
            SessionConfigPOD        mockConfig = new SessionConfigPOD();

            mockConfig.InstanceUrl       = "localhost";
            mockConfig.ItemWebApiVersion = "v1";
            mockConfig.Site = null;

            string result   = builder.BuildUrlString(mockConfig);
            string expected = "http://localhost/-/item/v1";

            Assert.AreEqual(expected, result);
        }
        public void SetUp()
        {
            IRestServiceGrammar restGrammar   = RestServiceGrammar.ItemSSCV2Grammar();
            ISSCUrlParameters   webApiGrammar = SSCUrlParameters.ItemSSCV2UrlParameters();

            this.builder = new UpdateItemByIdUrlBuilder(restGrammar, webApiGrammar);

            SessionConfigPOD mutableSessionConfig = new SessionConfigPOD();

            mutableSessionConfig.InstanceUrl = "mobiledev1ua1.dk.sitecore.net:7119";

            ItemSource source = LegacyConstants.DefaultSource();

            this.requestMerger = new UserRequestMerger(mutableSessionConfig, source, null);
        }
        public ISessionConfig FillSessionConfigGaps(ISessionConfig userConfig)
        {
            if (null == userConfig)
            {
                return(this.defaultSessionConfig);
            }

            var result = new SessionConfigPOD();

            result.InstanceUrl       = userConfig.InstanceUrl ?? this.defaultSessionConfig.InstanceUrl;
            result.Site              = userConfig.Site ?? this.defaultSessionConfig.Site;
            result.ItemWebApiVersion = userConfig.ItemWebApiVersion ?? this.defaultSessionConfig.ItemWebApiVersion;

            return(result);
        }
        public void TestUserFieldsHaveHigherPriority()
        {
            var defaultConfig = new SessionConfigPOD();

            defaultConfig.InstanceUrl = "sitecore.net";

            var userConfig = new SessionConfigPOD();

            userConfig.InstanceUrl = "http://localhost:80";

            var            merger = new SessionConfigMerger(defaultConfig);
            ISessionConfig result = merger.FillSessionConfigGaps(userConfig);

            Assert.AreEqual(userConfig, result);
            Assert.AreNotSame(userConfig, result);
        }
        public void TestNullUserFieldsAreAutocompleted()
        {
            var defaultConfig = new SessionConfigPOD();

            defaultConfig.InstanceUrl = "sitecore.net";

            var userConfig = new SessionConfigPOD();

            userConfig.InstanceUrl = null;

            var            merger = new SessionConfigMerger(defaultConfig);
            ISessionConfig result = merger.FillSessionConfigGaps(userConfig);

            Assert.AreEqual(defaultConfig, result);
            Assert.AreNotSame(defaultConfig, result);
        }
        public void SetUp()
        {
            IRestServiceGrammar  restGrammar   = RestServiceGrammar.ItemWebApiV2Grammar();
            IWebApiUrlParameters webApiGrammar = WebApiUrlParameters.ItemWebApiV2UrlParameters();

            this.builder = new ItemByQueryUrlBuilder(restGrammar, webApiGrammar);

            SessionConfigPOD mutableSession = new SessionConfigPOD();

            mutableSession.InstanceUrl       = "http://mobiledev1ua1.dk.sitecore.net:722";
            mutableSession.ItemWebApiVersion = "v13";
            mutableSession.Site = null;
            this.sessionConfig  = mutableSession;

            this.payload = new QueryParameters(PayloadType.Full, null, null);
        }
        public void SetUp()
        {
            IRestServiceGrammar  restGrammar   = RestServiceGrammar.ItemWebApiV2Grammar();
            IWebApiUrlParameters webApiGrammar = WebApiUrlParameters.ItemWebApiV2UrlParameters();

            this.builder = new UpdateItemByPathUrlBuilder(restGrammar, webApiGrammar);

            SessionConfigPOD mutableSessionConfig = new SessionConfigPOD();

            mutableSessionConfig.ItemWebApiVersion = "v234";
            mutableSessionConfig.InstanceUrl       = "mobiledev1ua1.dk.sitecore.net:7119";
            mutableSessionConfig.Site = "/sitecore/shell";

            ItemSource source = LegacyConstants.DefaultSource();

            this.requestMerger = new UserRequestMerger(mutableSessionConfig, source);
        }
示例#19
0
        public void SetUp()
        {
            this.webApiGrammar = SSCUrlParameters.ItemSSCV2UrlParameters();
            this.restGrammar   = RestServiceGrammar.ItemSSCV2Grammar();

            SessionConfigPOD sessionConfig = new SessionConfigPOD();

            sessionConfig.InstanceUrl      = "http://test.host";
            sessionConfig.MediaLibraryRoot = "/sitecore/media library";
            sessionConfig.DefaultMediaResourceExtension = "ashx";
            sessionConfig.MediaPrefix = "~/media";

            ISessionConfig        sessionSettings = sessionConfig;
            IMediaLibrarySettings mediaSettings   = sessionConfig;

            ItemSource itemSource = LegacyConstants.DefaultSource();

            this.builder = new MediaItemUrlBuilder(this.restGrammar, this.webApiGrammar, sessionSettings, mediaSettings, itemSource);
        }
示例#20
0
        public void TestUserFieldsHaveHigherPriority()
        {
            var defaultConfig = new SessionConfigPOD();

            defaultConfig.InstanceUrl       = "sitecore.net";
            defaultConfig.ItemWebApiVersion = "v1";
            defaultConfig.Site = "/sitecore/shell";

            var userConfig = new SessionConfigPOD();

            userConfig.InstanceUrl       = "http://localhost:80";
            userConfig.ItemWebApiVersion = "v100500";
            userConfig.Site = "/abra/kadabra";

            var            merger = new SessionConfigMerger(defaultConfig);
            ISessionConfig result = merger.FillSessionConfigGaps(userConfig);

            Assert.AreEqual(userConfig, result);
            Assert.AreNotSame(userConfig, result);
        }
        public void SetUp()
        {
            IRestServiceGrammar  restGrammar   = RestServiceGrammar.ItemWebApiV2Grammar();
            IWebApiUrlParameters webApiGrammar = WebApiUrlParameters.ItemWebApiV2UrlParameters();

            this.builder = new ItemByIdUrlBuilder(restGrammar, webApiGrammar);

            SessionConfigPOD mutableSessionConfig = new SessionConfigPOD();

            mutableSessionConfig.ItemWebApiVersion = "v1";
            mutableSessionConfig.InstanceUrl       = "sitecore.net";
            mutableSessionConfig.Site = null;
            this.sessionConfig        = mutableSessionConfig;


            mutableSessionConfig = new SessionConfigPOD();
            mutableSessionConfig.ItemWebApiVersion = "v234";
            mutableSessionConfig.InstanceUrl       = "mobiledev1ua1.dk.sitecore.net:7119";
            mutableSessionConfig.Site = "/sitecore/shell";
            this.sitecoreShellConfig  = mutableSessionConfig;

            this.payload = new QueryParameters(PayloadType.Min, null, null);
        }