36 lines
790 B
Java
36 lines
790 B
Java
package function.builtin.special;
|
|
|
|
import static testutil.TestUtilities.*;
|
|
|
|
import org.junit.Test;
|
|
|
|
import function.ArgumentValidator.*;
|
|
|
|
public class QUOTETester {
|
|
|
|
@Test
|
|
public void testQuoteSymbol() {
|
|
String input = "'a";
|
|
|
|
assertSExpressionsMatch(parseString("a"), evaluateString(input));
|
|
}
|
|
|
|
@Test
|
|
public void testQuoteList() {
|
|
String input = "'(l i s t)";
|
|
|
|
assertSExpressionsMatch(parseString("(l i s t)"), evaluateString(input));
|
|
}
|
|
|
|
@Test(expected = TooFewArgumentsException.class)
|
|
public void testQuoteWithTooFewArguments() {
|
|
evaluateString("(quote)");
|
|
}
|
|
|
|
@Test(expected = TooManyArgumentsException.class)
|
|
public void testQuoteWithTooManyArguments() {
|
|
evaluateString("(quote a b)");
|
|
}
|
|
|
|
}
|