#include <string>
|
#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<Line_Word*>* row = new std::vector<Line_Word*>();
|
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<Line_Word*>();
|
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 <stdio.h>");
|
bc->add_line("int main(void)\n{\nprintf(\"Hello World!\\n\");\n}");
|
d->add_block(bc);
|
|
return d;
|
}
|