JD2022-TU1/main/tools/framework/JD.UserControls/QuickOpenDialogs/Verify.cs

49 lines
1.3 KiB
C#

using System.Linq;
namespace JD.UserControls.QuickOpenDialogs
{
/// <summary>
/// Makes tests
/// </summary>
public class Verify
{
/// <summary>
/// Returns a value that can be used to test.
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="value"></param>
/// <returns></returns>
public static ThatElement<T> That<T>(T value)
{
return new ThatElement<T>(value);
}
/// <summary>
/// Helper struct to help to make cool syntax.
/// </summary>
/// <typeparam name="T"></typeparam>
public struct ThatElement<T>
{
private readonly T m_value;
/// <summary>
/// Ctor.
/// </summary>
/// <param name="value"></param>
public ThatElement(T value)
{
m_value = value;
}
/// <summary>
/// Tests the the value is in one of the given values.
/// </summary>
/// <param name="values"></param>
/// <returns></returns>
public bool IsIn(params T[] values)
{
return values.Contains(m_value);
}
}
}
}