/* * tests.h * * Created on: Dec 18, 2012 * Author: att */ #ifndef TESTS_H_ #define TESTS_H_ #include #include #include "TestLexer.h" #include "TestASTInspector.h" #include "../Lexer.h" #include "../Parser.h" using namespace std; void test_lexer() { string test_line = "dupa"; string test_line2 = "def how_many_trees = 1; how_many_trees + 3 == 2; num cut_tree( num how_many) {return how_many -1; != <=}"; Lexer lexer; vector tokens = lexer.parse_line(test_line); for(unsigned int i=0; i< tokens.size(); i++) { cout << tokens[i].get_value() << " type: " << tokens[i].get_type() << endl; } tokens = lexer.parse_line(test_line2); } void test_parser() { vector lines; lines.push_back("def i; bulb; i + 3; string banan = \"kartofel\"; banan = \"banan\"; string kaboom(num how_many_times) { def z; }"); lines.push_back("num pun"); lines.push_back("def how_many_trees = 1; how_many_trees + 3 == 2; num cut_tree(num how_many) {return how_many -1}"); Lexer lexer; Context context; vector tokens; for(unsigned int i=0; i>>" << endl; cout << "Instructions: " << endl ; cout << lines[i] << endl << endl; //cout << parser.report_message; cout << parser.error_message << endl; } } void run_test_suites() { TestLexer test_l; test_l.run_tests(); TestASTInspector test_inspector; test_inspector.run_tests(); } void run_tests() { run_test_suites(); cout << "derp!" << endl; } #endif /* TESTS_H_ */