/// <summary> /// Generate data for the request, return Constrain.NoValue instead of null /// </summary> /// <param name="request">data request</param> /// <returns>generated data</returns> public override object GenerateData(DataRequest request) { if (!request.Populate) { return(LocateValue); } var minMax = _constraintHelper.GetMinMax(request, sbyte.MinValue, sbyte.MaxValue); minMax.Min = _constraintHelper.GetValue(request.Constraints, minMax.Min, "min", "minValue"); minMax.Max = _constraintHelper.GetValue(request.Constraints, minMax.Max, "max", "maxValue"); if (minMax.Min.CompareTo(minMax.Max) > 0) { minMax.Min = minMax.Max; } return(_dataGenerator.NextSByte(minMax.Min, minMax.Max)); }