public void GreaterThanAttribute_SetsMinimum() { Decimal actual = new GreaterThanAttribute(12.56).Minimum; Decimal expected = 12.56M; Assert.Equal(expected, actual); }
public void GreaterThanAttribute_SetsMinimumFromInteger() { Decimal actual = new GreaterThanAttribute(10).Minimum; Decimal expected = 10M; Assert.Equal(expected, actual); }
public void FormatErrorMessage_ForInteger() { attribute = new GreaterThanAttribute(10); String expected = String.Format(Validations.GreaterThan, "Sum", attribute.Minimum); String actual = attribute.FormatErrorMessage("Sum"); Assert.Equal(expected, actual); }
public void FormatErrorMessage_ForName() { attribute = new GreaterThanAttribute(12.56); String actual = attribute.FormatErrorMessage("Sum"); String expected = Validation.For("GreaterThan", "Sum", attribute.Minimum); Assert.Equal(expected, actual); }
public void FormatErrorMessage_FormatsErrorMessageForDouble() { attribute = new GreaterThanAttribute(12.56); String expected = String.Format(Validations.FieldMustBeGreaterThan, "Sum", attribute.Minimum); String actual = attribute.FormatErrorMessage("Sum"); Assert.Equal(expected, actual); }
public void CanGenerateEvaluatedRuleForGreaterThanAttribute() { var handler = new SimpleRuleHandler(); var targetProp = typeof(Registration).GetProperty("EndDate"); var greaterThanAttribute = new GreaterThanAttribute("StartDate"); var evaluatedRule = handler.GenerateEvaluatedRule <Registration>(greaterThanAttribute, targetProp); Assert.IsNotNull(evaluatedRule); Assert.AreEqual("End Date should be Greater Than the Start Date.", evaluatedRule.MessageFormat); Assert.IsNotNull(evaluatedRule.Expression); }
public void When_Value_Type_Is_Numeric_And_Greater_Than_Required_Then_Valid(Type type, object value) { // Arrange var greaterThanAttribute = new GreaterThanAttribute(2); var typedValue = Convert.ChangeType(value, type); // Act var isValid = greaterThanAttribute.IsValid(typedValue); // Assert isValid.Should().BeTrue(); }
public void When_Value_Is_Less_Than_Required_Then_Invalid() { // Arrange var greaterThanAttribute = new GreaterThanAttribute(2); var value = 0; // Act var isValid = greaterThanAttribute.IsValid(value); // Assert isValid.Should().BeFalse(); }
public void When_Value_Is_Greater_Than_Required_Value_Then_Valid() { // Arrange var greaterThanAttribute = new GreaterThanAttribute(2); var value = 4; // Act var isValid = greaterThanAttribute.IsValid(value); // Assert isValid.Should().BeTrue(); }
public void When_Value_Type_Is_Not_Numeric_Then_Exception_Is_Thrown() { // Arrange var greaterThanAttribute = new GreaterThanAttribute(10); const string typedValue = "A String"; // Act var exception = Assert.Throws <FormatException>(() => greaterThanAttribute.IsValid(typedValue)); // Assert exception.Should().NotBeNull(); }
public void When_Object_Is_Null_Then_Valid() { // Arrange var greaterThanAttribute = new GreaterThanAttribute(1); object nullObject = null; // Act var isValid = greaterThanAttribute.IsValid(nullObject); // Assert Assert.IsTrue(isValid); }
public void GreaterThan_EqualZero_FailedValidation() { // Arrange const int arg = 0; // Act var greaterThan = new GreaterThanAttribute(value: arg); var validation = greaterThan.IsValid(value: arg); // Arrange Assert.False(condition: validation); }
public void GreaterThan_GreaterThanZero_SuccessValidation() { // Arrange const int arg = 0; const int arg1 = 1; // Act var greaterThan = new GreaterThanAttribute(value: arg); var validation = greaterThan.IsValid(value: arg1); // Arrange Assert.True(condition: validation); }
public void GetClientValidationRules_ReturnsGreaterValidationRule() { ModelMetadata metadata = new DataAnnotationsModelMetadataProvider().GetMetadataForProperty(null, typeof(AdaptersModel), "GreaterThan"); GreaterThanAdapter adapter = new GreaterThanAdapter(metadata, new ControllerContext(), new GreaterThanAttribute(128)); String expectedMessage = new GreaterThanAttribute(128).FormatErrorMessage(metadata.GetDisplayName()); ModelClientValidationRule actual = adapter.GetClientValidationRules().Single(); Assert.Equal(128M, actual.ValidationParameters["min"]); Assert.Equal(expectedMessage, actual.ErrorMessage); Assert.Equal("greater", actual.ValidationType); Assert.Single(actual.ValidationParameters); }
private static string BuildGreaterThan(string propertyPath, GreaterThanAttribute greaterThanAttribute) { switch (greaterThanAttribute.ReferenceType) { case ComparisonReferenceType.Static: return($"{propertyPath} IS GREATER THAN {greaterThanAttribute.LowerLimit}"); case ComparisonReferenceType.OtherProperty: return($"{propertyPath} IS GREATER THAN {greaterThanAttribute.PropertyName}"); default: throw new ArgumentOutOfRangeException(); } }
public void GetClientValidationRules_ReturnsGreaterValidationRule() { IServiceProvider services = Substitute.For <IServiceProvider>(); IModelMetadataProvider provider = new EmptyModelMetadataProvider(); GreaterThanAdapter adapter = new GreaterThanAdapter(new GreaterThanAttribute(128)); ModelMetadata metadata = provider.GetMetadataForProperty(typeof(AdaptersModel), "GreaterThan"); ClientModelValidationContext context = new ClientModelValidationContext(metadata, provider, services); String expectedMessage = new GreaterThanAttribute(128).FormatErrorMessage("GreaterThan"); ModelClientValidationRule actual = adapter.GetClientValidationRules(context).Single(); Assert.Equal(128M, actual.ValidationParameters["min"]); Assert.Equal(expectedMessage, actual.ErrorMessage); Assert.Equal("greater", actual.ValidationType); Assert.Single(actual.ValidationParameters); }
public void GetClientValidationRules_ReturnsMinRangeValidationRule() { ModelMetadata metadata = new DataAnnotationsModelMetadataProvider().GetMetadataForProperty(null, typeof(AdaptersModel), "MinValue"); GreaterThanAdapter adapter = new GreaterThanAdapter(metadata, new ControllerContext(), new GreaterThanAttribute(128)); String errorMessage = new GreaterThanAttribute(128).FormatErrorMessage(metadata.GetDisplayName()); ModelClientValidationRule actual = adapter.GetClientValidationRules().Single(); ModelClientValidationRule expected = new ModelClientValidationRule(); expected.ValidationParameters.Add("min", 128M); expected.ErrorMessage = errorMessage; expected.ValidationType = "greater"; Assert.Equal(expected.ValidationParameters["min"], actual.ValidationParameters["min"]); Assert.Equal(expected.ValidationParameters.Count, actual.ValidationParameters.Count); Assert.Equal(expected.ValidationType, actual.ValidationType); Assert.Equal(expected.ErrorMessage, actual.ErrorMessage); }
public GreaterThanAttributeTests() { attribute = new GreaterThanAttribute(12.56); }