public void InitializeWithField_Should_ExecuteCorrectly() { // Arrange var field = new ShimCascadingLookupField { UrlGet = () => DummyString, ListGet = () => DummyString, DefineNoneGet = () => DummyString, }; ddlFilterValueField.Items.Add(DummyString); ShimSPField.AllInstances.InternalNameGet = _ => DummyString; ShimControl.AllInstances.EnsureChildControls = _ => { }; // Act cascadingLookupFieldSettings.InitializeWithField(field); var url = privateObject.GetFieldOrProperty("Url") as string; var list = privateObject.GetFieldOrProperty("List") as string; var defineNone = privateObject.GetFieldOrProperty("DefineNone") as string; // Assert cascadingLookupFieldSettings.ShouldSatisfyAllConditions( () => url.ShouldNotBeNullOrEmpty(), () => url.ShouldBe(DummyString), () => list.ShouldNotBeNullOrEmpty(), () => list.ShouldBe(DummyString), () => defineNone.ShouldNotBeNullOrEmpty(), () => defineNone.ShouldBe(DummyString), () => ddlFilterValueField.Items.Count.ShouldBe(0)); }
public void OnSaveChange_IsNewField_ExecutesCorrectly() { // Arrange const string Url = "dummyurl.com"; txtUrl.Text = Url; var fields = new Dictionary <string, string>(); var field = new ShimCascadingLookupField { UpdateMyCustomPropertyStringString = (propertyName, value) => { fields.Add(propertyName, value); } }.Instance; chkFilterCriteria.Checked = true; ShimSPField.AllInstances.ParentListGet = _ => new ShimSPList { FieldsGet = () => new ShimSPFieldCollection { GetFieldByInternalNameString = name => new ShimCascadingLookupField().Instance } }; ShimSPField.AllInstances.TitleGet = _ => DummyString; ShimSPField.AllInstances.InternalNameGet = _ => DummyString; ShimListControl.AllInstances.SelectedIndexGet = _ => 1; ShimListControl.AllInstances.SelectedValueGet = _ => DummyString; ShimCascadingLookupField.AllInstances.ChildrenFieldGet = _ => string.Empty; // Act privateObject.Invoke(OnSaveChangeMethodName, field, true); // Assert cascadingLookupFieldSettings.ShouldSatisfyAllConditions( () => fields.ShouldNotBeEmpty(), () => fields.Keys.ShouldContain("Url"), () => fields["Url"].ShouldBe(Url)); }
public void OnSaveChange_IsNewFieldFalse_ExecutesCorrectly() { // Arrange const string Url = "dummyurl.com"; var fieldUrl = string.Empty; txtUrl.Text = Url; var field = new ShimCascadingLookupField { UpdateMyCustomPropertyStringString = (propertyName, value) => { }, UrlSetString = value => fieldUrl = value }.Instance; chkFilterCriteria.Checked = true; ShimSPField.AllInstances.ParentListGet = _ => new ShimSPList { FieldsGet = () => new ShimSPFieldCollection { GetFieldByInternalNameString = name => new ShimCascadingLookupField().Instance } }; ShimSPField.AllInstances.TitleGet = _ => DummyString; ShimSPField.AllInstances.InternalNameGet = _ => DummyString; ShimListControl.AllInstances.SelectedIndexGet = _ => 1; ShimListControl.AllInstances.SelectedValueGet = _ => DummyString; ShimCascadingLookupField.AllInstances.ChildrenFieldGet = _ => string.Empty; ShimCascadingLookupFieldSettings.AllInstances.CleanupChildrenFieldSPFieldString = (_, property, value) => value; // Act privateObject.Invoke(OnSaveChangeMethodName, field, false); // Assert cascadingLookupFieldSettings.ShouldSatisfyAllConditions( () => fieldUrl.ShouldNotBeNullOrEmpty(), () => fieldUrl.ShouldBe(Url)); }