#include #include "../ast.h" #include "tester.h" void tester::set_file(std::string file_name) { return; } Document* tester::parse() { Document *d = new Document("a","b","c"); //block line test Block_Line *bl = new Block_Line(); Line_Word *lw = new Line_Word(); d->add_block(bl); bl->add_line(lw); lw->add_word(new Format_Bold(new Text("Bold"))); lw->add_word(new Format_Italic(new Text("Italic"))); lw->add_word(new Format_Verbatim(new Text("Verbatim"))); lw->add_word(new Text("Text")); lw->add_word(new Format_Bold(new Format_Italic(new Text("BoldItalic")))); lw->add_word(new MathInline("1+1=2")); lw->add_word(new Link("link","text")); //heading test lw = new Line_Word(); lw->add_word(new Text("heading")); Heading *h = new Heading(1, lw); bl->add_line(h); //list test lw = new Line_Word(); lw->add_word(new Text("ordered")); List *l = new List(1,1,lw); bl->add_line(l); lw = new Line_Word(); lw->add_word(new Text("unordered")); l = new List(1,0,lw); bl->add_line(l); //mathdisp test bl->add_line(new MathDisp("1+1=2")); //table test Block_Table *bt = new Block_Table(); std::vector* row = new std::vector(); lw = new Line_Word(); lw->add_word(new Text("Table1")); row->push_back(lw); lw = new Line_Word(); lw->add_word(new Text("Table2")); row->push_back(lw); bt->add_row(row); row = new std::vector(); lw = new Line_Word(); lw->add_word(new Text("Table3")); row->push_back(lw); lw = new Line_Word(); lw->add_word(new Text("Table4")); row->push_back(lw); bt->add_row(row); d->add_block(bt); //code test Block_Code *bc = new Block_Code("C"); bc->add_line("#include "); bc->add_line("int main(void)\n{\nprintf(\"Hello World!\\n\");\n}"); d->add_block(bc); return d; }