public static void Abs_Advanced(double real, double imaginary, double expected)
{
var complex = new Complex(real, imaginary);
double abs = Complex.Abs(complex);
Assert.True((abs.Equals(expected) || IsDiffTolerable(abs, expected)),
string.Format("Abs({0}, {1}) Actual: {2}, Expected: {3}", real, imaginary, abs, expected));
double absNegative = Complex.Abs(-complex);
Assert.True(absNegative.Equals(abs),
string.Format("Abs({0}, {1}) = {2} != Abs(-neg)={3}", real, imaginary, abs, absNegative));
}