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 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 '/'"); }
private SessionConfigPOD SessionConfigPODCopy() { SessionConfigPOD result = new SessionConfigPOD(); result.InstanceUrl = this.InstanceUrl; result.MediaLibraryRoot = this.MediaLibraryRoot; result.DefaultMediaResourceExtension = this.DefaultMediaResourceExtension; result.MediaPrefix = this.MediaPrefix; return(result); }
private SessionConfigPOD SessionConfigPODCopy() { SessionConfigPOD result = new SessionConfigPOD(); result.InstanceUrl = this.InstanceUrl; result.ItemWebApiVersion = this.ItemWebApiVersion; result.Site = this.Site; result.MediaLibraryRoot = this.MediaLibraryRoot; result.DefaultMediaResourceExtension = this.DefaultMediaResourceExtension; result.MediaPrefix = this.MediaPrefix; result.MediaDownloadStrategy = this.MediaDownloadStrategy; return result; }
public void TestMergerReturnsDefaultSourceForNilInput() { var defaultConfig = new SessionConfigPOD(); defaultConfig.InstanceUrl = "sitecore.net"; defaultConfig.ItemWebApiVersion = "v1"; defaultConfig.Site = "/sitecore/shell"; var merger = new SessionConfigMerger(defaultConfig); ISessionConfig result = merger.FillSessionConfigGaps(null); Assert.AreSame(defaultConfig, result); }
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); }
private SessionConfigPOD SessionConfigPODCopy() { SessionConfigPOD result = new SessionConfigPOD(); result.InstanceUrl = this.InstanceUrl; result.ItemWebApiVersion = this.ItemWebApiVersion; result.Site = this.Site; result.MediaLibraryRoot = this.MediaLibraryRoot; result.DefaultMediaResourceExtension = this.DefaultMediaResourceExtension; result.MediaPrefix = this.MediaPrefix; result.MediaDownloadStrategy = this.MediaDownloadStrategy; return(result); }
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 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); }
public void TestNullUserFieldsAreAutocompleted() { var defaultConfig = new SessionConfigPOD(); defaultConfig.InstanceUrl = "sitecore.net"; defaultConfig.ItemWebApiVersion = "v1"; defaultConfig.Site = "/sitecore/shell"; var userConfig = new SessionConfigPOD(); userConfig.InstanceUrl = null; userConfig.ItemWebApiVersion = null; userConfig.Site = null; var merger = new SessionConfigMerger(defaultConfig); ISessionConfig result = merger.FillSessionConfigGaps(userConfig); Assert.AreEqual(defaultConfig, result); Assert.AreNotSame(defaultConfig, result); }
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() { this.webApiGrammar = WebApiUrlParameters.ItemWebApiV2UrlParameters(); this.restGrammar = RestServiceGrammar.ItemWebApiV2Grammar(); SessionConfigPOD sessionConfig = new SessionConfigPOD(); sessionConfig.InstanceUrl = "http://test.host"; sessionConfig.ItemWebApiVersion = "v1"; sessionConfig.Site = "/sitecore/shell"; 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); }
public override bool Equals(object obj) { if (object.ReferenceEquals(this, obj)) { return(true); } SessionConfigPOD other = (SessionConfigPOD)obj; if (null == other) { return(false); } bool isUrlEqual = object.Equals(this.InstanceUrl, other.InstanceUrl); return(isUrlEqual); }
public override bool Equals(object obj) { if (object.ReferenceEquals(this, obj)) { return(true); } SessionConfigPOD other = (SessionConfigPOD)obj; if (null == other) { return(false); } bool isUrlEqual = object.Equals(this.InstanceUrl, other.InstanceUrl); bool isVersionEqual = object.Equals(this.ItemWebApiVersion, other.ItemWebApiVersion); bool isSiteEqual = object.Equals(this.Site, other.Site); return(isUrlEqual && isVersionEqual && isSiteEqual); }
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); }
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; }
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 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); }