package eu.europeana.cloud.service.dps.storm.transform.text; import eu.europeana.cloud.service.dps.storm.transform.text.oai.OaiExtractionMethods; import eu.europeana.cloud.service.dps.storm.transform.text.pdf.PdfExtractionMethods; import eu.europeana.cloud.service.dps.storm.transform.text.txt.TxtExtractionMethods; import eu.europeana.cloud.service.dps.storm.transform.text.edm.EdmExtractionMethods; import static org.junit.Assert.assertNull; import static org.junit.Assert.assertEquals; import org.junit.Test; /** * * @author Pavel Kefurt <Pavel.Kefurt@gmail.com> */ public class FactoryTest { @Test public void getPdfExtractorsTest() { assertEquals(PdfExtractionMethods.TIKA_EXTRACTOR, TextExtractorFactory.getExtractor("PDF", "TIKA_EXTRACTOR").getExtractionMethod()); assertEquals(PdfExtractionMethods.TIKA_EXTRACTOR, TextExtractorFactory.getExtractor("PDF", "defaultExtractor").getExtractionMethod()); assertEquals(PdfExtractionMethods.TIKA_EXTRACTOR, TextExtractorFactory.getExtractor("PDF", "fdsafdsaf").getExtractionMethod()); assertEquals(PdfExtractionMethods.TIKA_EXTRACTOR, TextExtractorFactory.getExtractor("PDF", null).getExtractionMethod()); assertEquals(PdfExtractionMethods.TIKA_EXTRACTOR, //TODO: jpod is not implemented TextExtractorFactory.getExtractor("pdf", "jpod_extractor").getExtractionMethod()); assertEquals(PdfExtractionMethods.PDFBOX_EXTRACTOR, TextExtractorFactory.getExtractor("PdF", "PdfBox_Extractor").getExtractionMethod()); } @Test public void getOaiExtractorsTest() { assertEquals(OaiExtractionMethods.DC_EXTRACTOR, TextExtractorFactory.getExtractor("OAI", "DC_Extractor").getExtractionMethod()); assertEquals(OaiExtractionMethods.DC_EXTRACTOR, TextExtractorFactory.getExtractor("OAI", "fdsfs").getExtractionMethod()); assertEquals(OaiExtractionMethods.DC_EXTRACTOR, TextExtractorFactory.getExtractor("OaI", "").getExtractionMethod()); assertEquals(OaiExtractionMethods.DC_EXTRACTOR, TextExtractorFactory.getExtractor("oaI", null).getExtractionMethod()); } @Test public void UnsupportedRepresentationTest() { assertNull(TextExtractorFactory.getExtractor("UNSUPPORTED", "TIKA_EXTRACTOR")); assertNull(TextExtractorFactory.getExtractor("fdagfda", "TIKA_EXTRACTOR")); assertNull(TextExtractorFactory.getExtractor("fdagfda", "dssss")); assertNull(TextExtractorFactory.getExtractor("", "dssss")); assertNull(TextExtractorFactory.getExtractor(null, "dssss")); } @Test public void getTxtExtractorsTest() { assertEquals(TxtExtractionMethods.READ_FILE_EXTRACTOR, TextExtractorFactory.getExtractor("TXT", "Read_File_Extractor").getExtractionMethod()); assertEquals(TxtExtractionMethods.READ_FILE_EXTRACTOR, TextExtractorFactory.getExtractor("tXT", "fdsfs").getExtractionMethod()); assertEquals(TxtExtractionMethods.READ_FILE_EXTRACTOR, TextExtractorFactory.getExtractor("txt", "").getExtractionMethod()); assertEquals(TxtExtractionMethods.READ_FILE_EXTRACTOR, TextExtractorFactory.getExtractor("txt", null).getExtractionMethod()); } @Test public void getEdmExtractorsTest() { assertEquals(EdmExtractionMethods.JIBX_EXTRACTOR, TextExtractorFactory.getExtractor("EDM", "JIBX_extractor").getExtractionMethod()); assertEquals(EdmExtractionMethods.JIBX_EXTRACTOR, TextExtractorFactory.getExtractor("eDM", "fdsfs").getExtractionMethod()); assertEquals(EdmExtractionMethods.JIBX_EXTRACTOR, TextExtractorFactory.getExtractor("edm", "").getExtractionMethod()); assertEquals(EdmExtractionMethods.JIBX_EXTRACTOR, TextExtractorFactory.getExtractor("EDm", null).getExtractionMethod()); } }