public void LessThan(BinaryTestCase testCase) { testCase.AssertComparison((d1, d2) => d1 < d2, (bd1, bd2) => bd1 < bd2); }
public void Inequality(BinaryTestCase testCase) { // ReSharper disable once CompareOfFloatsByEqualityOperator testCase.AssertComparison((d1, d2) => d1 != d2, (bd1, bd2) => bd1 != bd2); }
public void GreaterThanOrEqual(BinaryTestCase testCase) { testCase.AssertComparison((d1, d2) => d1 >= d2, (bd1, bd2) => bd1 >= bd2); }
public void Multiply(BinaryTestCase testCase) { testCase.AssertEqual((d1, d2) => d1 * d2, (bd1, bd2) => bd1 * bd2); }
public void Divide(BinaryTestCase testCase) { testCase.AssertEqual((d1, d2) => d1 / d2, (bd1, bd2) => bd1 / bd2); }
public void Subtract(BinaryTestCase testCase) { testCase.AssertEqual((d1, d2) => d1 - d2, (bd1, bd2) => bd1 - bd2); }
private static TestCaseData TestCaseData(TestCaseValue first, TestCaseValue second) { var testCase = new BinaryTestCase(first.Value, second.Value, Math.Max(first.Precision, second.Precision)); return(new TestCaseData(testCase).SetName($"{first.Name}; {second.Name}")); }
public void Min(BinaryTestCase testCase) { testCase.AssertEqual(Math.Min, BigDouble.Min); }
public void Add(BinaryTestCase testCase) { testCase.AssertEqual((d1, d2) => d1 + d2, (bd1, bd2) => bd1 + bd2); }
public void Max(BinaryTestCase testCase) { testCase.AssertEqual(Math.Max, BigDouble.Max); }
public void Pow(BinaryTestCase testCase) { testCase.AssertEqual(Math.Pow, BigDouble.Pow); }
public void Log(BinaryTestCase testCase) { testCase.AssertEqual(Math.Log, (bd1, bd2) => BigDouble.Log(bd1, bd2)); }
public void CompareTo(BinaryTestCase testCase) { testCase.AssertEqual((d1, d2) => d1.CompareTo(d2), (bd1, bd2) => bd1.CompareTo(bd2)); }
public void LessThanOrEqual(BinaryTestCase testCase) { testCase.AssertComparison((d1, d2) => d1 <= d2, (bd1, bd2) => bd1 <= bd2); }