added additional tests

This commit is contained in:
jomu
2016-06-20 11:10:07 +00:00
parent a9113ff882
commit fbe9e99765
2 changed files with 94 additions and 0 deletions

View File

@ -0,0 +1,62 @@
package de.muehlencord.shared.pdf.test;
import de.muehlencord.shared.pdf.ConfigurationException;
import de.muehlencord.shared.pdf.PDFDocument;
import de.muehlencord.shared.pdf.PDFFont;
import de.muehlencord.shared.pdf.PDFPaperSize;
import de.muehlencord.shared.pdf.PDFTableContent;
import de.muehlencord.shared.pdf.PDFTemplate;
import de.muehlencord.shared.pdf.TemplateException;
import freemarker.template.Configuration;
import freemarker.template.Template;
import java.io.File;
import java.io.IOException;
import java.util.LinkedList;
import java.util.List;
import org.apache.commons.io.FileUtils;
import org.junit.Test;
/**
*
* @author joern.muehlencord
*/
public class GsonSerialisation {
@Test
public void testSerialisation() throws ConfigurationException, TemplateException, IOException {
PDFDocument doc = new PDFDocument(PDFPaperSize.A4);
doc.addFont("helv12", new PDFFont("Helvetica", 12, 2));
PDFTableContent userList = new PDFTableContent(doc, doc.getFontByAlias("helv12"),40F, 692F);
userList.addColumn(50, 300);
userList.addListRow("users", "user")
.setCellValue("${user.firstName}")
.setCellValue("${user.lastName}");
doc.addContent(userList);
// System.out.println ("*******");
// System.out.println (doc.toJson());
String jsonString = doc.getTemplateString();
File file = new File("c:/temp/users.ftlh");
FileUtils.writeStringToFile(file, jsonString, "UTF-8");
System.out.println ("*******");
System.out.println (jsonString);
System.out.println ("*******");
Configuration cfg = new Configuration(Configuration.VERSION_2_3_24);
cfg.setDirectoryForTemplateLoading(new File("c:/temp"));
cfg.setDefaultEncoding("UTF-8");
Template template = cfg.getTemplate("users.ftlh");
PDFTemplate pdfDoc = new PDFTemplate(template);
List<User> users = new LinkedList<>();
users.add (new User ("John", "Doe"));
users.add (new User ("Jane", "Roe"));
pdfDoc.addToDatamodel("users", users);
pdfDoc.create("c:/temp/users.pdf");
}
}

View File

@ -0,0 +1,32 @@
package de.muehlencord.shared.pdf.test;
import com.google.gson.annotations.Expose;
/**
*
* @author joern.muehlencord
*/
public class User {
@Expose
private final String firstName;
@Expose
private final String lastName;
public User(String firstName, String lastName) {
this.firstName = firstName;
this.lastName = lastName;
}
public String getFirstName() {
return firstName;
}
public String getLastName() {
return lastName;
}
}