using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;
namespace Ashley.Distribution.Wms.Tests.TestUtility
{
public static class CustomAssert
{
public static void IsGreater(IComparable expected, IComparable actual, string message = null)
{
if (expected.CompareTo(actual) == 1)
{
return;
}
AssertError("CustomAssert.IsGreater", expected, actual, message);
}
public static void IsGreaterOrEqual(IComparable expected, IComparable actual, string message = null)
{
if (expected.CompareTo(actual) > -1)
{
return;
}
AssertError("CustomAssert.IsGreaterOrEqual", expected, actual, message);
}
public static void IsLess(IComparable expected, IComparable actual, string message = null)
{
if (expected.CompareTo(actual) == -1)
{
return;
}
AssertError("CustomAssert.IsLess", expected, actual, message);
}
public static void IsLessOrEqual(IComparable expected, IComparable actual, string message = null)
{
if (expected.CompareTo(actual) < 1)
{
return;
}
AssertError("CustomAssert.IsLessOrEqual", expected, actual, message);
}
private static void AssertError(string descriptor, IComparable expected, IComparable actual, string customMessage)
{
var fullCustomMessage = string.Format("{0} failed. Expected: {1}. Actual {2}.", descriptor, expected, actual);
var assertMessage = !string.IsNullOrEmpty(customMessage) ? customMessage : fullCustomMessage;
throw new AssertFailedException(assertMessage);
}
}
}
Comments