package com.spotify.heroic.grammar;
import org.junit.Before;
import org.junit.runner.RunWith;
import org.mockito.runners.MockitoJUnitRunner;
import java.util.function.BiFunction;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.verify;
@RunWith(MockitoJUnitRunner.class)
public class NegateExpressionTest extends AbstractExpressionTest<NegateExpression> {
@Before
public void setupLocal() {
doReturn(a).when(a).negate();
doReturn(b).when(b).negate();
}
@Override
protected NegateExpression build(final Context ctx) {
return new NegateExpression(ctx, a);
}
@Override
protected BiFunction<Expression.Visitor<Void>, NegateExpression, Void> visitorMethod() {
return Expression.Visitor::visitNegate;
}
@Override
public void evalTest() {
super.evalTest();
verify(a).eval(scope);
}
}