package ch.nerdin.generators.testdata.unittest; import ch.nerdin.generators.testdata.framework.integration.Employee; import org.apache.commons.io.IOUtils; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import static ch.nerdin.generators.testdata.TestData.createBeanInstance; import static org.testng.Assert.assertEquals; import static org.testng.Assert.fail; /** * @author edewit */ public abstract class AbstractTestFrameworkTester { public void theTest() throws IOException { final File file = getEmployeeSerializedFile(); final Employee employee = createBeanInstance(Employee.class); if (file.exists()) { assertEquals(readObject(file), employee.getFirstName()); getEmployeeSerializedFile().delete(); } else { writeObject(employee, file); fail("test failed"); } } protected File getEmployeeSerializedFile() { String tempDir = System.getProperty("java.io.tmpdir"); return new File(tempDir, "employee.ser"); } protected Object readObject(File file) throws IOException { FileInputStream inputStream = null; try { inputStream = new FileInputStream(file); return IOUtils.readLines(inputStream).get(0); } finally { IOUtils.closeQuietly(inputStream); } } protected void writeObject(Employee employee, File file) throws IOException { FileOutputStream stream = null; try { stream = new FileOutputStream(file); IOUtils.write(employee.getFirstName(), stream); } finally { IOUtils.closeQuietly(stream); } } }