Skip to content

Commit

Permalink
Added license & origin notice at top of fooproof MVC derived files. I…
Browse files Browse the repository at this point in the history
…mport unit tests from foolproof MVC.
  • Loading branch information
pruiz committed Dec 28, 2015
1 parent 040b43c commit 16b49d4
Show file tree
Hide file tree
Showing 39 changed files with 1,173 additions and 47 deletions.
76 changes: 76 additions & 0 deletions HermaFx.DataAnnotations.Tests/EqualToAttributeTest.cs
@@ -0,0 +1,76 @@
using System;
using System.ComponentModel.DataAnnotations;

using NUnit.Framework;

namespace HermaFx.DataAnnotations
{
[TestFixture]
public class EqualToAttributeTest
{
private class Model : ModelBase<EqualToAttribute>
{
public string Value1 { get; set; }

[EqualTo("Value1")]
public string Value2 { get; set; }
}

private class ModelWithPassOnNull : ModelBase<EqualToAttribute>
{
public string Value1 { get; set; }

[EqualTo("Value1", PassOnNull = true)]
public string Value2 { get; set; }
}

[Test]
public void IsValid()
{
var model = new Model() { Value1 = "hello", Value2 = "hello" };
Assert.IsTrue(model.IsValid("Value2"));
}

[Test]
public void IsNotValid()
{
var model = new Model() { Value1 = "hello", Value2 = "goodbye" };
Assert.IsFalse(model.IsValid("Value2"));
}

[Test]
public void IsValidWithNulls()
{
var model = new Model() { };
Assert.IsTrue(model.IsValid("Value2"));
}

[Test]
public void IsNotValidWithValue1Null()
{
var model = new Model() { Value2 = "hello" };
Assert.IsFalse(model.IsValid("Value2"));
}

[Test]
public void IsNotValidWithValue2Null()
{
var model = new Model() { Value1 = "hello" };
Assert.IsFalse(model.IsValid("Value2"));
}

[Test]
public void IsValidWithValue1Null()
{
var model = new ModelWithPassOnNull() { Value2 = "hello" };
Assert.IsTrue(model.IsValid("Value2"));
}

[Test]
public void IsValidWithValue2Null()
{
var model = new ModelWithPassOnNull() { Value1 = "hello" };
Assert.IsTrue(model.IsValid("Value2"));
}
}
}
97 changes: 97 additions & 0 deletions HermaFx.DataAnnotations.Tests/GreaterThanAttributeTest.cs
@@ -0,0 +1,97 @@
using System;

using NUnit.Framework;

namespace HermaFx.DataAnnotations
{
[TestFixture]
public class GreaterThanAttributeTest
{
private class DateModel : ModelBase<GreaterThanAttribute>
{
public DateTime? Value1 { get; set; }

[GreaterThan("Value1")]
public DateTime? Value2 { get; set; }
}

private class DateModelWithPassOnNull : ModelBase<GreaterThanAttribute>
{
public DateTime? Value1 { get; set; }

[GreaterThan("Value1", PassOnNull = true)]
public DateTime? Value2 { get; set; }
}

private class Int16Model : ModelBase<GreaterThanAttribute>
{
public Int16 Value1 { get; set; }

[GreaterThan("Value1")]
public Int16 Value2 { get; set; }
}

[Test]
public void DateIsValid()
{
var model = new DateModel() { Value1 = DateTime.Now, Value2 = DateTime.Now.AddDays(1) };
Assert.IsTrue(model.IsValid("Value2"));
}

[Test]
public void DateIsNotValid()
{
var model = new DateModel() { Value1 = DateTime.Now, Value2 = DateTime.Now.AddDays(-1) };
Assert.IsFalse(model.IsValid("Value2"));
}

[Test]
public void DateWithNullsIsNotValid()
{
var model = new DateModel() { };
Assert.IsFalse(model.IsValid("Value2"));
}

[Test]
public void DateWithValue1NullIsNotValid()
{
var model = new DateModel() { Value2 = DateTime.Now };
Assert.IsFalse(model.IsValid("Value2"));
}

[Test]
public void DateWithValue2NullIsNotValid()
{
var model = new DateModel() { Value1 = DateTime.Now };
Assert.IsFalse(model.IsValid("Value2"));
}

[Test]
public void DateWithValue1NullIsValid()
{
var model = new DateModelWithPassOnNull() { Value2 = DateTime.Now };
Assert.IsTrue(model.IsValid("Value2"));
}

[Test]
public void DateWithValue2NullIsValid()
{
var model = new DateModelWithPassOnNull() { Value1 = DateTime.Now };
Assert.IsTrue(model.IsValid("Value2"));
}

[Test]
public void Int16IsValid()
{
var model = new Int16Model() { Value1 = 12, Value2 = 120 };
Assert.IsTrue(model.IsValid("Value2"));
}

[Test]
public void Int16IsNotValid()
{
var model = new Int16Model() { Value1 = 120, Value2 = 12 };
Assert.IsFalse(model.IsValid("Value2"));
}
}
}
120 changes: 120 additions & 0 deletions HermaFx.DataAnnotations.Tests/GreaterThanOrEqualToAttributeTest.cs
@@ -0,0 +1,120 @@
using System;

using NUnit.Framework;

namespace HermaFx.DataAnnotations
{
[TestFixture]
public class GreaterThanOrEqualToAttributeTest
{
private class DateModel : ModelBase<GreaterThanOrEqualToAttribute>
{
public DateTime? Value1 { get; set; }

[GreaterThanOrEqualTo("Value1")]
public DateTime? Value2 { get; set; }
}

private class DateModelWithPassNull : ModelBase<GreaterThanOrEqualToAttribute>
{
public DateTime? Value1 { get; set; }

[GreaterThanOrEqualTo("Value1", PassOnNull = true)]
public DateTime? Value2 { get; set; }
}

private class Int16Model : ModelBase<GreaterThanOrEqualToAttribute>
{
public Int16 Value1 { get; set; }

[GreaterThanOrEqualTo("Value1")]
public Int16 Value2 { get; set; }
}

[Test]
public void DateIsValid()
{
var model = new DateModel() { Value1 = DateTime.Now, Value2 = DateTime.Now.AddDays(1) };
Assert.IsTrue(model.IsValid("Value2"));
}

[Test]
public void DateEqualIsValid()
{
var date = DateTime.Now;
var model = new DateModel() { Value1 = date, Value2 = date };
Assert.IsTrue(model.IsValid("Value2"));
}

[Test]
public void DateNullValuesIsValid()
{
var date = DateTime.Now;
var model = new DateModel() { };
Assert.IsTrue(model.IsValid("Value2"));
}

[Test]
public void DateIsNotValid()
{
var model = new DateModel() { Value1 = DateTime.Now, Value2 = DateTime.Now.AddDays(-1) };
Assert.IsFalse(model.IsValid("Value2"));
}

[Test]
public void DateWithNullsIsValid()
{
var model = new DateModel() { };
Assert.IsTrue(model.IsValid("Value2"));
}

[Test]
public void DateWithValue1NullIsNotValid()
{
var model = new DateModel() { Value2 = DateTime.Now };
Assert.IsFalse(model.IsValid("Value2"));
}

[Test]
public void DateWithValue2NullIsNotValid()
{
var model = new DateModel() { Value1 = DateTime.Now };
Assert.IsFalse(model.IsValid("Value2"));
}

[Test]
public void DateWithValue1NullIsValid()
{
var model = new DateModelWithPassNull() { Value2 = DateTime.Now };
Assert.IsTrue(model.IsValid("Value2"));
}

[Test]
public void DateWithValue2NullIsValid()
{
var model = new DateModelWithPassNull() { Value1 = DateTime.Now };
Assert.IsTrue(model.IsValid("Value2"));
}

[Test]
public void Int16IsValid()
{
var model = new Int16Model() { Value1 = 12, Value2 = 120 };
Assert.IsTrue(model.IsValid("Value2"));
}

[Test]
public void Int16EqualIsValid()
{
var model = new Int16Model() { Value1 = 12, Value2 = 12 };
Assert.IsTrue(model.IsValid("Value2"));
}

[Test]
public void Int16IsNotValid()
{
var model = new Int16Model() { Value1 = 120, Value2 = 12 };
Assert.IsFalse(model.IsValid("Value2"));
}
}
}
16 changes: 16 additions & 0 deletions HermaFx.DataAnnotations.Tests/HermaFx.DataAnnotations.Tests.csproj
Expand Up @@ -39,10 +39,26 @@
<Reference Include="System.ComponentModel.DataAnnotations" />
</ItemGroup>
<ItemGroup>
<Compile Include="EqualToAttributeTest.cs" />
<Compile Include="GreaterThanAttributeTest.cs" />
<Compile Include="GreaterThanOrEqualToAttributeTest.cs" />
<Compile Include="LessThanAttributeTest.cs" />
<Compile Include="LessThanOrEqualToAttributeTest.cs" />
<Compile Include="MaxElementsTests.cs" />
<Compile Include="ExtendedValidatorTests.cs" />
<Compile Include="MinElementsTests.cs" />
<Compile Include="NotEqualToAttributeTest.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="RegularExpressionIfAttributeTest.cs" />
<Compile Include="RequiredIfAttributeTest.cs" />
<Compile Include="RequiredIfEmptyAttributeTest.cs" />
<Compile Include="RequiredIfFalseAttributeTest.cs" />
<Compile Include="RequiredIfNotAttributeTest.cs" />
<Compile Include="RequiredIfNotEmptyAttributeTest.cs" />
<Compile Include="RequiredIfNotRegExMatchAttributeTest.cs" />
<Compile Include="RequiredIfRegExMatchAttributeTest.cs" />
<Compile Include="RequiredIfTrueAttributeTest.cs" />
<Compile Include="Utilities.cs" />
</ItemGroup>
<ItemGroup>
<None Include="packages.config" />
Expand Down

0 comments on commit 16b49d4

Please sign in to comment.