public void Ctor_Decimal_Success()
		{
			ParameterDataType type = ParameterDataType.Decimal;
			StepConstraint c = new StepConstraint(type);
			Assert.AreEqual(Constraint.StepConstraintName, c.Name);
			Assert.AreEqual(type, c.DataType);
			Assert.AreEqual(1m, c.StepSize);
		}
		public void Ctor_Int16_Success()
		{
			ParameterDataType type = ParameterDataType.Int16;
			StepConstraint c = new StepConstraint(type);
			Assert.AreEqual(Constraint.StepConstraintName, c.Name);
			Assert.AreEqual(type, c.DataType);
			Assert.AreEqual((short)1, c.StepSize);
		}
		public void Ctor_Byte_Success()
		{
			ParameterDataType type = ParameterDataType.Byte;
			StepConstraint c = new StepConstraint(type);
			Assert.AreEqual(Constraint.StepConstraintName, c.Name);
			Assert.AreEqual(type, c.DataType);
			Assert.AreEqual((byte)1, c.StepSize);
		}
		public void SetParameters_ParamInv_Error()
		{
			CustomAssert.ThrowsException<ConstraintConfigurationException>(() =>
			{
				StepConstraint c = new StepConstraint(ParameterDataType.Int32);
				c.SetParametersInternal(new string[] { "narf" }, ParameterDataType.Int32);
			});
		}
		public void ToString_Success()
		{
			StepConstraint c = new StepConstraint(ParameterDataType.Int32, 42);
			Assert.AreEqual("[Step(42)]", c.ToString());
		}
		public void SetParameters_Success()
		{
			StepConstraint c = new StepConstraint(ParameterDataType.Int32);
			c.SetParametersInternal(new string[] { "2" }, ParameterDataType.Int32);
			Assert.AreEqual(2, c.StepSize);
		}
		public void Ctor_StepNull_Error()
		{
			CustomAssert.ThrowsException<CodedArgumentNullException>(() =>
			{
				StepConstraint c = new StepConstraint(ParameterDataType.Int32, null);
			});
		}
		public void Ctor_SerializationInfo_Success()
		{
			ParameterDataType type = ParameterDataType.Int32;
			StepConstraint c = new StepConstraint(type, 2);
			System.IO.MemoryStream Buffer = SerializationHelper.Serialize(c);
			StepConstraint c2 = SerializationHelper.Deserialize<StepConstraint>(Buffer);

			Assert.AreEqual(Constraint.StepConstraintName, c2.Name);
			Assert.AreEqual(type, c2.DataType);
			Assert.AreEqual(2, c2.StepSize);
		}
		public void Ctor_InvalidStep_Error()
		{
			CustomAssert.ThrowsException<ParameterConversionException>(() =>
			{
				StepConstraint c = new StepConstraint(ParameterDataType.Int32, DateTime.Now);
			});
		}
		public void Ctor_InvalidType_Error()
		{
			CustomAssert.ThrowsException<CodedArgumentException>(() =>
			{
				StepConstraint c = new StepConstraint(ParameterDataType.Enum);
			});
		}
		public void Ctor_UInt64Object_Success()
		{
			ParameterDataType type = ParameterDataType.UInt64;
			StepConstraint c = new StepConstraint(type, 2);
			Assert.AreEqual(Constraint.StepConstraintName, c.Name);
			Assert.AreEqual(type, c.DataType);
			Assert.AreEqual((ulong)2, c.StepSize);
		}
		public void Ctor_SByteObject_Success()
		{
			ParameterDataType type = ParameterDataType.SignedByte;
			StepConstraint c = new StepConstraint(type, 2);
			Assert.AreEqual(Constraint.StepConstraintName, c.Name);
			Assert.AreEqual(type, c.DataType);
			Assert.AreEqual((sbyte)2, c.StepSize);
		}
		public void Ctor_Int32Object_Success()
		{
			ParameterDataType type = ParameterDataType.Int32;
			StepConstraint c = new StepConstraint(type, 2);
			Assert.AreEqual(Constraint.StepConstraintName, c.Name);
			Assert.AreEqual(type, c.DataType);
			Assert.AreEqual(2, c.StepSize);
		}