/** * Copyright (C) 2009 - present by OpenGamma Inc. and the OpenGamma group of companies * * Please see distribution for license. */ package com.opengamma.strata.math.impl.function.special; import static org.testng.AssertJUnit.assertEquals; import java.util.function.Function; import org.testng.annotations.Test; /** * Test. */ @Test public class TopHatFunctionTest { private static final double X1 = 2; private static final double X2 = 2.5; private static final double Y = 10; private static final Function<Double, Double> F = new TopHatFunction(X1, X2, Y); @Test(expectedExceptions = IllegalArgumentException.class) public void testWrongOrder() { new TopHatFunction(X2, X1, Y); } @Test(expectedExceptions = IllegalArgumentException.class) public void testNull() { F.apply((Double) null); } @Test(expectedExceptions = IllegalArgumentException.class) public void testX1() { F.apply(X1); } @Test(expectedExceptions = IllegalArgumentException.class) public void testX2() { F.apply(X2); } @Test public void test() { assertEquals(F.apply(X1 - 1e-15), 0, 0); assertEquals(F.apply(X2 + 1e-15), 0, 0); assertEquals(F.apply((X1 + X2) / 2), Y, 0); } }