package edu.pdx.cs410J.grader; import org.junit.Test; import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.core.IsEqual.equalTo; public class GwtZipFixerTest { @Test public void testEntriesAreIgnored() { assertThat(GwtZipFixer.getFixedEntryName("src/test/java"), equalTo(null)); } @Test public void pomXmlRemainsAtTopLevel() { assertThat(GwtZipFixer.getFixedEntryName("pom.xml"), equalTo("pom.xml")); } @Test public void pomXmlIsMovedToTopLevel() { assertThat(GwtZipFixer.getFixedEntryName("dir/pom.xml"), equalTo("pom.xml")); } @Test public void javaSourceRemainsAtTopLevel() { String entry = "src/main/java/edu/pdx/cs410J/student/client/AppointmentBookServiceAsync.java"; assertThat(GwtZipFixer.getFixedEntryName(entry), equalTo(entry)); } @Test public void javaSourceIsMovedToTopLevel() { String entry = "src/main/java/edu/pdx/cs410J/student/client/AppointmentBookServiceAsync.java"; assertThat(GwtZipFixer.getFixedEntryName("directory/" + entry), equalTo(entry)); } @Test public void ideaDirectoryIsIgnored() { String entry = "5Proj/apptbook-gwt/.idea/artifacts/"; assertThat(GwtZipFixer.getFixedEntryName(entry), equalTo(null)); } @Test public void resourcesDirectoryIsMovedToTopLevel() { String entry = "5Proj/apptbook-gwt/src/main/resources/AppointmentBookGwt.gwt.xml"; assertThat(GwtZipFixer.getFixedEntryName(entry), equalTo("src/main/resources/AppointmentBookGwt.gwt.xml")); } @Test public void srcIsAddedToMainDirectory() { String entry = "main/java/edu/pdx/cs410J/student/client/PrettyPrinter.java"; assertThat(GwtZipFixer.getFixedEntryName(entry), equalTo("src/" + entry)); } @Test public void macosDirectoryIsIgnored() { String entry = "__MACOSX/apptbook-gwt/._pom.xml"; assertThat(GwtZipFixer.getFixedEntryName(entry), equalTo(null)); } @Test public void mainThatIsNotSourceMainIsIgnored() { String entry = "apptbook-gwt/out/production/main/"; assertThat(GwtZipFixer.getFixedEntryName(entry), equalTo(null)); } @Test public void directoryWithJavaIsMovedToSrcMain() { String entry = "student/java/edu/pdx/cs410J/student/client/Appointment.java"; String fixed = "src/main/java/edu/pdx/cs410J/student/client/Appointment.java"; assertThat(GwtZipFixer.getFixedEntryName(entry), equalTo(fixed)); } @Test public void srcTestIsIgnored() { String entry = "apptbook-gwt-submission/src/test/java/edu/"; assertThat(GwtZipFixer.getFixedEntryName(entry), equalTo(null)); } @Test public void srcItIsIgnored() { String entry = "apptbook-gwt-submission/src/it/java/edu/"; assertThat(GwtZipFixer.getFixedEntryName(entry), equalTo(null)); } @Test public void directoryWithResourcesIsMovedToSrcMain() { String entry = "student/resources/edu/pdx/cs410J/student/AppointmentBookGwt.gwt.xml"; String fixed = "src/main/resources/edu/pdx/cs410J/student/AppointmentBookGwt.gwt.xml"; assertThat(GwtZipFixer.getFixedEntryName(entry), equalTo(fixed)); } @Test public void directoryWithWebappIsMovedToSrcMain() { String entry = "student/webapp/WEB-INF/web.xml"; String fixed = "src/main/webapp/WEB-INF/web.xml"; assertThat(GwtZipFixer.getFixedEntryName(entry), equalTo(fixed)); } }