package st.gravel.support.compiler.ast;
/*
This file is automatically generated from typed smalltalk source. Do not edit by hand.
(C) AG5.com
*/
import org.junit.Test;
import static org.junit.Assert.*;
import st.gravel.support.compiler.ast.Statement;
import st.gravel.support.compiler.ast.Parser;
import st.gravel.support.compiler.ast.AssignmentNode;
import st.gravel.support.compiler.ast.BlockNode;
import st.gravel.support.compiler.ast.BinaryMessageNode;
import st.gravel.support.compiler.ast.BinaryMethodNode;
import st.gravel.support.compiler.ast.ByteArrayLiteralNode;
import st.gravel.support.compiler.ast.CascadeNode;
import st.gravel.support.compiler.ast.CharacterLiteralNode;
import st.gravel.support.compiler.ast.DoubleLiteralNode;
import st.gravel.support.compiler.ast.FixedPointLiteralNode;
import st.gravel.support.compiler.ast.FloatLiteralNode;
import st.gravel.support.compiler.ast.IntegerLiteralNode;
import st.gravel.support.compiler.ast.KeywordMessageNode;
import st.gravel.support.compiler.ast.KeywordMethodNode;
import st.gravel.support.compiler.ast.ArrayLiteralNode;
import st.gravel.support.compiler.ast.NamespacedVariableNode;
import st.gravel.support.compiler.ast.StringLiteralNode;
import st.gravel.support.compiler.ast.SymbolLiteralNode;
import st.gravel.support.compiler.ast.UnaryMessageNode;
import st.gravel.support.compiler.ast.UnaryMethodNode;
import st.gravel.support.compiler.ast.VariableNode;
public class ParserTest {
@Test
public void initialize() {
}
@Test
public void testAssignmentExpression() {
final Statement _node;
_node = Parser.factory.source_(" foo := 7 ").parseStatement();
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), AssignmentNode.factory));
assertEquals((String) "foo := 7", (String) _node.prettySourceString());
}
@Test
public void testAssignmentExpressionInBlock() {
final Statement _node;
_node = Parser.factory.source_("[ foo := 7 ]").parseStatement();
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), BlockNode.factory));
assertEquals((String) "[foo := 7]", (String) _node.prettySourceString());
}
@Test
public void testParse2ArgBlockEmpty1() {
final BlockNode _node;
_node = ((BlockNode) Parser.factory.source_("[:a :b | ]").parseExpression());
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), BlockNode.factory));
assertEquals((String) "[:a :b | ]", (String) _node.prettySourceString());
}
@Test
public void testParse2ArgBlockEmpty2() {
final Statement _node;
_node = Parser.factory.source_("[:a :b ]").parseExpression();
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), BlockNode.factory));
assertEquals((String) "[:a :b | ]", (String) _node.prettySourceString());
}
@Test
public void testParse2ArgBlockNoTemps() {
final Statement _node;
_node = Parser.factory.source_("[:a :b | a foo. b bar]").parseExpression();
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), BlockNode.factory));
assertEquals((String) "\n[:a :b | \na foo.\nb bar]", (String) _node.prettySourceString());
}
@Test
public void testParse2ArgBlockNoTempsDotEnd() {
final Statement _node;
_node = Parser.factory.source_("[:a :b | a foo. b bar.]").parseExpression();
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), BlockNode.factory));
assertEquals((String) "\n[:a :b | \na foo.\nb bar]", (String) _node.prettySourceString());
}
@Test
public void testParse2ArgBlockWithTemps() {
final Statement _node;
_node = Parser.factory.source_("[:a :b | | c | a foo. b bar. c foo]").parseExpression();
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), BlockNode.factory));
assertEquals((String) "\n[:a :b | \n| c |\na foo.\nb bar.\nc foo]", (String) _node.prettySourceString());
}
@Test
public void testParseBinaryExpression() {
final Statement _node;
_node = Parser.factory.source_(" 3 + 7 ").parseExpression();
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), BinaryMessageNode.factory));
assertEquals((String) "3 + 7", (String) _node.prettySourceString());
}
@Test
public void testParseBinaryMethod() {
final BinaryMethodNode _node;
_node = ((BinaryMethodNode) Parser.factory.parseMethod_("+ arg ^bar"));
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), BinaryMethodNode.factory));
assertEquals((String) "+ arg\n\t^bar", (String) _node.prettySourceString());
}
@Test
public void testParseBinaryUnaryExpression() {
final Statement _node;
_node = Parser.factory.source_(" 3 bar + 2 + 1 foo").parseExpression();
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), BinaryMessageNode.factory));
assertEquals((String) "3 bar + 2 + 1 foo", (String) _node.prettySourceString());
}
@Test
public void testParseByteArray() {
final ByteArrayLiteralNode _node;
_node = ((ByteArrayLiteralNode) Parser.factory.source_("#[1 2 3]").parseExpression());
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), ByteArrayLiteralNode.factory));
assertEquals((String) "#[1 2 3]", (String) _node.prettySourceString());
assertTrue(st.gravel.support.jvm.ByteArrayExtensions.equals_(_node.value(), new byte[] { 1, 2, 3 }));
}
@Test
public void testParseByteArrayHighValues() {
final ByteArrayLiteralNode _node;
_node = ((ByteArrayLiteralNode) Parser.factory.source_("#[0 127 128 129 255 0]").parseExpression());
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), ByteArrayLiteralNode.factory));
assertEquals((String) "#[0 127 128 129 255 0]", (String) _node.prettySourceString());
assertTrue(st.gravel.support.jvm.ByteArrayExtensions.equals_(_node.value(), new byte[] { 0, 127, -128, -127, -1, 0 }));
}
@Test
public void testParseCascade() {
final Statement _node;
_node = Parser.factory.source_("3 foo + 2\n\t\t+ 3;\n\t\tbar: 2;\n\t\tbaz: 3;\n\t\tbaz: 4;\n\t\tboo").parseExpression();
assertEquals((st.gravel.support.jvm.SmalltalkFactory) CascadeNode.factory, (st.gravel.support.jvm.SmalltalkFactory) _node.factory());
assertEquals((String) "(3 foo + 2) + 3; bar: 2; baz: 3; baz: 4; boo", (String) _node.prettySourceString());
}
@Test
public void testParseChar() {
final CharacterLiteralNode _node;
_node = ((CharacterLiteralNode) Parser.factory.source_("$a").parseExpression());
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), CharacterLiteralNode.factory));
assertEquals((String) "$a", (String) _node.prettySourceString());
assertTrue(st.gravel.support.jvm.CharacterExtensions.equals_(_node.value(), 'a'));
}
@Test
public void testParseDouble() {
final DoubleLiteralNode _node;
_node = ((DoubleLiteralNode) Parser.factory.source_("123412341345145145123412341234.003213123123d").parseExpression());
assertEquals((st.gravel.support.jvm.SmalltalkFactory) DoubleLiteralNode.factory, (st.gravel.support.jvm.SmalltalkFactory) _node.factory());
assertEquals((double) 1.2341234134515e29d, (double) _node.value(), (double) 1.0e16f);
}
@Test
public void testParseDouble2() {
final DoubleLiteralNode _node;
_node = ((DoubleLiteralNode) Parser.factory.source_("3.0d.").parseExpression());
assertEquals((st.gravel.support.jvm.SmalltalkFactory) DoubleLiteralNode.factory, (st.gravel.support.jvm.SmalltalkFactory) _node.factory());
assertEquals((double) 3.0d, (double) _node.value(), (double) 0.000000001f);
}
@Test
public void testParseDoubleWithExponent() {
final DoubleLiteralNode _node;
_node = ((DoubleLiteralNode) Parser.factory.source_("1.23412d29").parseExpression());
assertEquals((st.gravel.support.jvm.SmalltalkFactory) DoubleLiteralNode.factory, (st.gravel.support.jvm.SmalltalkFactory) _node.factory());
assertEquals((double) 1.23412e29d, (double) _node.value(), (double) 0.000000001f);
}
@Test
public void testParseDoubleWithExponent2() {
final DoubleLiteralNode _node;
_node = ((DoubleLiteralNode) Parser.factory.source_("1d10").parseExpression());
assertEquals((st.gravel.support.jvm.SmalltalkFactory) DoubleLiteralNode.factory, (st.gravel.support.jvm.SmalltalkFactory) _node.factory());
assertEquals((double) 1.0e10d, (double) _node.value(), (double) 0.000000001f);
}
@Test
public void testParseDoubleWithExponent3() {
final DoubleLiteralNode _node;
_node = ((DoubleLiteralNode) Parser.factory.source_("1d-10").parseExpression());
assertEquals((st.gravel.support.jvm.SmalltalkFactory) DoubleLiteralNode.factory, (st.gravel.support.jvm.SmalltalkFactory) _node.factory());
assertEquals((double) 1.0e-10d, (double) _node.value(), (double) 0.000000001f);
}
@Test
public void testParseEmptyBlock() {
final Statement _node;
_node = Parser.factory.source_("[]").parseExpression();
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), BlockNode.factory));
assertEquals((String) "[]", (String) _node.prettySourceString());
}
@Test
public void testParseFixedPoint() {
final FixedPointLiteralNode _node;
_node = ((FixedPointLiteralNode) Parser.factory.source_("12345.0067s").parseExpression());
assertEquals((st.gravel.support.jvm.SmalltalkFactory) FixedPointLiteralNode.factory, (st.gravel.support.jvm.SmalltalkFactory) _node.factory());
assertEquals((String) "12345.0067s", (String) _node.valueString());
}
@Test
public void testParseFixedPointNegativeWithExponent() {
final FixedPointLiteralNode _node;
_node = ((FixedPointLiteralNode) Parser.factory.source_("-2.5s2").parseExpression());
assertEquals((st.gravel.support.jvm.SmalltalkFactory) FixedPointLiteralNode.factory, (st.gravel.support.jvm.SmalltalkFactory) _node.factory());
assertEquals((String) "-2.5s2", (String) _node.valueString());
}
@Test
public void testParseFixedPointNegativeWithoutExponent() {
final FixedPointLiteralNode _node;
_node = ((FixedPointLiteralNode) Parser.factory.source_("-2.5s").parseExpression());
assertEquals((st.gravel.support.jvm.SmalltalkFactory) FixedPointLiteralNode.factory, (st.gravel.support.jvm.SmalltalkFactory) _node.factory());
assertEquals((String) "-2.5s", (String) _node.valueString());
}
@Test
public void testParseFixedPointWithExponent() {
final FixedPointLiteralNode _node;
_node = ((FixedPointLiteralNode) Parser.factory.source_("5.1s2").parseExpression());
assertEquals((st.gravel.support.jvm.SmalltalkFactory) FixedPointLiteralNode.factory, (st.gravel.support.jvm.SmalltalkFactory) _node.factory());
assertEquals((String) "5.1s2", (String) _node.valueString());
}
@Test
public void testParseFixedPointWithoutExponent() {
final FixedPointLiteralNode _node;
_node = ((FixedPointLiteralNode) Parser.factory.source_("2.5s").parseExpression());
assertEquals((st.gravel.support.jvm.SmalltalkFactory) FixedPointLiteralNode.factory, (st.gravel.support.jvm.SmalltalkFactory) _node.factory());
assertEquals((String) "2.5s", (String) _node.valueString());
}
@Test
public void testParseFixedPointWithZero() {
final FixedPointLiteralNode _node;
_node = ((FixedPointLiteralNode) Parser.factory.source_("0.5s").parseExpression());
assertEquals((st.gravel.support.jvm.SmalltalkFactory) FixedPointLiteralNode.factory, (st.gravel.support.jvm.SmalltalkFactory) _node.factory());
assertEquals((String) "0.5s", (String) _node.valueString());
}
@Test
public void testParseFixedPointWithZero2() {
final FixedPointLiteralNode _node;
_node = ((FixedPointLiteralNode) Parser.factory.source_("0.05s").parseExpression());
assertEquals((st.gravel.support.jvm.SmalltalkFactory) FixedPointLiteralNode.factory, (st.gravel.support.jvm.SmalltalkFactory) _node.factory());
assertEquals((String) "0.05s", (String) _node.valueString());
}
@Test
public void testParseFloat() {
final FloatLiteralNode _node;
_node = ((FloatLiteralNode) Parser.factory.source_("123412341345145145123412341234.003213123123").parseExpression());
assertEquals((st.gravel.support.jvm.SmalltalkFactory) FloatLiteralNode.factory, (st.gravel.support.jvm.SmalltalkFactory) _node.factory());
assertEquals((float) 123412341345145145123412341234.003213123123f, (float) _node.value(), (float) 0.000000001f);
}
@Test
public void testParseFloat2() {
final FloatLiteralNode _node;
_node = ((FloatLiteralNode) Parser.factory.source_("3.0.").parseExpression());
assertEquals((st.gravel.support.jvm.SmalltalkFactory) FloatLiteralNode.factory, (st.gravel.support.jvm.SmalltalkFactory) _node.factory());
assertEquals((float) 3.0f, (float) _node.value(), (float) 0.000000001f);
}
@Test
public void testParseFloatWithExponent() {
final FloatLiteralNode _node;
_node = ((FloatLiteralNode) Parser.factory.source_("1.23412e29").parseExpression());
assertEquals((st.gravel.support.jvm.SmalltalkFactory) FloatLiteralNode.factory, (st.gravel.support.jvm.SmalltalkFactory) _node.factory());
assertEquals((float) 1.23412e29f, (float) _node.value(), (float) 0.000000001f);
}
@Test
public void testParseFloatWithNegativeExponent() {
final FloatLiteralNode _node;
_node = ((FloatLiteralNode) Parser.factory.source_("1.23412e-29").parseExpression());
assertEquals((st.gravel.support.jvm.SmalltalkFactory) FloatLiteralNode.factory, (st.gravel.support.jvm.SmalltalkFactory) _node.factory());
assertEquals((float) 1.23412e-29f, (float) _node.value(), (float) 0.000000001f);
}
@Test
public void testParseHexInteger() {
final IntegerLiteralNode _node;
_node = ((IntegerLiteralNode) Parser.factory.source_("16rFF").parseExpression());
assertEquals((st.gravel.support.jvm.SmalltalkFactory) IntegerLiteralNode.factory, (st.gravel.support.jvm.SmalltalkFactory) _node.factory());
assertEquals(255, (int) _node.value());
}
@Test
public void testParseInteger() {
final IntegerLiteralNode _node;
_node = ((IntegerLiteralNode) Parser.factory.source_("123").parseExpression());
assertEquals((st.gravel.support.jvm.SmalltalkFactory) IntegerLiteralNode.factory, (st.gravel.support.jvm.SmalltalkFactory) _node.factory());
assertEquals(123, (int) _node.value());
}
@Test
public void testParseIntegerSpace() {
final IntegerLiteralNode _node;
_node = ((IntegerLiteralNode) Parser.factory.source_("123 ").parseExpression());
assertEquals((st.gravel.support.jvm.SmalltalkFactory) IntegerLiteralNode.factory, (st.gravel.support.jvm.SmalltalkFactory) _node.factory());
assertEquals(123, (int) _node.value());
}
@Test
public void testParseKeywordBinaryUnaryExpression1() {
final Statement _node;
_node = Parser.factory.source_("2 bar + 7 foo: 7 bar: 4 baz foo: 2 + 1 boo: 3 foo + 2 roo: 3 + 2 foo noo: 3 hoo + 2 joo").parseExpression();
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), KeywordMessageNode.factory));
assertEquals((String) "2 bar + 7\n\tfoo: 7\n\tbar: 4 baz\n\tfoo: 2 + 1\n\tboo: 3 foo + 2\n\troo: 3 + 2 foo\n\tnoo: 3 hoo + 2 joo", (String) _node.prettySourceString());
}
@Test
public void testParseKeywordBinaryUnaryExpression2() {
final Statement _node;
_node = Parser.factory.source_("2 bar foo: 7 bar: 4 baz foo: 2 + 1 boo: 3 foo + 2 roo: 3 + 2 foo noo: 3 hoo + 2 joo").parseExpression();
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), KeywordMessageNode.factory));
assertEquals((String) "2 bar\n\tfoo: 7\n\tbar: 4 baz\n\tfoo: 2 + 1\n\tboo: 3 foo + 2\n\troo: 3 + 2 foo\n\tnoo: 3 hoo + 2 joo", (String) _node.prettySourceString());
}
@Test
public void testParseKeywordBinaryUnaryExpression3() {
final Statement _node;
_node = Parser.factory.source_("2 + 7 foo: 7 bar: 4 baz foo: 2 + 1 boo: 3 foo + 2 roo: 3 + 2 foo noo: 3 hoo + 2 joo").parseExpression();
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), KeywordMessageNode.factory));
assertEquals((String) "2 + 7\n\tfoo: 7\n\tbar: 4 baz\n\tfoo: 2 + 1\n\tboo: 3 foo + 2\n\troo: 3 + 2 foo\n\tnoo: 3 hoo + 2 joo", (String) _node.prettySourceString());
}
@Test
public void testParseKeywordBinaryUnaryExpression4() {
final Statement _node;
_node = Parser.factory.source_("2 + 7 bar foo: 7 bar: 4 baz foo: 2 + 1 boo: 3 foo + 2 roo: 3 + 2 foo noo: 3 hoo + 2 joo").parseExpression();
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), KeywordMessageNode.factory));
assertEquals((String) "2 + 7 bar\n\tfoo: 7\n\tbar: 4 baz\n\tfoo: 2 + 1\n\tboo: 3 foo + 2\n\troo: 3 + 2 foo\n\tnoo: 3 hoo + 2 joo", (String) _node.prettySourceString());
}
@Test
public void testParseKeywordExpression() {
final Statement _node;
_node = Parser.factory.source_(" 3 foo: 7 bar: 4 ").parseExpression();
assertEquals((st.gravel.support.jvm.SmalltalkFactory) KeywordMessageNode.factory, (st.gravel.support.jvm.SmalltalkFactory) _node.factory());
assertEquals((String) "3 foo: 7 bar: 4", (String) _node.prettySourceString());
}
@Test
public void testParseKeywordMethod1() {
final KeywordMethodNode _node;
_node = ((KeywordMethodNode) Parser.factory.parseMethod_("foo: arg1 ^bar"));
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), KeywordMethodNode.factory));
assertEquals((String) "foo: arg1\n\t^bar", (String) _node.prettySourceString());
}
@Test
public void testParseKeywordMethod2() {
final KeywordMethodNode _node;
_node = ((KeywordMethodNode) Parser.factory.parseMethod_("foo: arg1 bar: arg2 ^bar"));
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), KeywordMethodNode.factory));
assertEquals((String) "foo: arg1 bar: arg2\n\t^bar", (String) _node.prettySourceString());
}
@Test
public void testParseLiteralArray() {
final ArrayLiteralNode _node;
_node = ((ArrayLiteralNode) Parser.factory.source_("#(#foo foo \'foo\' 1 (a b c) #( a b c) ((x)) () #[1 2 3])").parseExpression());
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), ArrayLiteralNode.factory));
assertEquals((String) "#(#foo #foo \'foo\' 1 #(#a #b #c) #(#a #b #c) #(#(#x)) #() #[1 2 3])", (String) _node.prettySourceString());
assertTrue(st.gravel.support.jvm.IntegerExtensions.equals_(_node.value().length, 9));
}
@Test
public void testParseMethodWithArgAndReturnType() {
final BinaryMethodNode _node;
_node = ((BinaryMethodNode) Parser.factory.parseMethod_("+ arg {String} {^String}^bar"));
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), BinaryMethodNode.factory));
assertEquals((String) "+ arg {String} {^String}\n\t^bar", (String) _node.prettySourceString());
assertTrue(_node.argument().type() != null);
assertTrue(_node.returnType() != null);
}
@Test
public void testParseMethodWithArgType() {
final BinaryMethodNode _node;
_node = ((BinaryMethodNode) Parser.factory.parseMethod_("+ arg {String} ^bar"));
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), BinaryMethodNode.factory));
assertEquals((String) "+ arg {String}\n\t^bar", (String) _node.prettySourceString());
assertTrue(_node.argument().type() != null);
assertTrue(_node.returnType() == null);
}
@Test
public void testParseMethodWithReturnType() {
final BinaryMethodNode _node;
_node = ((BinaryMethodNode) Parser.factory.parseMethod_("+ arg {^String} ^bar"));
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), BinaryMethodNode.factory));
assertEquals((String) "+ arg {^String}\n\t^bar", (String) _node.prettySourceString());
}
@Test
public void testParseMethodWithReturnTypeWithSpace() {
final BinaryMethodNode _node;
_node = ((BinaryMethodNode) Parser.factory.parseMethod_("+ arg {^ String} ^bar"));
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), BinaryMethodNode.factory));
assertEquals((String) "+ arg {^String}\n\t^bar", (String) _node.prettySourceString());
}
@Test
public void testParseNamespacedVariable() {
final NamespacedVariableNode _node;
_node = ((NamespacedVariableNode) Parser.factory.source_(" foo.bar.baz ").parseExpression());
assertEquals((st.gravel.support.jvm.SmalltalkFactory) NamespacedVariableNode.factory, (st.gravel.support.jvm.SmalltalkFactory) _node.factory());
assertEquals((String) "foo.bar.baz", (String) _node.prettySourceString());
assertEquals((String[]) new String[] { "foo", "bar", "baz" }, (String[]) _node.path());
}
@Test
public void testParseNegativeInteger() {
final IntegerLiteralNode _node;
_node = ((IntegerLiteralNode) Parser.factory.source_("-123").parseExpression());
assertEquals((st.gravel.support.jvm.SmalltalkFactory) IntegerLiteralNode.factory, (st.gravel.support.jvm.SmalltalkFactory) _node.factory());
assertEquals(-123, (int) _node.value());
}
@Test
public void testParseNestedExpression() {
final Statement _node;
_node = Parser.factory.source_(" 3 + (4 + 5) ").parseExpression();
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), BinaryMessageNode.factory));
assertEquals((String) "3 + (4 + 5)", (String) _node.prettySourceString());
}
@Test
public void testParseNilaryBlockNoTemps() {
final Statement _node;
_node = Parser.factory.source_("[1 foo. 2 bar]").parseExpression();
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), BlockNode.factory));
assertEquals((String) "\n[\n1 foo.\n2 bar]", (String) _node.prettySourceString());
}
@Test
public void testParseNilaryBlockWithTemps() {
final Statement _node;
_node = Parser.factory.source_("[| a b | a foo. b bar]").parseExpression();
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), BlockNode.factory));
assertEquals((String) "\n[\n| a b |\na foo.\nb bar]", (String) _node.prettySourceString());
}
@Test
public void testParseNilInArray1() {
final ArrayLiteralNode _node;
_node = ((ArrayLiteralNode) Parser.factory.source_("#(nil)").parseExpression());
assertEquals((st.gravel.support.jvm.SmalltalkFactory) ArrayLiteralNode.factory, (st.gravel.support.jvm.SmalltalkFactory) _node.factory());
assertEquals((Object) null, (Object) _node.value()[0]);
}
@Test
public void testParseOrType() {
final BinaryMethodNode _node;
_node = ((BinaryMethodNode) Parser.factory.parseMethod_("+ arg {String | Nil} ^bar"));
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), BinaryMethodNode.factory));
assertEquals((String) "+ arg {String | Nil}\n\t^bar", (String) _node.prettySourceString());
}
@Test
public void testParseReturn() {
final Statement _node;
_node = Parser.factory.source_("[:a | ^a]").parseExpression();
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), BlockNode.factory));
assertEquals((String) "[:a | ^a]", (String) _node.prettySourceString());
}
@Test
public void testParseString1() {
final StringLiteralNode _node;
_node = ((StringLiteralNode) Parser.factory.source_("\'fromage\'").parseExpression());
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), StringLiteralNode.factory));
assertTrue(st.gravel.support.jvm.StringExtensions.equals_(_node.value(), "fromage"));
}
@Test
public void testParseString2() {
final StringLiteralNode _node;
_node = ((StringLiteralNode) Parser.factory.source_("\'from\'\'age\'").parseExpression());
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), StringLiteralNode.factory));
assertTrue(st.gravel.support.jvm.StringExtensions.equals_(_node.value(), "from\'age"));
}
@Test
public void testParseSymbol1() {
final SymbolLiteralNode _node;
_node = ((SymbolLiteralNode) Parser.factory.source_("#\'from\'\'age\'").parseExpression());
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), SymbolLiteralNode.factory));
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.value(), st.gravel.core.Symbol.value("from\'age")));
}
@Test
public void testParseSymbol2() {
final SymbolLiteralNode _node;
_node = ((SymbolLiteralNode) Parser.factory.source_("#foo").parseExpression());
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), SymbolLiteralNode.factory));
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.value(), st.gravel.core.Symbol.value("foo")));
}
@Test
public void testParseUnaryBlockNoTemps() {
final Statement _node;
_node = Parser.factory.source_("[:a | a foo. 2 bar]").parseExpression();
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), BlockNode.factory));
assertEquals((String) "\n[:a | \na foo.\n2 bar]", (String) _node.prettySourceString());
}
@Test
public void testParseUnaryBlockWithTemps() {
final Statement _node;
_node = Parser.factory.source_("[:a | | b | a foo. b bar]").parseExpression();
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), BlockNode.factory));
assertEquals((String) "\n[:a | \n| b |\na foo.\nb bar]", (String) _node.prettySourceString());
}
@Test
public void testParseUnaryExpression() {
final UnaryMessageNode _node;
_node = ((UnaryMessageNode) Parser.factory.source_(" 3 foo ").parseExpression());
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), UnaryMessageNode.factory));
assertEquals((String) "3 foo", (String) _node.prettySourceString());
}
@Test
public void testParseUnaryMethod() {
final UnaryMethodNode _node;
_node = ((UnaryMethodNode) Parser.factory.parseMethod_("foo self baz. ^bar"));
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), UnaryMethodNode.factory));
assertEquals((String) "foo\n\tself baz.\n\t^bar", (String) _node.prettySourceString());
}
@Test
public void testParseVariable() {
final VariableNode _node;
_node = ((VariableNode) Parser.factory.source_(" foo ").parseExpression());
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), VariableNode.factory));
assertEquals((String) "foo", (String) _node.prettySourceString());
}
@Test
public void testParseVariableDot() {
final BlockNode _node;
_node = ((BlockNode) Parser.factory.source_(" [foo. bar] ").parseExpression());
assertTrue(st.gravel.support.jvm.ObjectExtensions.equals_(_node.factory(), BlockNode.factory));
assertEquals((String) "\n[\nfoo.\nbar]", (String) _node.prettySourceString());
}
}