I am wondering why we can use a trailing d
for double
but we cannot use a trailing m
for decimal
in InlineData()
below.
using System.Numerics;
public static class MathLib
{
public static T Square<T>(T x) where T: INumber<T> => x * x;
}
public class MathLibTest
{
[Theory]
[InlineData(2.0d,4.0d)]
public void DoubleTest(double x, double control)
{
var sut = MathLib.Square(x);
Assert.Equal(sut, control);
}
[Theory]
//[InlineData(2.0m, 4.0m)] // why can't we use a trailing m for decimal?
[InlineData(2.0, 4.0)]
public void DecimalTest(decimal x, decimal control)
{
var sut = MathLib.Square(x);
Assert.Equal(sut, control);
}
}