Files
Umbraco-CMS/tests/Umbraco.Tests.UnitTests/Umbraco.Core/Models/RangeTests.cs
Paul Johnson 00133e880d Move test projects from src/ to tests/ (#11357)
* Update gitignore

* Move csproj

* Update project references

* Update solutions

* Update build scripts

* Tests used to share editorconfig with projects in src

* Fix broken tests.

* Stop copying around .editorconfig

merged root one with linting

* csharp_style_expression_bodied -> suggestion

* Move StyleCop rulesets to matching directories and update shared build properties

* Remove legacy build files, update NuGet.cofig and solution files

* Restore myget source

* Clean up .gitignore

* Update .gitignore

* Move new test classes to tests after merge

* Gitignore + nuget config

* Move new test

Co-authored-by: Ronald Barendse <ronald@barend.se>
2021-10-18 08:14:04 +01:00

180 lines
5.8 KiB
C#

using System.Globalization;
using NUnit.Framework;
using Umbraco.Cms.Core.Models;
namespace Umbraco.Cms.Tests.UnitTests.Umbraco.Core.Models
{
[TestFixture]
public class RangeTests
{
[TestCase(0, 0, "0,0")]
[TestCase(0, 1, "0,1")]
[TestCase(1, 1, "1,1")]
public void RangeInt32_ToString(int minimum, int maximum, string expected)
{
Assert.AreEqual(expected, new Range<int>()
{
Minimum = minimum,
Maximum = maximum
}.ToString());
}
[TestCase(0, 0.5, "0,0.5")]
[TestCase(0.5, 0.5, "0.5,0.5")]
[TestCase(0.5, 1, "0.5,1")]
public void RangeDouble_ToString(double minimum, double maximum, string expected)
{
Assert.AreEqual(expected, new Range<double>()
{
Minimum = minimum,
Maximum = maximum
}.ToString());
}
[TestCase(0, 0, "0")]
[TestCase(0, 1, "0,1")]
[TestCase(1, 1, "1")]
public void RangeInt32_ToStringFormatRange(int minimum, int maximum, string expected)
{
Assert.AreEqual(expected, new Range<int>()
{
Minimum = minimum,
Maximum = maximum
}.ToString("{0}", "{0},{1}", CultureInfo.InvariantCulture));
}
[TestCase(0, 0.5, "0,0.5")]
[TestCase(0.5, 0.5, "0.5")]
[TestCase(0.5, 1, "0.5,1")]
public void RangeDouble_ToStringFormatRange(double minimum, double maximum, string expected)
{
Assert.AreEqual(expected, new Range<double>()
{
Minimum = minimum,
Maximum = maximum
}.ToString("{0}", "{0},{1}", CultureInfo.InvariantCulture));
}
[TestCase(0, 0, "0,0")]
[TestCase(0, 1, "0,1")]
[TestCase(1, 1, "1,1")]
public void RangeInt32_ToStringFormat(int minimum, int maximum, string expected)
{
Assert.AreEqual(expected, new Range<int>()
{
Minimum = minimum,
Maximum = maximum
}.ToString("{0},{1}", CultureInfo.InvariantCulture));
}
[TestCase(0, 0.5, "0,0.5")]
[TestCase(0.5, 0.5, "0.5,0.5")]
[TestCase(0.5, 1, "0.5,1")]
public void RangeDouble_ToStringFormat(double minimum, double maximum, string expected)
{
Assert.AreEqual(expected, new Range<double>()
{
Minimum = minimum,
Maximum = maximum
}.ToString("{0},{1}", CultureInfo.InvariantCulture));
}
[TestCase(0, 0, true)]
[TestCase(0, 1, true)]
[TestCase(-1, 1, true)]
[TestCase(1, 0, false)]
[TestCase(0, -1, false)]
public void RangeInt32_IsValid(int minimum, int maximum, bool expected)
{
Assert.AreEqual(expected, new Range<int>()
{
Minimum = minimum,
Maximum = maximum
}.IsValid());
}
[TestCase(0, 0, 0, true)]
[TestCase(0, 1, 0, true)]
[TestCase(0, 1, 1, true)]
[TestCase(-1, 1, 0, true)]
[TestCase(0, 0, 1, false)]
[TestCase(0, 0, -1, false)]
public void RangeInt32_ContainsValue(int minimum, int maximum, int value, bool expected)
{
Assert.AreEqual(expected, new Range<int>()
{
Minimum = minimum,
Maximum = maximum
}.ContainsValue(value));
}
[TestCase(0, 0, 0, 0, true)]
[TestCase(0, 1, 0, 1, true)]
[TestCase(0, 1, 1, 1, false)]
[TestCase(-1, 1, 0, 0, false)]
[TestCase(0, 0, 1, 1, false)]
[TestCase(0, 0, -1, 1, true)]
public void RangeInt32_IsInsideRange(int minimum1, int maximum1, int minimum2, int maximum2, bool expected)
{
Assert.AreEqual(expected, new Range<int>()
{
Minimum = minimum1,
Maximum = maximum1
}.IsInsideRange(new Range<int>()
{
Minimum = minimum2,
Maximum = maximum2
}));
}
[TestCase(0, 0, 0, 0, true)]
[TestCase(0, 1, 0, 1, true)]
[TestCase(0, 1, 1, 1, true)]
[TestCase(-1, 1, 0, 0, true)]
[TestCase(0, 0, 1, 1, false)]
[TestCase(0, 0, -1, 1, false)]
public void RangeInt32_ContainsRange(int minimum1, int maximum1, int minimum2, int maximum2, bool expected)
{
Assert.AreEqual(expected, new Range<int>()
{
Minimum = minimum1,
Maximum = maximum1
}.ContainsRange(new Range<int>()
{
Minimum = minimum2,
Maximum = maximum2
}));
}
[TestCase(0, 0, 0, 0, true)]
[TestCase(0, 1, 0, 1, true)]
[TestCase(0, 1, 1, 1, false)]
[TestCase(0, 0, 1, 1, false)]
public void RangeInt32_Equals(int minimum1, int maximum1, int minimum2, int maximum2, bool expected)
{
Assert.AreEqual(expected, new Range<int>()
{
Minimum = minimum1,
Maximum = maximum1
}.Equals(new Range<int>()
{
Minimum = minimum2,
Maximum = maximum2
}));
}
[TestCase(0, 0, 0, 0, true)]
[TestCase(0, 1, 0, 1, true)]
[TestCase(0, 1, 1, 1, false)]
[TestCase(0, 0, 1, 1, false)]
public void RangeInt32_EqualsValues(int minimum1, int maximum1, int minimum2, int maximum2, bool expected)
{
Assert.AreEqual(expected, new Range<int>()
{
Minimum = minimum1,
Maximum = maximum1
}.Equals(minimum2, maximum2));
}
}
}