MinValueAttributeTests.cs 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. using Masuit.Tools.Core.Validator;
  2. using Xunit;
  3. namespace Masuit.Tools.Abstractions.Test.Validator;
  4. public class MinValueAttributeTests
  5. {
  6. [Theory]
  7. [InlineData(null, true)]
  8. [InlineData(5, false)]
  9. [InlineData(10, false)]
  10. [InlineData(15, true)]
  11. [InlineData(10.5, true)]
  12. public void IsValid_ShouldValidateMinValue(object value, bool expected)
  13. {
  14. // Arrange
  15. var attribute = new MinValueAttribute(10);
  16. // Act
  17. var result = attribute.IsValid(value);
  18. // Assert
  19. Assert.Equal(expected, result);
  20. }
  21. [Fact]
  22. public void IsValid_ShouldReturnTrue_WhenValueIsNull()
  23. {
  24. // Arrange
  25. var attribute = new MinValueAttribute(10);
  26. // Act
  27. var result = attribute.IsValid(null);
  28. // Assert
  29. Assert.True(result);
  30. }
  31. [Fact]
  32. public void IsValid_ShouldReturnTrue_WhenValueIsGreaterThanMinValue()
  33. {
  34. // Arrange
  35. var attribute = new MinValueAttribute(10);
  36. // Act
  37. var result = attribute.IsValid(15);
  38. // Assert
  39. Assert.True(result);
  40. }
  41. [Fact]
  42. public void IsValid_ShouldReturnFalse_WhenValueIsLessThanOrEqualToMinValue()
  43. {
  44. // Arrange
  45. var attribute = new MinValueAttribute(10);
  46. // Act
  47. var result = attribute.IsValid(10);
  48. // Assert
  49. Assert.False(result);
  50. }
  51. }