public override object GetNewPropValue(ExpectUpdate attr, object obj, PropertyInfo prop) { object newValue = null; var typedAttr = attr as ExpectUpdateAsIntRange; var minValue = typedAttr.MinValue; var maxValue = typedAttr.MaxValue; var tmpValue = minValue + RndService.Int(maxValue - minValue); if (prop.PropertyType == typeof(double?) || prop.PropertyType == typeof(double)) { newValue = Convert.ToDouble(tmpValue); } else if (prop.PropertyType == typeof(UInt16?) || prop.PropertyType == typeof(UInt16)) { newValue = Convert.ToUInt16(tmpValue); } else { // TODO, as per case newValue = tmpValue; } return(newValue); }
public override object GetNewPropValue(ExpectUpdate attr, object obj, PropertyInfo prop) { object newValue = null; var newLocaleIdValue = 1033 + RndService.Int(5); if (prop.PropertyType == typeof(int)) { newValue = newLocaleIdValue; } else if (prop.PropertyType == typeof(int?)) { newValue = RndService.Bool() ? (int?)null : newLocaleIdValue; } else if (prop.PropertyType == typeof(uint)) { newValue = (uint)newLocaleIdValue; } else if (prop.PropertyType == typeof(uint?)) { newValue = (uint?)(RndService.Bool() ? (uint?)null : (uint?)newLocaleIdValue); } return(newValue); }
public override object GetNewPropValue(ExpectUpdate attr, object obj, PropertyInfo prop) { object newValue = null; newValue = string.Format("<View BaseViewID='{0}'/>", RndService.Int(100) + 1); return(newValue); }
public override object GetNewPropValue(ExpectUpdate attr, object obj, PropertyInfo prop) { object newValue = null; newValue = string.Format("=ID*{0}", RndService.Int(100)); return(newValue); }
public override object GetNewPropValue(ExpectUpdate attr, object obj, PropertyInfo prop) { object newValue = null; var values = new List <string>(); values.Add(BuiltInInternalFieldNames.ID); values.Add(BuiltInInternalFieldNames.Edit); values.Add(BuiltInInternalFieldNames.Created); values.Add(BuiltInInternalFieldNames._Author); if (prop.PropertyType == typeof(string)) { newValue = values[RndService.Int(values.Count - 1)]; } if (prop.PropertyType == typeof(Collection <string>)) { newValue = RndService.RandomCollectionFromArray(values); } return(newValue); }
public override object GetNewPropValue(ExpectUpdate attr, object obj, PropertyInfo prop) { object newValue = null; if (prop.PropertyType == typeof(byte[])) { if (obj is WebPartGalleryFileDefinition && prop.Name == "Content") { // change web part var webPartXmlString = Encoding.UTF8.GetString(prop.GetValue(obj) as byte[]); var webPartXml = WebpartXmlExtensions.LoadWebpartXmlDocument(webPartXmlString); webPartXml.SetTitleUrl(RndService.HttpUrl()); newValue = Encoding.UTF8.GetBytes(webPartXml.ToString()); } else { newValue = RndService.Content(); } } else if (prop.PropertyType == typeof(string)) { newValue = RndService.String(); } else if (prop.PropertyType == typeof(bool)) { newValue = RndService.Bool(); } else if (prop.PropertyType == typeof(bool?)) { var oldValue = prop.GetValue(obj) as bool?; if (oldValue == null) { newValue = RndService.Bool(); } else { newValue = !oldValue.Value; } } else if (prop.PropertyType == typeof(int)) { newValue = RndService.Int(); } else if (prop.PropertyType == typeof(int?)) { newValue = RndService.Bool() ? (int?)null : RndService.Int(); } else if (prop.PropertyType == typeof(uint)) { newValue = (uint)RndService.Int(); } else if (prop.PropertyType == typeof(uint?)) { newValue = RndService.Bool() ? null : (uint?)RndService.Int(); } else if (prop.PropertyType == typeof(Collection <string>)) { var resultLength = RndService.Int(10); var result = new Collection <string>(); for (var index = 0; index < resultLength; index++) { result.Add(RndService.String()); } newValue = result; } else if (prop.PropertyType == typeof(List <string>)) { var resultLength = RndService.Int(10); var result = new List <string>(); for (var index = 0; index < resultLength; index++) { result.Add(RndService.String()); } newValue = result; } else if (prop.PropertyType == typeof(double?) || prop.PropertyType == typeof(double)) { newValue = (double)RndService.Int(); } else { throw new SPMeta2NotImplementedException(string.Format("Update validation for type: [{0}] is not supported yet", prop.PropertyType)); } return(newValue); }