public void ReuseClosureSlotTest() { string expected = "a\r\n"; string actual = CsLoxTests.RunScript(@"C:\CsLox\CsLoxTests\TestScripts\closure\reuse_closure_slot.lox"); Assert.AreEqual(expected, actual); }
public void InheritMethodsTest() { string expected = "foo\r\nbar\r\nbar\r\n"; string actual = CsLoxTests.RunScript(@"C:\CsLox\CsLoxTests\TestScripts\inheritance\inherit_methods.lox"); Assert.AreEqual(expected, actual); }
public void SetFieldsFromBaseClassTest() { string expected = "foo 1\r\nfoo 2\r\nbar 1\r\nbar 2\r\nbar 1\r\nbar 2\r\n"; string actual = CsLoxTests.RunScript(@"C:\CsLox\CsLoxTests\TestScripts\inheritance\set_fields_from_base_class.lox"); Assert.AreEqual(expected, actual); }
public void TruthTest() { string expected = "false\r\nnil\r\nTrue\r\n0\r\nempty\r\n"; string actual = CsLoxTests.RunScript(@"C:\CsLox\CsLoxTests\TestScripts\if\truth.lox"); Assert.AreEqual(expected, actual); }
public void VarInThenTest() { string expected = "[line 2] Error at 'var': Expect expression.\r\n"; string actual = CsLoxTests.RunScriptForError(@"C:\CsLox\CsLoxTests\TestScripts\if\var_in_then.lox"); Assert.AreEqual(expected, actual); }
public void ArityTest() { string expected = "no args\r\n1\r\n3\r\n6\r\n10\r\n15\r\n21\r\n28\r\n36\r\n"; string actual = CsLoxTests.RunScript(@"C:\CsLox\CsLoxTests\TestScripts\method\arity.lox"); Assert.AreEqual(expected, actual); }
public void DanglingElseTest() { string expected = "good\r\n"; string actual = CsLoxTests.RunScript(@"C:\CsLox\CsLoxTests\TestScripts\if\dangling_else.lox"); Assert.AreEqual(expected, actual); }
public void UndefinedTest() { string expected = "Undefined variable 'unknown'.\r\n[line 1]\r\n"; string actual = CsLoxTests.RunScriptForError(@"C:\CsLox\CsLoxTests\TestScripts\assignment\undefined.lox"); Assert.AreEqual(expected, actual); }
public void AssociativityTest() { string expected = "c\r\nc\r\nc\r\n"; string actual = CsLoxTests.RunScript(@"C:\CsLox\CsLoxTests\TestScripts\assignment\associativity.lox"); Assert.AreEqual(expected, actual); }
public void PrefixOperatorTest() { string expected = "[line 2] Error at '=': Invalid assignment target.\r\n"; string actual = CsLoxTests.RunScriptForError(@"C:\CsLox\CsLoxTests\TestScripts\assignment\prefix_operator.lox"); Assert.AreEqual(expected, actual); }
public void SyntaxTest() { string expected = "var\r\nvar\r\n"; string actual = CsLoxTests.RunScript(@"C:\CsLox\CsLoxTests\TestScripts\assignment\syntax.lox"); Assert.AreEqual(expected, actual); }
public void LocalTest() { string expected = "before\r\nafter\r\narg\r\narg\r\n"; string actual = CsLoxTests.RunScript(@"C:\CsLox\CsLoxTests\TestScripts\assignment\local.lox"); Assert.AreEqual(expected, actual); }
public void LiteralTest() { string expected = "nil\r\n"; string actual = CsLoxTests.RunScript(@"C:\CsLox\CsLoxTests\TestScripts\nil\literal.lox"); Assert.AreEqual(expected, actual); }
public void NotTest() { string expected = "False\r\nTrue\r\nTrue\r\n"; string actual = CsLoxTests.RunScript(@"C:\CsLox\CsLoxTests\TestScripts\bool\not.lox"); Assert.AreEqual(expected, actual); }
public void PrintBoundMethodTest() { string expected = "<fn method>\r\n"; string actual = CsLoxTests.RunScript(@"C:\CsLox\CsLoxTests\TestScripts\method\print_bound_method.lox"); Assert.AreEqual(expected, actual); }
public void OnlyLineCommentAndLineTest() { string expected = ""; string actual = CsLoxTests.RunScript(@"C:\CsLox\CsLoxTests\TestScripts\comments\only_line_comment_and_line.lox"); Assert.AreEqual(expected, actual); }
public void ReferToNameTest() { string expected = "Undefined variable 'method'.\r\n[line 3]\r\n"; string actual = CsLoxTests.RunScriptForError(@"C:\CsLox\CsLoxTests\TestScripts\method\refer_to_name.lox"); Assert.AreEqual(expected, actual); }
public void MalformedMultilineCommentTest() { string expected = ""; string actual = CsLoxTests.RunScript(@"C:\CsLox\CsLoxTests\TestScripts\comments\malformed_multiline_comment.lox"); Assert.AreEqual(expected, actual); }
public void TooManyParametersTest() { string expected = "[line 258] Error at 'a': Cannot have more than 255 parameters.\r\n"; string actual = CsLoxTests.RunScriptForError(@"C:\CsLox\CsLoxTests\TestScripts\method\too_many_parameters.lox"); Assert.AreEqual(expected, actual); }
public void MalformedMultilineCommentErrorTest() { string expected = "[line 5] Error: Unterminated comment.\r\n"; string actual = CsLoxTests.RunScriptForError(@"C:\CsLox\CsLoxTests\TestScripts\comments\malformed_multiline_comment.lox"); Assert.AreEqual(expected, actual); }
public void IfTest() { string expected = "good\r\nblock\r\nTrue\r\n"; string actual = CsLoxTests.RunScript(@"C:\CsLox\CsLoxTests\TestScripts\if\if.lox"); Assert.AreEqual(expected, actual); }
public void LineAtEofTest() { string expected = "ok\r\n"; string actual = CsLoxTests.RunScript(@"C:\CsLox\CsLoxTests\TestScripts\comments\line_at_eof.lox"); Assert.AreEqual(expected, actual); }
public void ClassInElseTest() { string expected = "[line 2] Error at 'class': Expect expression.\r\n"; string actual = CsLoxTests.RunScriptForError(@"C:\CsLox\CsLoxTests\TestScripts\if\class_in_else.lox"); Assert.AreEqual(expected, actual); }
public void EmptyBlockTest() { string expected = "nil\r\n"; string actual = CsLoxTests.RunScript(@"C:\CsLox\CsLoxTests\TestScripts\method\empty_block.lox"); Assert.AreEqual(expected, actual); }
public void InheritFromNumberTest() { string expected = "Superclass must be a class.\r\n[line 2]\r\n"; string actual = CsLoxTests.RunScriptForError(@"C:\CsLox\CsLoxTests\TestScripts\inheritance\inherit_from_number.lox"); Assert.AreEqual(expected, actual); }
public void MissingArgumentsTest() { string expected = "Expected 2 arguments but got 1.\r\n[line 5]\r\n"; string actual = CsLoxTests.RunScriptForError(@"C:\CsLox\CsLoxTests\TestScripts\method\missing_arguments.lox"); Assert.AreEqual(expected, actual); }
public void ParenthesizedSuperclassTest() { string expected = "[line 4] Error at '(': Expect superclass name.\r\n"; string actual = CsLoxTests.RunScriptForError(@"C:\CsLox\CsLoxTests\TestScripts\inheritance\parenthesized_superclass.lox"); Assert.AreEqual(expected, actual); }
public void NotFoundTest() { string expected = "Undefined property 'unknown'.\r\n[line 3]\r\n"; string actual = CsLoxTests.RunScriptForError(@"C:\CsLox\CsLoxTests\TestScripts\method\not_found.lox"); Assert.AreEqual(expected, actual); }
public void ConstructorTest() { string expected = "value\r\n"; string actual = CsLoxTests.RunScript(@"C:\CsLox\CsLoxTests\TestScripts\inheritance\constructor.lox"); Assert.AreEqual(expected, actual); }
public void ReferenceClosureMultipleTimesTest() { string expected = "a\r\na\r\n"; string actual = CsLoxTests.RunScript(@"C:\CsLox\CsLoxTests\TestScripts\closure\reference_closure_multiple_times.lox"); Assert.AreEqual(expected, actual); }