public void AddAndRemove() { // Arrange SPFarmPropertyBag.ClearCache(); var f = new BSPConfiguredFarm(); var fssPO = new MSPPersistedObject(f.SettingStore); fssPO.Update = () => { }; string key = "foo"; // create a farm with property 'key' f.SettingStore.Settings[key] = "fred"; // Act var target = new SPFarmPropertyBag(); var containsBeforeCondition = target.Contains(key); target.Remove(key); var result = target.Contains(key); // Assert Assert.IsFalse(result); Assert.IsTrue(containsBeforeCondition); }
public void GetBusinessEventTypeConfigurationNoItems() { MockConfigManager.ReturnValue = "http://localhost"; SharePointServiceLocator.ReplaceCurrentServiceLocator(new ActivatingServiceLocator().RegisterTypeMapping <IHierarchicalConfig, MockConfigManager>()); SPSite fakeSite = Isolate.Fake.Instance <SPSite>(Members.ReturnRecursiveFakes); Isolate.Swap.NextInstance <SPSite>().With(fakeSite); SPWeb fakeWeb = Isolate.Fake.Instance <SPWeb>(Members.ReturnRecursiveFakes); Isolate.WhenCalled(() => fakeSite.OpenWeb()).WillReturn(fakeWeb); SPFarmPropertyBag spFarmPropertyBag = Isolate.Fake.Instance <SPFarmPropertyBag>(); Isolate.Swap.NextInstance <SPFarmPropertyBag>().With(spFarmPropertyBag); SPList fakeList = fakeWeb.Lists["Business Event Type Configuration"]; SPListItemCollection fakeItems = fakeList.GetItems(new SPQuery()); Isolate.WhenCalled(() => fakeItems.Count).WillReturn(0); BusinessEventTypeConfigurationRepository target = new BusinessEventTypeConfigurationRepository(); target.GetBusinessEventTypeConfiguration(""); }
/// <summary> /// Reads the configuration settings from the farm. This is stored in the /// default property bag for farm, which uses a persisted object in the farm. Avoid storing this /// in SPFarm.Properties, since updating SPFarm will result in the entire farm cache being flushed. /// </summary> /// <returns>the setting if it exists, otherwise throws a configuration exception</returns> private static string GetConfig() { var bag = new SPFarmPropertyBag(SPFarm.Local); if (bag.Contains(defaultCentralUrlKey)) { return(bag[defaultCentralUrlKey] as string); } else { return(null); } }
public void GetBusinessEventTypeConfigurationNullSubSiteCreationConfigurationSiteProperty() { MockConfigManager.ReturnValue = string.Empty; SharePointServiceLocator.ReplaceCurrentServiceLocator(new ActivatingServiceLocator().RegisterTypeMapping <IHierarchicalConfig, MockConfigManager>()); SPFarmPropertyBag spFarmPropertyBag = Isolate.Fake.Instance <SPFarmPropertyBag>(); Isolate.Swap.NextInstance <SPFarmPropertyBag>().With(spFarmPropertyBag); BusinessEventTypeConfigurationRepository target = new BusinessEventTypeConfigurationRepository(); target.GetBusinessEventTypeConfiguration(""); }
public void AddAndContains() { SPFarmPropertyBag.ClearCache(); var f = new BSPConfiguredFarm(); var fssPO = new MSPPersistedObject(f.SettingStore); fssPO.Update = () => { }; string key = "key"; string value = "value"; var target = new SPFarmPropertyBag(); IPropertyBagTest.AddContains(target, key, value); }
public void GetBusinessEventTypeConfigurationTest() { MockConfigManager.ReturnValue = "http://localhost"; SharePointServiceLocator.ReplaceCurrentServiceLocator(new ActivatingServiceLocator().RegisterTypeMapping <IHierarchicalConfig, MockConfigManager>()); SPSite fakeSite = Isolate.Fake.Instance <SPSite>(Members.ReturnRecursiveFakes); Isolate.Swap.NextInstance <SPSite>().With(fakeSite); SPWeb fakeWeb = Isolate.Fake.Instance <SPWeb>(Members.ReturnRecursiveFakes); Isolate.WhenCalled(() => fakeSite.OpenWeb()).WillReturn(fakeWeb); Guid SiteTemplateFieldId = new Guid("84267e40-7f47-4f40-b3be-4004312eb467"); Guid BusinessEventIdKeyFieldId = new Guid("3D6B9777-FDA5-4639-9316-B39D3E060573"); Guid TopLevelSiteRelativeUrlFieldId = new Guid("E87A0DE5-29D7-461e-9C83-67C2D291B54C"); SPList fakeList = fakeWeb.Lists["Business Event Type Configuration"]; SPListItemCollection fakeItems = fakeList.GetItems(new SPQuery()); Isolate.WhenCalled(() => fakeItems.Count).WillReturn(1); var fakeItem = fakeItems[0]; Isolate.WhenCalled(() => fakeItem[SiteTemplateFieldId]).WithExactArguments().WillReturn("TESTSTP"); Isolate.WhenCalled(() => fakeItem[BusinessEventIdKeyFieldId]).WithExactArguments().WillReturn("TESTKEY"); Isolate.WhenCalled(() => fakeItem[TopLevelSiteRelativeUrlFieldId]).WithExactArguments().WillReturn("http://testurl"); SPFarmPropertyBag spFarmPropertyBag = Isolate.Fake.Instance <SPFarmPropertyBag>(); Isolate.Swap.NextInstance <SPFarmPropertyBag>().With(spFarmPropertyBag); string businessEvent = string.Empty; BusinessEventTypeConfiguration expected = new BusinessEventTypeConfiguration(); expected.BusinessEventIdKey = "TESTKEY"; expected.SiteTemplate = "TESTSTP"; expected.TopLevelSiteRelativeUrl = "http://testurl"; BusinessEventTypeConfigurationRepository target = new BusinessEventTypeConfigurationRepository(); BusinessEventTypeConfiguration actual; actual = target.GetBusinessEventTypeConfiguration(businessEvent); Assert.AreEqual(expected.BusinessEventIdKey, actual.BusinessEventIdKey); Assert.AreEqual(expected.SiteTemplate, actual.SiteTemplate); Assert.AreEqual(expected.TopLevelSiteRelativeUrl, actual.TopLevelSiteRelativeUrl); }
public void ctor_WithNoSharePointContext() { //Arrange MSPFarm.LocalGet = () => null; bool expectedExceptionThrown = false; //Act try { var target = new SPFarmPropertyBag(); } catch (NoSharePointContextException) { expectedExceptionThrown = true; } Assert.IsTrue(expectedExceptionThrown); }
public void Execute_ReturnsNull_WithValidKeyNotSetAtFarmLevel() { //arrange SPFarmPropertyBag.ClearCache(); var args = new ReadConfigArgs(); string key = ConfigManager.PnPKeyNamespace + "." + TestsConstants.TestGuidName; var proxyOp = new ReadConfigurationOperation(); var f = new BSPConfiguredFarm(); args.Key = key; args.Level = (int)ConfigLevel.CurrentSPFarm; args.SiteId = TestsConstants.TestGuid; //Act var target = proxyOp.Execute(args); //Assert Assert.IsNull(target); }
public void GetAllPartnerSites() { SharePointServiceLocator.ReplaceCurrentServiceLocator(new ActivatingServiceLocator() .RegisterTypeMapping <IHierarchicalConfig, MockConfigManager>() .RegisterTypeMapping <ILogger, MockLogger>()); SPFarm fakeFarm = Isolate.Fake.Instance <SPFarm>(); Isolate.WhenCalled(() => SPFarm.Local).WillReturn(fakeFarm); //Not sure why SPFarm.local is returning null, therefore making these next two lines necessary. //Seems to be related to faking the call to GetItems. SPFarmPropertyBag farmPropertyBag = new SPFarmPropertyBag(); Isolate.Swap.NextInstance <SPFarmPropertyBag>().With(farmPropertyBag); SPSite fakeSite = Isolate.Fake.Instance <SPSite>(Members.ReturnRecursiveFakes); Isolate.Swap.NextInstance <SPSite>().With(fakeSite); SPWeb fakeWeb = fakeSite.OpenWeb(); SPList fakeList = fakeWeb.Lists["Sites"]; SPListItemCollection fakeItems = Isolate.Fake.Instance <SPListItemCollection>(Members.ReturnRecursiveFakes); SPListItem fakeItem = Isolate.Fake.Instance <SPListItem>(); Isolate.WhenCalled(() => fakeItems[0]).WillReturn(fakeItem); Isolate.WhenCalled(() => fakeList.GetItems(new SPQuery())).WillReturn(fakeItems); Isolate.WhenCalled(() => fakeItem["PartnerDirectoryPartnerField"]).WillReturn("TestPartner"); Isolate.WhenCalled(() => fakeItem["URL"]).WillReturn("http://localhost"); Isolate.WhenCalled(() => fakeItem["Title"]).WillReturn("Unit Test"); PartnerSiteDirectory target = new PartnerSiteDirectory(); var partnerSites = target.GetAllPartnerSites(); Assert.AreEqual(1, partnerSites.Count()); Assert.AreEqual("TestPartner", partnerSites.First().PartnerId); Assert.AreEqual("http://localhost", partnerSites.First().SiteCollectionUrl); Assert.AreEqual("Unit Test", partnerSites.First().Title); }
public void Execute_ContainsKeyReturnsTrue_WithValidKeyAtFarmLevel() { //arrange SPFarmPropertyBag.ClearCache(); var args = new ContainsKeyDataArgs(); string key = ConfigManager.PnPKeyNamespace + "." + TestsConstants.TestGuidName; var proxyOp = new ContainsKeyOperation(); var f = new BSPConfiguredFarm(); string expectedData = "{92700BB6-B144-434F-A97B-5F696068A425}"; args.Key = key; args.Level = (int)ConfigLevel.CurrentSPFarm; args.SiteId = TestsConstants.TestGuid; f.SettingStore.Settings[key] = expectedData; //Act var target = proxyOp.Execute(args); //Assert Assert.IsInstanceOfType(target, typeof(bool)); Assert.IsTrue((bool)target); }
//private string encrypt; public LicenseRepository() { serviceLocator = SharePointServiceLocator.GetCurrent(); configManager = serviceLocator.GetInstance <IConfigManager>(); Farmbag = (SPFarmPropertyBag)configManager.GetPropertyBag(ConfigLevel.CurrentSPFarm); }
/// <summary> /// Implements the operation for determining if a key exists in a web application /// </summary> /// <param name="args">The arguments for the contains key operation. This must be an instance of ContainsKeyDataArgs.</param> /// <returns>true if the key found, false if the key is not found, or an exception representing an error if an error occurred</returns> public override object Execute(SPProxyOperationArgs args) { if (args == null) { throw new ArgumentNullException("args"); } var containsKeyArgs = args as ContainsKeyDataArgs; if (containsKeyArgs == null) { string message = string.Format(CultureInfo.CurrentCulture, Resources.InvalidProxyArgumentType, typeof(ContainsKeyDataArgs).FullName, args.GetType().FullName); var ex = new ConfigurationException(message); return(ex); } else if (containsKeyArgs.Key == null) { return(new ArgumentNullException("ContainsKeyDataArgs.Key")); } try { ConfigLevel level = (ConfigLevel)containsKeyArgs.Level; if (containsKeyArgs.Key.StartsWith(ConfigManager.PnPKeyNamespace) == false) { string message = string.Format(CultureInfo.CurrentCulture, Resources.InvalidKeyName, containsKeyArgs.Key); ConfigurationException ex = new ConfigurationException(message); return(ex); } else { bool contains = false; if (level == ConfigLevel.CurrentSPWebApplication) { if (containsKeyArgs.SiteId == Guid.Empty) { return(new ConfigurationException(Resources.EmptySiteGuid)); } using (SPSite site = new SPSite(containsKeyArgs.SiteId)) { SPWebAppPropertyBag bag = new SPWebAppPropertyBag(site.WebApplication); contains = bag.Contains(containsKeyArgs.Key); } } else if (level == ConfigLevel.CurrentSPFarm) { var bag = new SPFarmPropertyBag(SPFarm.Local); contains = bag.Contains(containsKeyArgs.Key); } else { string message = string.Format(CultureInfo.CurrentCulture, Resources.InvalidConfigLevel, level.ToString()); ConfigurationException ex = new ConfigurationException(message); return(ex); } return(contains); } } catch (Exception excpt) { return(excpt); } }
/// <summary> /// Sets the central configuration key to the value specified. /// </summary> /// <param name="url">The value of the url to set</param> public static void SetCentralConfigUrl(string url) { var bag = new SPFarmPropertyBag(SPFarm.Local); bag[defaultCentralUrlKey] = url; }