package test.parser.ps; import java.util.ArrayDeque; import java.util.Deque; import net.sf.latexdraw.parsers.ps.InvalidFormatPSFunctionException; import net.sf.latexdraw.parsers.ps.PSArithemticCommand; import org.eclipse.jdt.annotation.NonNull; import org.junit.Before; import org.junit.Test; public abstract class TestPSCommand<T extends PSArithemticCommand> { T cmd; @NonNull Deque<Double> dequeue = new ArrayDeque<>(); @Before public void setUp() throws Exception { cmd = createCmd(); dequeue = new ArrayDeque<>(); } protected abstract T createCmd(); @Test public abstract void testExecuteVal0() throws InvalidFormatPSFunctionException; @Test public abstract void testExecuteValNeg() throws InvalidFormatPSFunctionException; @Test public abstract void testExecuteValPos() throws InvalidFormatPSFunctionException; @Test public abstract void testExecuteInvalidDequeueSize() throws InvalidFormatPSFunctionException; }