public void Validate_ConversionFailed_Error()
		{
			CustomAssert.ThrowsException<CodedArgumentException>(() =>
			{
				ParameterDataType type = ParameterDataType.UInt16;
				object minValue = (ushort)50;
				object value = -1;
				MinimumValueConstraint c = new MinimumValueConstraint(type, minValue);
				IEnumerable<ParameterValidationResult> result = c.Validate(value, type, Constants.MemberName);
			});
		}
		public void Validate_Version_Success()
		{
			ParameterDataType type = ParameterDataType.Version;
			object minValue = new Version(1, 1, 0, 0);
			object value = new Version(1, 1, 2, 0);
			MinimumValueConstraint c = new MinimumValueConstraint(type, minValue);
			IEnumerable<ParameterValidationResult> result = c.Validate(value, type, Constants.MemberName);
			Assert.IsNotNull(result);
			Assert.IsFalse(result.GetEnumerator().MoveNext());
		}
		public void Validate_NotConvertible_Error()
		{
			CustomAssert.ThrowsException<CodedArgumentException>(() =>
			{
				ParameterDataType type = ParameterDataType.DateTimeOffset;
				object minValue = DateTimeOffset.Now.AddDays(1.0);
				object value = 42;
				MinimumValueConstraint c = new MinimumValueConstraint(type, minValue);
				IEnumerable<ParameterValidationResult> result = c.Validate(value, type, Constants.MemberName);
			});
		}
		public void Validate_UInt64_Success()
		{
			ParameterDataType type = ParameterDataType.UInt64;
			object minValue = (ulong)42;
			object value = (ulong)50;
			MinimumValueConstraint c = new MinimumValueConstraint(type, minValue);
			IEnumerable<ParameterValidationResult> result = c.Validate(value, type, Constants.MemberName);
			Assert.IsNotNull(result);
			Assert.IsFalse(result.GetEnumerator().MoveNext());
		}
		public void Validate_TimeSpan_Success()
		{
			ParameterDataType type = ParameterDataType.TimeSpan;
			object minValue = TimeSpan.FromSeconds(42.0);
			object value = TimeSpan.FromSeconds(50.0);
			MinimumValueConstraint c = new MinimumValueConstraint(type, minValue);
			IEnumerable<ParameterValidationResult> result = c.Validate(value, type, Constants.MemberName);
			Assert.IsNotNull(result);
			Assert.IsFalse(result.GetEnumerator().MoveNext());
		}
		public void Validate_Int32TooSmall_Success()
		{
			ParameterDataType type = ParameterDataType.Int32;
			object minValue = 51;
			object value = 50;
			MinimumValueConstraint c = new MinimumValueConstraint(type, minValue);
			IEnumerable<ParameterValidationResult> result = c.Validate(value, type, Constants.MemberName);
			Assert.IsNotNull(result);
			Assert.IsTrue(result.GetEnumerator().MoveNext());
		}
		public void Validate_DateTimeOffset_Success()
		{
			ParameterDataType type = ParameterDataType.DateTimeOffset;
			object minValue = DateTimeOffset.Now;
			object value = DateTimeOffset.Now.AddDays(1.0);
			MinimumValueConstraint c = new MinimumValueConstraint(type, minValue);
			IEnumerable<ParameterValidationResult> result = c.Validate(value, type, Constants.MemberName);
			Assert.IsNotNull(result);
			Assert.IsFalse(result.GetEnumerator().MoveNext());
		}
		public void Validate_ByteWithConvAltValue_Success()
		{
			ParameterDataType type = ParameterDataType.Byte;
			object minValue = (byte)42;
			object value = (int)44;
			MinimumValueConstraint c = new MinimumValueConstraint(type, minValue);
			IEnumerable<ParameterValidationResult> result = c.Validate(value, type, Constants.MemberName);
			Assert.IsNotNull(result);
			Assert.IsFalse(result.GetEnumerator().MoveNext());
		}