http://git-wip-us.apache.org/repos/asf/tika/blob/aa5f60d7/tika-parsers/src/test/java/org/apache/tika/parser/RecursiveParserWrapperTest.java ---------------------------------------------------------------------- diff --git a/tika-parsers/src/test/java/org/apache/tika/parser/RecursiveParserWrapperTest.java b/tika-parsers/src/test/java/org/apache/tika/parser/RecursiveParserWrapperTest.java deleted file mode 100644 index 4889b38..0000000 --- a/tika-parsers/src/test/java/org/apache/tika/parser/RecursiveParserWrapperTest.java +++ /dev/null @@ -1,312 +0,0 @@ -package org.apache.tika.parser; - -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - - -import static org.apache.tika.TikaTest.assertContains; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNull; -import static org.junit.Assert.assertTrue; - -import java.io.InputStream; -import java.util.HashSet; -import java.util.List; -import java.util.Set; - -import org.apache.commons.io.IOUtils; -import org.apache.tika.exception.TikaException; -import org.apache.tika.io.TikaInputStream; -import org.apache.tika.metadata.Metadata; -import org.apache.tika.metadata.TikaMetadataKeys; -import org.apache.tika.parser.utils.CommonsDigester; -import org.apache.tika.sax.BasicContentHandlerFactory; -import org.apache.tika.sax.ContentHandlerFactory; -import org.junit.Test; -import org.xml.sax.helpers.DefaultHandler; - -public class RecursiveParserWrapperTest { - - @Test - public void testBasicXML() throws Exception { - List<Metadata> list = getMetadata(new Metadata(), - new BasicContentHandlerFactory(BasicContentHandlerFactory.HANDLER_TYPE.XML, -1)); - Metadata container = list.get(0); - String content = container.get(RecursiveParserWrapper.TIKA_CONTENT); - //not much differentiates html from xml in this test file - assertTrue(content.indexOf("<p class=\"header\" />") > -1); - } - - @Test - public void testBasicHTML() throws Exception { - List<Metadata> list = getMetadata(new Metadata(), - new BasicContentHandlerFactory(BasicContentHandlerFactory.HANDLER_TYPE.HTML, -1)); - Metadata container = list.get(0); - String content = container.get(RecursiveParserWrapper.TIKA_CONTENT); - //not much differentiates html from xml in this test file - assertTrue(content.indexOf("<p class=\"header\"></p>") > -1); - } - - @Test - public void testBasicText() throws Exception { - List<Metadata> list = getMetadata(new Metadata(), - new BasicContentHandlerFactory(BasicContentHandlerFactory.HANDLER_TYPE.TEXT, -1)); - Metadata container = list.get(0); - String content = container.get(RecursiveParserWrapper.TIKA_CONTENT); - assertTrue(content.indexOf("<p ") < 0); - assertTrue(content.indexOf("embed_0") > -1); - } - - @Test - public void testIgnoreContent() throws Exception { - List<Metadata> list = getMetadata(new Metadata(), - new BasicContentHandlerFactory(BasicContentHandlerFactory.HANDLER_TYPE.IGNORE, -1)); - Metadata container = list.get(0); - String content = container.get(RecursiveParserWrapper.TIKA_CONTENT); - assertNull(content); - } - - - @Test - public void testCharLimit() throws Exception { - ParseContext context = new ParseContext(); - Metadata metadata = new Metadata(); - - Parser wrapped = new AutoDetectParser(); - RecursiveParserWrapper wrapper = new RecursiveParserWrapper(wrapped, - new BasicContentHandlerFactory(BasicContentHandlerFactory.HANDLER_TYPE.TEXT, 60)); - InputStream stream = RecursiveParserWrapperTest.class.getResourceAsStream( - "/test-documents/test_recursive_embedded.docx"); - wrapper.parse(stream, new DefaultHandler(), metadata, context); - List<Metadata> list = wrapper.getMetadata(); - - assertEquals(5, list.size()); - - int wlr = 0; - for (Metadata m : list) { - String limitReached = m.get(RecursiveParserWrapper.WRITE_LIMIT_REACHED); - if (limitReached != null && limitReached.equals("true")) { - wlr++; - } - } - assertEquals(1, wlr); - - } - - @Test - public void testMaxEmbedded() throws Exception { - int maxEmbedded = 4; - int totalNoLimit = 12;//including outer container file - ParseContext context = new ParseContext(); - Metadata metadata = new Metadata(); - String limitReached = null; - - Parser wrapped = new AutoDetectParser(); - RecursiveParserWrapper wrapper = new RecursiveParserWrapper(wrapped, - new BasicContentHandlerFactory(BasicContentHandlerFactory.HANDLER_TYPE.TEXT, -1)); - - InputStream stream = RecursiveParserWrapperTest.class.getResourceAsStream( - "/test-documents/test_recursive_embedded.docx"); - wrapper.parse(stream, new DefaultHandler(), metadata, context); - List<Metadata> list = wrapper.getMetadata(); - //test default - assertEquals(totalNoLimit, list.size()); - - limitReached = list.get(0).get(RecursiveParserWrapper.EMBEDDED_RESOURCE_LIMIT_REACHED); - assertNull(limitReached); - - - wrapper.reset(); - stream.close(); - - //test setting value - metadata = new Metadata(); - stream = RecursiveParserWrapperTest.class.getResourceAsStream( - "/test-documents/test_recursive_embedded.docx"); - wrapper.setMaxEmbeddedResources(maxEmbedded); - wrapper.parse(stream, new DefaultHandler(), metadata, context); - list = wrapper.getMetadata(); - - //add 1 for outer container file - assertEquals(maxEmbedded + 1, list.size()); - - limitReached = list.get(0).get(RecursiveParserWrapper.EMBEDDED_RESOURCE_LIMIT_REACHED); - assertEquals("true", limitReached); - - wrapper.reset(); - stream.close(); - - //test setting value < 0 - metadata = new Metadata(); - stream = RecursiveParserWrapperTest.class.getResourceAsStream( - "/test-documents/test_recursive_embedded.docx"); - - wrapper.setMaxEmbeddedResources(-2); - wrapper.parse(stream, new DefaultHandler(), metadata, context); - assertEquals(totalNoLimit, list.size()); - limitReached = list.get(0).get(RecursiveParserWrapper.EMBEDDED_RESOURCE_LIMIT_REACHED); - assertNull(limitReached); - } - - @Test - public void testEmbeddedResourcePath() throws Exception { - - Set<String> targets = new HashSet<String>(); - targets.add("/embed1.zip"); - targets.add("/embed1.zip/embed2.zip"); - targets.add("/embed1.zip/embed2.zip/embed3.zip"); - targets.add("/embed1.zip/embed2.zip/embed3.zip/embed4.zip"); - targets.add("/embed1.zip/embed2.zip/embed3.zip/embed4.zip/embed4.txt"); - targets.add("/embed1.zip/embed2.zip/embed3.zip/embed3.txt"); - targets.add("/embed1.zip/embed2.zip/embed2a.txt"); - targets.add("/embed1.zip/embed2.zip/embed2b.txt"); - targets.add("/embed1.zip/embed1b.txt"); - targets.add("/embed1.zip/embed1a.txt"); - targets.add("/image1.emf"); - - Metadata metadata = new Metadata(); - metadata.set(Metadata.RESOURCE_NAME_KEY, "test_recursive_embedded.docx"); - List<Metadata> list = getMetadata(metadata, - new BasicContentHandlerFactory(BasicContentHandlerFactory.HANDLER_TYPE.XML, -1)); - Metadata container = list.get(0); - String content = container.get(RecursiveParserWrapper.TIKA_CONTENT); - assertTrue(content.indexOf("<p class=\"header\" />") > -1); - - Set<String> seen = new HashSet<String>(); - for (Metadata m : list) { - String path = m.get(RecursiveParserWrapper.EMBEDDED_RESOURCE_PATH); - if (path != null) { - seen.add(path); - } - } - assertEquals(targets, seen); - } - - @Test - public void testEmbeddedNPE() throws Exception { - Metadata metadata = new Metadata(); - metadata.set(Metadata.RESOURCE_NAME_KEY, "test_recursive_embedded_npe.docx"); - List<Metadata> list = getMetadata(metadata, - new BasicContentHandlerFactory(BasicContentHandlerFactory.HANDLER_TYPE.TEXT, -1)); - //default behavior (user doesn't specify whether or not to catch embedded exceptions - //is to catch the exception - assertEquals(13, list.size()); - Metadata mockNPEMetadata = list.get(10); - assertContains("java.lang.NullPointerException", mockNPEMetadata.get(RecursiveParserWrapper.EMBEDDED_EXCEPTION)); - - metadata = new Metadata(); - metadata.set(Metadata.RESOURCE_NAME_KEY, "test_recursive_embedded_npe.docx"); - list = getMetadata(metadata, - new BasicContentHandlerFactory(BasicContentHandlerFactory.HANDLER_TYPE.TEXT, -1), - false, null); - - //Composite parser swallows caught TikaExceptions, IOExceptions and SAXExceptions - //and just doesn't bother to report that there was an exception. - assertEquals(12, list.size()); - } - - @Test - public void testPrimaryExcWEmbedded() throws Exception { - //if embedded content is handled and then - //the parser hits an exception in the container document, - //that the first element of the returned list is the container document - //and the second is the embedded content - Metadata metadata = new Metadata(); - metadata.set(Metadata.RESOURCE_NAME_KEY, "embedded_then_npe.xml"); - - ParseContext context = new ParseContext(); - Parser wrapped = new AutoDetectParser(); - RecursiveParserWrapper wrapper = new RecursiveParserWrapper(wrapped, - new BasicContentHandlerFactory(BasicContentHandlerFactory.HANDLER_TYPE.TEXT, -1), true); - String path = "/test-documents/mock/embedded_then_npe.xml"; - - InputStream stream = null; - boolean npe = false; - try { - stream = RecursiveParserWrapperTest.class.getResourceAsStream( - path); - wrapper.parse(stream, new DefaultHandler(), metadata, context); - } catch (TikaException e) { - if (e.getCause().getClass().equals(NullPointerException.class)) { - npe = true; - } - } finally { - IOUtils.closeQuietly(stream); - } - assertTrue("npe", npe); - - List<Metadata> metadataList = wrapper.getMetadata(); - assertEquals(2, metadataList.size()); - Metadata outerMetadata = metadataList.get(0); - Metadata embeddedMetadata = metadataList.get(1); - assertContains("main_content", outerMetadata.get(RecursiveParserWrapper.TIKA_CONTENT)); - assertEquals("embedded_then_npe.xml", outerMetadata.get(TikaMetadataKeys.RESOURCE_NAME_KEY)); - assertEquals("Nikolai Lobachevsky", outerMetadata.get("author")); - - assertContains("some_embedded_content", embeddedMetadata.get(RecursiveParserWrapper.TIKA_CONTENT)); - assertEquals("embed1.xml", embeddedMetadata.get(TikaMetadataKeys.RESOURCE_NAME_KEY)); - assertEquals("embeddedAuthor", embeddedMetadata.get("author")); - } - - @Test - public void testDigesters() throws Exception { - Metadata metadata = new Metadata(); - metadata.set(Metadata.RESOURCE_NAME_KEY, "test_recursive_embedded.docx"); - List<Metadata> list = getMetadata(metadata, - new BasicContentHandlerFactory(BasicContentHandlerFactory.HANDLER_TYPE.TEXT, -1), - true, new CommonsDigester(100000, CommonsDigester.DigestAlgorithm.MD5)); - int i = 0; - Metadata m0 = list.get(0); - Metadata m6 = list.get(6); - String md5Key = "X-TIKA:digest:MD5"; - assertEquals("59f626e09a8c16ab6dbc2800c685f772", list.get(0).get(md5Key)); - assertEquals("ccdf3882e7e4c2454e28884db9b0a54d", list.get(6).get(md5Key)); - assertEquals("a869bf6432ebd14e19fc79416274e0c9", list.get(7).get(md5Key)); - } - - private List<Metadata> getMetadata(Metadata metadata, ContentHandlerFactory contentHandlerFactory, - boolean catchEmbeddedExceptions, - DigestingParser.Digester digester) throws Exception { - ParseContext context = new ParseContext(); - Parser wrapped = new AutoDetectParser(); - if (digester != null) { - wrapped = new DigestingParser(wrapped, digester); - } - RecursiveParserWrapper wrapper = new RecursiveParserWrapper(wrapped, - contentHandlerFactory, catchEmbeddedExceptions); - String path = metadata.get(Metadata.RESOURCE_NAME_KEY); - if (path == null) { - path = "/test-documents/test_recursive_embedded.docx"; - } else { - path = "/test-documents/" + path; - } - InputStream stream = null; - try { - stream = TikaInputStream.get(RecursiveParserWrapperTest.class.getResource(path).toURI()); - wrapper.parse(stream, new DefaultHandler(), metadata, context); - } finally { - IOUtils.closeQuietly(stream); - } - return wrapper.getMetadata(); - - } - - private List<Metadata> getMetadata(Metadata metadata, ContentHandlerFactory contentHandlerFactory) - throws Exception { - return getMetadata(metadata, contentHandlerFactory, true, null); - } -}
http://git-wip-us.apache.org/repos/asf/tika/blob/aa5f60d7/tika-parsers/src/test/java/org/apache/tika/parser/fork/ForkParserIntegrationTest.java ---------------------------------------------------------------------- diff --git a/tika-parsers/src/test/java/org/apache/tika/parser/fork/ForkParserIntegrationTest.java b/tika-parsers/src/test/java/org/apache/tika/parser/fork/ForkParserIntegrationTest.java deleted file mode 100644 index 54c1427..0000000 --- a/tika-parsers/src/test/java/org/apache/tika/parser/fork/ForkParserIntegrationTest.java +++ /dev/null @@ -1,268 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.tika.parser.fork; - -import static org.apache.tika.TikaTest.assertContains; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.fail; - -import java.io.IOException; -import java.io.InputStream; -import java.io.NotSerializableException; -import java.util.Arrays; -import java.util.HashSet; -import java.util.Set; - -import org.apache.tika.Tika; -import org.apache.tika.detect.Detector; -import org.apache.tika.exception.TikaException; -import org.apache.tika.fork.ForkParser; -import org.apache.tika.metadata.Metadata; -import org.apache.tika.mime.MediaType; -import org.apache.tika.parser.ParseContext; -import org.apache.tika.parser.Parser; -import org.apache.tika.sax.BodyContentHandler; -import org.junit.Test; -import org.xml.sax.ContentHandler; -import org.xml.sax.SAXException; - -/** - * Test that the ForkParser correctly behaves when - * wired in to the regular Parsers and their test data - */ -public class ForkParserIntegrationTest { - - private Tika tika = new Tika(); // TODO Use TikaConfig instead, when it works - - /** - * Simple text parsing - */ - @Test - public void testForkedTextParsing() throws Exception { - ForkParser parser = new ForkParser( - ForkParserIntegrationTest.class.getClassLoader(), - tika.getParser()); - - try { - ContentHandler output = new BodyContentHandler(); - InputStream stream = ForkParserIntegrationTest.class.getResourceAsStream( - "/test-documents/testTXT.txt"); - ParseContext context = new ParseContext(); - parser.parse(stream, output, new Metadata(), context); - - String content = output.toString(); - assertContains("Test d'indexation", content); - assertContains("http://www.apache.org", content); - } finally { - parser.close(); - } - } - - /** - * This error has a message and an equals() implementation as to be able - * to match it against the serialized version of itself. - */ - static class AnError extends Error { - private static final long serialVersionUID = -6197267350768803348L; - private String message; - AnError(String message) { - super(message); - this.message = message; - } - - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - - AnError anError = (AnError) o; - - if (!message.equals(anError.message)) return false; - - return true; - } - - @Override - public int hashCode() { - return message.hashCode(); - } - } - - /** - * This error isn't serializable on the server, so can't be sent back - * to the Fork Client once it has occured - */ - static class WontBeSerializedError extends RuntimeException { - private static final long serialVersionUID = 1L; - - WontBeSerializedError(String message) { - super(message); - } - - private void writeObject(java.io.ObjectOutputStream out) { - RuntimeException e = new RuntimeException("Bang!"); - boolean found = false; - for (StackTraceElement ste : e.getStackTrace()) { - if (ste.getClassName().equals(ForkParser.class.getName())) { - found = true; - break; - } - } - if (!found) { - throw e; - } - } - } - - static class BrokenParser implements Parser { - private static final long serialVersionUID = 995871497930817839L; - public Error err = new AnError("Simulated fail"); - public RuntimeException re = null; - - public Set<MediaType> getSupportedTypes(ParseContext context) { - return new HashSet<MediaType>(Arrays.asList(MediaType.TEXT_PLAIN)); - } - - public void parse(InputStream stream, ContentHandler handler, Metadata metadata, ParseContext context) throws IOException, SAXException, TikaException { - if (re != null) throw re; - throw err; - } - } - - /** - * TIKA-831 Parsers throwing errors should be caught and - * properly reported - */ - @Test - public void testParsingErrorInForkedParserShouldBeReported() throws Exception { - BrokenParser brokenParser = new BrokenParser(); - Parser parser = new ForkParser(ForkParser.class.getClassLoader(), brokenParser); - InputStream stream = getClass().getResourceAsStream("/test-documents/testTXT.txt"); - - // With a serializable error, we'll get that back - try { - ContentHandler output = new BodyContentHandler(); - ParseContext context = new ParseContext(); - parser.parse(stream, output, new Metadata(), context); - fail("Expected TikaException caused by Error"); - } catch (TikaException e) { - assertEquals(brokenParser.err, e.getCause()); - } - - // With a non serializable one, we'll get something else - // TODO Fix this test - brokenParser = new BrokenParser(); - brokenParser.re= new WontBeSerializedError("Can't Serialize"); - parser = new ForkParser(ForkParser.class.getClassLoader(), brokenParser); -// try { -// ContentHandler output = new BodyContentHandler(); -// ParseContext context = new ParseContext(); -// parser.parse(stream, output, new Metadata(), context); -// fail("Expected TikaException caused by Error"); -// } catch (TikaException e) { -// assertEquals(TikaException.class, e.getCause().getClass()); -// assertEquals("Bang!", e.getCause().getMessage()); -// } - } - - /** - * If we supply a non serializable object on the ParseContext, - * check we get a helpful exception back - */ - @Test - public void testParserHandlingOfNonSerializable() throws Exception { - ForkParser parser = new ForkParser( - ForkParserIntegrationTest.class.getClassLoader(), - tika.getParser()); - - ParseContext context = new ParseContext(); - context.set(Detector.class, new Detector() { - public MediaType detect(InputStream input, Metadata metadata) { - return MediaType.OCTET_STREAM; - } - }); - - try { - ContentHandler output = new BodyContentHandler(); - InputStream stream = ForkParserIntegrationTest.class.getResourceAsStream( - "/test-documents/testTXT.txt"); - parser.parse(stream, output, new Metadata(), context); - fail("Should have blown up with a non serializable ParseContext"); - } catch(TikaException e) { - // Check the right details - assertNotNull(e.getCause()); - assertEquals(NotSerializableException.class, e.getCause().getClass()); - assertEquals("Unable to serialize ParseContext to pass to the Forked Parser", e.getMessage()); - } finally { - parser.close(); - } - } - - /** - * TIKA-832 - */ - @Test - public void testAttachingADebuggerOnTheForkedParserShouldWork() - throws Exception { - ParseContext context = new ParseContext(); - context.set(Parser.class, tika.getParser()); - - ForkParser parser = new ForkParser( - ForkParserIntegrationTest.class.getClassLoader(), - tika.getParser()); - parser.setJavaCommand(Arrays.asList("java", "-Xmx32m", "-Xdebug", - "-Xrunjdwp:transport=dt_socket,address=54321,server=y,suspend=n")); - try { - ContentHandler body = new BodyContentHandler(); - InputStream stream = ForkParserIntegrationTest.class.getResourceAsStream( - "/test-documents/testTXT.txt"); - parser.parse(stream, body, new Metadata(), context); - String content = body.toString(); - assertContains("Test d'indexation", content); - assertContains("http://www.apache.org", content); - } finally { - parser.close(); - } - } - - /** - * TIKA-808 - Ensure that parsing of our test PDFs work under - * the Fork Parser, to ensure that complex parsing behaves - */ - @Test - public void testForkedPDFParsing() throws Exception { - ForkParser parser = new ForkParser( - ForkParserIntegrationTest.class.getClassLoader(), - tika.getParser()); - try { - ContentHandler output = new BodyContentHandler(); - InputStream stream = ForkParserIntegrationTest.class.getResourceAsStream( - "/test-documents/testPDF.pdf"); - ParseContext context = new ParseContext(); - parser.parse(stream, output, new Metadata(), context); - - String content = output.toString(); - assertContains("Apache Tika", content); - assertContains("Tika - Content Analysis Toolkit", content); - assertContains("incubator", content); - assertContains("Apache Software Foundation", content); - } finally { - parser.close(); - } - } -} http://git-wip-us.apache.org/repos/asf/tika/blob/aa5f60d7/tika-parsers/src/test/java/org/apache/tika/parser/mock/MockParserTest.java ---------------------------------------------------------------------- diff --git a/tika-parsers/src/test/java/org/apache/tika/parser/mock/MockParserTest.java b/tika-parsers/src/test/java/org/apache/tika/parser/mock/MockParserTest.java deleted file mode 100644 index d222e68..0000000 --- a/tika-parsers/src/test/java/org/apache/tika/parser/mock/MockParserTest.java +++ /dev/null @@ -1,251 +0,0 @@ -package org.apache.tika.parser.mock; - -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import static java.nio.charset.StandardCharsets.UTF_8; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; -import static org.junit.Assert.fail; - -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.PrintStream; -import java.util.Date; - -import org.apache.tika.TikaTest; -import org.apache.tika.exception.TikaException; -import org.apache.tika.io.IOUtils; -import org.apache.tika.metadata.Metadata; -import org.apache.tika.parser.AutoDetectParser; -import org.apache.tika.parser.Parser; -import org.junit.Test; - -/** - * Somewhat bizarrely, we can't put the test of this test resource in tika-test-resources - * or else it will be called by every module that uses it. Um, Yossarian!!! - */ -public class MockParserTest extends TikaTest { - private final static String M = "/test-documents/mock/"; - private final static Parser PARSER = new AutoDetectParser(); - - @Override - public XMLResult getXML(String path, Metadata m) throws Exception { - //note that this is specific to MockParserTest with addition of M to the path! - InputStream is = getResourceAsStream(M+path); - try { - return super.getXML(is, PARSER, m); - } finally { - IOUtils.closeQuietly(is); - } - } - - @Test - public void testExample() throws Exception { - Metadata m = new Metadata(); - PrintStream out = System.out; - PrintStream err = System.err; - ByteArrayOutputStream outBos = new ByteArrayOutputStream(); - ByteArrayOutputStream errBos = new ByteArrayOutputStream(); - PrintStream tmpOut = new PrintStream(outBos, true, UTF_8.toString()); - PrintStream tmpErr = new PrintStream(errBos, true, UTF_8.toString()); - System.setOut(tmpOut); - System.setErr(tmpErr); - try { - assertThrowable("example.xml", m, IOException.class, "not another IOException"); - assertMockParser(m); - } finally { - System.setOut(out); - System.setErr(err); - } - String outString = new String(outBos.toByteArray(), UTF_8); - assertContains("writing to System.out", outString); - - String errString = new String(errBos.toByteArray(), UTF_8); - assertContains("writing to System.err", errString); - - } - - @Test - public void testNothingBad() throws Exception { - Metadata m = new Metadata(); - String content = getXML("nothing_bad.xml", m).xml; - assertEquals("Geoffrey Chaucer", m.get("author")); - assertContains("<p>And bathed every veyne in swich licour,</p>", content); - assertMockParser(m); - } - - @Test - public void testNullPointer() throws Exception { - Metadata m = new Metadata(); - assertThrowable("null_pointer.xml", m, NullPointerException.class, "another null pointer exception"); - assertMockParser(m); - } - - @Test - public void testNullPointerNoMsg() throws Exception { - Metadata m = new Metadata(); - assertThrowable("null_pointer_no_msg.xml", m, NullPointerException.class, null); - assertMockParser(m); - } - - - @Test - public void testSleep() throws Exception { - long start = new Date().getTime(); - Metadata m = new Metadata(); - String content = getXML("sleep.xml", m).xml; - assertMockParser(m); - long elapsed = new Date().getTime()-start; - //should sleep for at least 3000 - boolean enoughTimeHasElapsed = elapsed > 2000; - assertTrue("not enough time has not elapsed: "+elapsed, enoughTimeHasElapsed); - assertMockParser(m); - } - - @Test - public void testHeavyHang() throws Exception { - long start = new Date().getTime(); - Metadata m = new Metadata(); - - String content = getXML("heavy_hang.xml", m).xml; - assertMockParser(m); - long elapsed = new Date().getTime()-start; - //should sleep for at least 3000 - boolean enoughTimeHasElapsed = elapsed > 2000; - assertTrue("not enough time has elapsed: "+elapsed, enoughTimeHasElapsed); - assertMockParser(m); - } - - @Test - public void testFakeOOM() throws Exception { - Metadata m = new Metadata(); - assertThrowable("fake_oom.xml", m, OutOfMemoryError.class, "not another oom"); - assertMockParser(m); - } - - @Test - public void testRealOOM() throws Exception { - //Note: we're not actually testing the diff between fake and real oom - //i.e. by creating child process and setting different -Xmx or - //memory profiling. - Metadata m = new Metadata(); - assertThrowable("real_oom.xml", m, OutOfMemoryError.class, "Java heap space"); - assertMockParser(m); - } - - @Test - public void testInterruptibleSleep() { - //Without static initialization of the parser, it can take ~1 second after t.start() - //before the parser actually calls parse. This is - //just the time it takes to instantiate and call AutoDetectParser, do the detection, etc. - //This is not thread creation overhead. - ParserRunnable r = new ParserRunnable("sleep_interruptible.xml"); - Thread t = new Thread(r); - t.start(); - long start = new Date().getTime(); - try { - Thread.sleep(1000); - } catch (InterruptedException e) { - //swallow - } - - t.interrupt(); - - try { - t.join(10000); - } catch (InterruptedException e) { - //swallow - } - long elapsed = new Date().getTime()-start; - boolean shortEnough = elapsed < 2000;//the xml file specifies 3000 - assertTrue("elapsed (" + elapsed + " millis) was not short enough", shortEnough); - } - - @Test - public void testNonInterruptibleSleep() { - ParserRunnable r = new ParserRunnable("sleep_not_interruptible.xml"); - Thread t = new Thread(r); - t.start(); - long start = new Date().getTime(); - try { - //make sure that the thread has actually started - Thread.sleep(1000); - } catch (InterruptedException e) { - //swallow - } - t.interrupt(); - try { - t.join(20000); - } catch (InterruptedException e) { - //swallow - } - long elapsed = new Date().getTime()-start; - boolean longEnough = elapsed > 3000;//the xml file specifies 3000, this sleeps 1000 - assertTrue("elapsed ("+elapsed+" millis) was not long enough", longEnough); - } - - private class ParserRunnable implements Runnable { - private final String path; - ParserRunnable(String path) { - this.path = path; - } - @Override - public void run() { - Metadata m = new Metadata(); - try { - getXML(path, m); - } catch (Exception e) { - throw new RuntimeException(e); - } finally { - assertMockParser(m); - } - } - } - - private void assertThrowable(String path, Metadata m, Class<? extends Throwable> expected, String message) { - - try { - getXML(path, m); - } catch (Throwable t) { - //if this is a throwable wrapped in a TikaException, use the cause - if (t instanceof TikaException && t.getCause() != null) { - t = t.getCause(); - } - if (! (t.getClass().isAssignableFrom(expected))){ - fail(t.getClass() +" is not assignable from "+expected); - } - if (message != null) { - assertEquals(message, t.getMessage()); - } - } - } - - private void assertMockParser(Metadata m) { - String[] parsers = m.getValues("X-Parsed-By"); - //make sure that it was actually parsed by mock. - boolean parsedByMock = false; - for (String parser : parsers) { - if (parser.equals("org.apache.tika.parser.mock.MockParser")) { - parsedByMock = true; - break; - } - } - assertTrue("mock parser should have been called", parsedByMock); - } -} http://git-wip-us.apache.org/repos/asf/tika/blob/aa5f60d7/tika-parsers/src/test/java/org/apache/tika/parser/pkg/PackageTest.java ---------------------------------------------------------------------- diff --git a/tika-parsers/src/test/java/org/apache/tika/parser/pkg/PackageTest.java b/tika-parsers/src/test/java/org/apache/tika/parser/pkg/PackageTest.java deleted file mode 100644 index 26d263b..0000000 --- a/tika-parsers/src/test/java/org/apache/tika/parser/pkg/PackageTest.java +++ /dev/null @@ -1,335 +0,0 @@ -package org.apache.tika.parser.pkg; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; - -import java.io.InputStream; - -import org.apache.tika.TikaTest; -import org.apache.tika.metadata.Metadata; -import org.apache.tika.mime.MediaType; -import org.apache.tika.parser.AutoDetectParser; -import org.apache.tika.parser.ParseContext; -import org.apache.tika.parser.Parser; -import org.apache.tika.sax.BodyContentHandler; -import org.junit.Before; -import org.junit.Test; -import org.xml.sax.ContentHandler; - -public class PackageTest extends TikaTest { - - private static final MediaType TYPE_7ZIP = MediaType.application("x-7z-compressed"); - - private ParseContext recursingContext; - private Parser autoDetectParser; - - @Before - public void setUp() throws Exception { - - autoDetectParser = new AutoDetectParser(); - recursingContext = new ParseContext(); - recursingContext.set(Parser.class, autoDetectParser); - } - - @Test - public void testZlibParsing() throws Exception { - Parser parser = new AutoDetectParser(); // Should auto-detect! - ContentHandler handler = new BodyContentHandler(); - Metadata metadata = new Metadata(); - - try (InputStream stream = PackageTest.class.getResourceAsStream( - "/test-documents/testTXT.zlib")) { - parser.parse(stream, handler, metadata, recursingContext); - } - - assertEquals("application/zlib", metadata.get(Metadata.CONTENT_TYPE)); - String content = handler.toString(); - assertContains("Test d'indexation de Txt", content); - assertContains("http://www.apache.org", content); - } - - - @Test - public void testArParsing() throws Exception { - Parser parser = new AutoDetectParser(); - - ContentHandler handler = new BodyContentHandler(); - Metadata metadata = new Metadata(); - - try (InputStream stream = PackageTest.class.getResourceAsStream( - "/test-documents/testARofText.ar")) { - parser.parse(stream, handler, metadata, recursingContext); - } - - assertEquals("application/x-archive", - metadata.get(Metadata.CONTENT_TYPE)); - String content = handler.toString(); - assertContains("testTXT.txt", content); - assertContains("Test d'indexation de Txt", content); - assertContains("http://www.apache.org", content); - - try (InputStream stream = PackageTest.class.getResourceAsStream( - "/test-documents/testARofSND.ar")) { - parser.parse(stream, handler, metadata, recursingContext); - } - - assertEquals("application/x-archive", - metadata.get(Metadata.CONTENT_TYPE)); - content = handler.toString(); - assertContains("testAU.au", content); - } - - @Test - public void testBzip2Parsing() throws Exception { - Parser parser = new AutoDetectParser(); // Should auto-detect! - ContentHandler handler = new BodyContentHandler(); - Metadata metadata = new Metadata(); - - try (InputStream stream = PackageTest.class.getResourceAsStream( - "/test-documents/test-documents.tbz2")) { - parser.parse(stream, handler, metadata, recursingContext); - } - - assertEquals("application/x-bzip2", metadata.get(Metadata.CONTENT_TYPE)); - String content = handler.toString(); - assertContains("test-documents/testEXCEL.xls", content); - assertContains("Sample Excel Worksheet", content); - assertContains("test-documents/testHTML.html", content); - assertContains("Test Indexation Html", content); - assertContains("test-documents/testOpenOffice2.odt", content); - assertContains("This is a sample Open Office document", content); - assertContains("test-documents/testPDF.pdf", content); - assertContains("Apache Tika", content); - assertContains("test-documents/testPPT.ppt", content); - assertContains("Sample Powerpoint Slide", content); - assertContains("test-documents/testRTF.rtf", content); - assertContains("indexation Word", content); - assertContains("test-documents/testTXT.txt", content); - assertContains("Test d'indexation de Txt", content); - assertContains("test-documents/testWORD.doc", content); - assertContains("This is a sample Microsoft Word Document", content); - assertContains("test-documents/testXML.xml", content); - assertContains("Rida Benjelloun", content); - } - - @Test - public void testCompressParsing() throws Exception { - Parser parser = new AutoDetectParser(); // Should auto-detect! - ContentHandler handler = new BodyContentHandler(); - Metadata metadata = new Metadata(); - - InputStream stream = PackageTest.class.getResourceAsStream( - "/test-documents/test-documents.tar.Z"); - try { - parser.parse(stream, handler, metadata, recursingContext); - } finally { - stream.close(); - } - - assertEquals("application/x-compress", metadata.get(Metadata.CONTENT_TYPE)); - String content = handler.toString(); - assertContains("test-documents/testEXCEL.xls", content); - assertContains("Sample Excel Worksheet", content); - assertContains("test-documents/testHTML.html", content); - assertContains("Test Indexation Html", content); - assertContains("test-documents/testOpenOffice2.odt", content); - assertContains("This is a sample Open Office document", content); - assertContains("test-documents/testPDF.pdf", content); - assertContains("Apache Tika", content); - assertContains("test-documents/testPPT.ppt", content); - assertContains("Sample Powerpoint Slide", content); - assertContains("test-documents/testRTF.rtf", content); - assertContains("indexation Word", content); - assertContains("test-documents/testTXT.txt", content); - assertContains("Test d'indexation de Txt", content); - assertContains("test-documents/testWORD.doc", content); - assertContains("This is a sample Microsoft Word Document", content); - assertContains("test-documents/testXML.xml", content); - assertContains("Rida Benjelloun", content); - } - - @Test - public void testGzipParsing() throws Exception { - Parser parser = new AutoDetectParser(); // Should auto-detect! - ContentHandler handler = new BodyContentHandler(); - Metadata metadata = new Metadata(); - - try (InputStream stream = PackageTest.class.getResourceAsStream( - "/test-documents/test-documents.tgz")) { - parser.parse(stream, handler, metadata, recursingContext); - } - - assertEquals("application/gzip", metadata.get(Metadata.CONTENT_TYPE)); - String content = handler.toString(); - assertContains("test-documents/testEXCEL.xls", content); - assertContains("Sample Excel Worksheet", content); - assertContains("test-documents/testHTML.html", content); - assertContains("Test Indexation Html", content); - assertContains("test-documents/testOpenOffice2.odt", content); - assertContains("This is a sample Open Office document", content); - assertContains("test-documents/testPDF.pdf", content); - assertContains("Apache Tika", content); - assertContains("test-documents/testPPT.ppt", content); - assertContains("Sample Powerpoint Slide", content); - assertContains("test-documents/testRTF.rtf", content); - assertContains("indexation Word", content); - assertContains("test-documents/testTXT.txt", content); - assertContains("Test d'indexation de Txt", content); - assertContains("test-documents/testWORD.doc", content); - assertContains("This is a sample Microsoft Word Document", content); - assertContains("test-documents/testXML.xml", content); - assertContains("Rida Benjelloun", content); - } - - @Test - public void testRarParsing() throws Exception { - Parser parser = new AutoDetectParser(); // Should auto-detect! - ContentHandler handler = new BodyContentHandler(); - Metadata metadata = new Metadata(); - - try (InputStream stream = PackageTest.class.getResourceAsStream( - "/test-documents/test-documents.rar")) { - parser.parse(stream, handler, metadata, recursingContext); - } - - assertEquals("application/x-rar-compressed", metadata.get(Metadata.CONTENT_TYPE)); - String content = handler.toString(); - assertContains("test-documents/testEXCEL.xls", content); - assertContains("Sample Excel Worksheet", content); - assertContains("test-documents/testHTML.html", content); - assertContains("Test Indexation Html", content); - assertContains("test-documents/testOpenOffice2.odt", content); - assertContains("This is a sample Open Office document", content); - assertContains("test-documents/testPDF.pdf", content); - assertContains("Apache Tika", content); - assertContains("test-documents/testPPT.ppt", content); - assertContains("Sample Powerpoint Slide", content); - assertContains("test-documents/testRTF.rtf", content); - assertContains("indexation Word", content); - assertContains("test-documents/testTXT.txt", content); - assertContains("Test d'indexation de Txt", content); - assertContains("test-documents/testWORD.doc", content); - assertContains("This is a sample Microsoft Word Document", content); - assertContains("test-documents/testXML.xml", content); - assertContains("Rida Benjelloun", content); - } - - @Test - public void test7ZParsing() throws Exception { - Parser parser = new AutoDetectParser(); // Should auto-detect! - ContentHandler handler = new BodyContentHandler(); - Metadata metadata = new Metadata(); - - // Ensure 7zip is a parsable format - assertTrue("No 7zip parser found", - parser.getSupportedTypes(recursingContext).contains(TYPE_7ZIP)); - - // Parse - try (InputStream stream = PackageTest.class.getResourceAsStream( - "/test-documents/test-documents.7z")) { - parser.parse(stream, handler, metadata, recursingContext); - } - - assertEquals(TYPE_7ZIP.toString(), metadata.get(Metadata.CONTENT_TYPE)); - String content = handler.toString(); - assertContains("test-documents/testEXCEL.xls", content); - assertContains("Sample Excel Worksheet", content); - assertContains("test-documents/testHTML.html", content); - assertContains("Test Indexation Html", content); - assertContains("test-documents/testOpenOffice2.odt", content); - assertContains("This is a sample Open Office document", content); - assertContains("test-documents/testPDF.pdf", content); - assertContains("Apache Tika", content); - assertContains("test-documents/testPPT.ppt", content); - assertContains("Sample Powerpoint Slide", content); - assertContains("test-documents/testRTF.rtf", content); - assertContains("indexation Word", content); - assertContains("test-documents/testTXT.txt", content); - assertContains("Test d'indexation de Txt", content); - assertContains("test-documents/testWORD.doc", content); - assertContains("This is a sample Microsoft Word Document", content); - assertContains("test-documents/testXML.xml", content); - assertContains("Rida Benjelloun", content); - } - @Test - public void testTarParsing() throws Exception { - Parser parser = new AutoDetectParser(); // Should auto-detect! - ContentHandler handler = new BodyContentHandler(); - Metadata metadata = new Metadata(); - - try (InputStream stream = PackageTest.class.getResourceAsStream( - "/test-documents/test-documents.tar")) { - parser.parse(stream, handler, metadata, recursingContext); - } - - assertEquals("application/x-tar", metadata.get(Metadata.CONTENT_TYPE)); - String content = handler.toString(); - assertContains("test-documents/testEXCEL.xls", content); - assertContains("Sample Excel Worksheet", content); - assertContains("test-documents/testHTML.html", content); - assertContains("Test Indexation Html", content); - assertContains("test-documents/testOpenOffice2.odt", content); - assertContains("This is a sample Open Office document", content); - assertContains("test-documents/testPDF.pdf", content); - assertContains("Apache Tika", content); - assertContains("test-documents/testPPT.ppt", content); - assertContains("Sample Powerpoint Slide", content); - assertContains("test-documents/testRTF.rtf", content); - assertContains("indexation Word", content); - assertContains("test-documents/testTXT.txt", content); - assertContains("Test d'indexation de Txt", content); - assertContains("test-documents/testWORD.doc", content); - assertContains("This is a sample Microsoft Word Document", content); - assertContains("test-documents/testXML.xml", content); - assertContains("Rida Benjelloun", content); - } - - @Test - public void testZipParsing() throws Exception { - Parser parser = new AutoDetectParser(); // Should auto-detect! - ContentHandler handler = new BodyContentHandler(); - Metadata metadata = new Metadata(); - - try (InputStream stream = PackageTest.class.getResourceAsStream( - "/test-documents/test-documents.zip")) { - parser.parse(stream, handler, metadata, recursingContext); - } - - assertEquals("application/zip", metadata.get(Metadata.CONTENT_TYPE)); - String content = handler.toString(); - assertContains("testEXCEL.xls", content); - assertContains("Sample Excel Worksheet", content); - assertContains("testHTML.html", content); - assertContains("Test Indexation Html", content); - assertContains("testOpenOffice2.odt", content); - assertContains("This is a sample Open Office document", content); - assertContains("testPDF.pdf", content); - assertContains("Apache Tika", content); - assertContains("testPPT.ppt", content); - assertContains("Sample Powerpoint Slide", content); - assertContains("testRTF.rtf", content); - assertContains("indexation Word", content); - assertContains("testTXT.txt", content); - assertContains("Test d'indexation de Txt", content); - assertContains("testWORD.doc", content); - assertContains("This is a sample Microsoft Word Document", content); - assertContains("testXML.xml", content); - assertContains("Rida Benjelloun", content); - } - - @Test - public void testSvgzParsing() throws Exception { - Parser parser = new AutoDetectParser(); // Should auto-detect! - ContentHandler handler = new BodyContentHandler(); - Metadata metadata = new Metadata(); - - try (InputStream stream = PackageTest.class.getResourceAsStream( - "/test-documents/testSVG.svgz")) { - parser.parse(stream, handler, metadata, recursingContext); - } - - assertEquals("application/gzip", metadata.get(Metadata.CONTENT_TYPE)); - String content = handler.toString(); - assertContains("Test SVG image", content); - } -} http://git-wip-us.apache.org/repos/asf/tika/blob/aa5f60d7/tika-parsers/src/test/java/org/apache/tika/sax/PhoneExtractingContentHandlerTest.java ---------------------------------------------------------------------- diff --git a/tika-parsers/src/test/java/org/apache/tika/sax/PhoneExtractingContentHandlerTest.java b/tika-parsers/src/test/java/org/apache/tika/sax/PhoneExtractingContentHandlerTest.java deleted file mode 100644 index d30759a..0000000 --- a/tika-parsers/src/test/java/org/apache/tika/sax/PhoneExtractingContentHandlerTest.java +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.tika.sax; - -import org.apache.tika.metadata.Metadata; -import org.apache.tika.parser.AutoDetectParser; -import org.apache.tika.parser.ParseContext; -import org.apache.tika.parser.Parser; -import org.junit.Test; - -import java.io.InputStream; - -import static org.apache.tika.TikaTest.assertContains; - -/** - * Test class for the {@link org.apache.tika.sax.PhoneExtractingContentHandler} - * class. This demonstrates how to parse a document and retrieve any phone numbers - * found within. - * - * The phone numbers are added to a multivalued Metadata object under the key, "phonenumbers". - * You can get an array of phone numbers by calling metadata.getValues("phonenumber"). - */ -public class PhoneExtractingContentHandlerTest { - @Test - public void testExtractPhoneNumbers() throws Exception { - Parser parser = new AutoDetectParser(); - Metadata metadata = new Metadata(); - // The PhoneExtractingContentHandler will examine any characters for phone numbers before passing them - // to the underlying Handler. - PhoneExtractingContentHandler handler = new PhoneExtractingContentHandler(new BodyContentHandler(), metadata); - try (InputStream stream = PhoneExtractingContentHandlerTest.class.getResourceAsStream("/test-documents/testPhoneNumberExtractor.odt")) { - parser.parse(stream, handler, metadata, new ParseContext()); - } - String[] phoneNumbers = metadata.getValues("phonenumbers"); - assertContains("9498888888", phoneNumbers[0]); - assertContains("9497777777", phoneNumbers[1]); - assertContains("9496666666", phoneNumbers[2]); - assertContains("9495555555", phoneNumbers[3]); - assertContains("4193404645", phoneNumbers[4]); - assertContains("9044687081", phoneNumbers[5]); - assertContains("2604094811", phoneNumbers[6]); - } -} http://git-wip-us.apache.org/repos/asf/tika/blob/aa5f60d7/tika-parsers/src/test/java/org/apache/tika/utils/ServiceLoaderUtilsTest.java ---------------------------------------------------------------------- diff --git a/tika-parsers/src/test/java/org/apache/tika/utils/ServiceLoaderUtilsTest.java b/tika-parsers/src/test/java/org/apache/tika/utils/ServiceLoaderUtilsTest.java deleted file mode 100644 index 62660c8..0000000 --- a/tika-parsers/src/test/java/org/apache/tika/utils/ServiceLoaderUtilsTest.java +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.tika.utils; - -import static org.junit.Assert.assertNotEquals; -import static org.junit.Assert.assertTrue; - -import org.apache.tika.TikaTest; -import org.apache.tika.parser.DefaultParser; -import org.apache.tika.parser.Parser; -import org.junit.Test; - -public class ServiceLoaderUtilsTest extends TikaTest { - @Test - public void testOrdering() throws Exception { - //make sure that non Tika parsers come last - //which means that they'll overwrite Tika parsers and - //be preferred. - DefaultParser defaultParser = new DefaultParser(); - int vorbisIndex = -1; - int fictIndex = -1; - int dcxmlIndex = -1; - int i = 0; - for (Parser p : defaultParser.getAllComponentParsers()) { - if ("class org.gagravarr.tika.VorbisParser".equals(p.getClass().toString())) { - vorbisIndex = i; - } - if ("class org.apache.tika.parser.xml.FictionBookParser".equals(p.getClass().toString())) { - fictIndex = i; - } - if ("class org.apache.tika.parser.xml.DcXMLParser".equals(p.getClass().toString())) { - dcxmlIndex = i; - } - i++; - } - - assertNotEquals(vorbisIndex, fictIndex); - assertNotEquals(fictIndex, dcxmlIndex); - assertTrue(vorbisIndex > fictIndex); - assertTrue(fictIndex > dcxmlIndex); - } -} http://git-wip-us.apache.org/repos/asf/tika/blob/aa5f60d7/tika-server/pom.xml ---------------------------------------------------------------------- diff --git a/tika-server/pom.xml b/tika-server/pom.xml index fa55b55..7d118cb 100644 --- a/tika-server/pom.xml +++ b/tika-server/pom.xml @@ -131,7 +131,13 @@ <type>test-jar</type> <scope>test</scope> </dependency> - + <dependency> + <groupId>org.apache.tika</groupId> + <artifactId>tika-test-resources</artifactId> + <version>${project.version}</version> + <type>test-jar</type> + <scope>test</scope> + </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> http://git-wip-us.apache.org/repos/asf/tika/blob/aa5f60d7/tika-server/src/main/java/org/apache/tika/server/TikaServerCli.java ---------------------------------------------------------------------- diff --git a/tika-server/src/main/java/org/apache/tika/server/TikaServerCli.java b/tika-server/src/main/java/org/apache/tika/server/TikaServerCli.java index 4804398..aafde60 100644 --- a/tika-server/src/main/java/org/apache/tika/server/TikaServerCli.java +++ b/tika-server/src/main/java/org/apache/tika/server/TikaServerCli.java @@ -39,7 +39,7 @@ import org.apache.cxf.rs.security.cors.CrossOriginResourceSharingFilter; import org.apache.tika.Tika; import org.apache.tika.config.TikaConfig; import org.apache.tika.parser.DigestingParser; -import org.apache.tika.parser.utils.CommonsDigester; +import org.apache.tika.parser.digesting.CommonsDigester; import org.apache.tika.server.resource.DetectorResource; import org.apache.tika.server.resource.LanguageResource; import org.apache.tika.server.resource.MetadataResource; http://git-wip-us.apache.org/repos/asf/tika/blob/aa5f60d7/tika-server/src/test/java/org/apache/tika/server/CXFTestBase.java ---------------------------------------------------------------------- diff --git a/tika-server/src/test/java/org/apache/tika/server/CXFTestBase.java b/tika-server/src/test/java/org/apache/tika/server/CXFTestBase.java index 9dab196..0eb3cc3 100644 --- a/tika-server/src/test/java/org/apache/tika/server/CXFTestBase.java +++ b/tika-server/src/test/java/org/apache/tika/server/CXFTestBase.java @@ -18,8 +18,6 @@ package org.apache.tika.server; import static java.nio.charset.StandardCharsets.UTF_8; -import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertTrue; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; @@ -41,14 +39,15 @@ import org.apache.cxf.binding.BindingFactoryManager; import org.apache.cxf.endpoint.Server; import org.apache.cxf.jaxrs.JAXRSBindingFactory; import org.apache.cxf.jaxrs.JAXRSServerFactoryBean; +import org.apache.tika.TikaTest; import org.apache.tika.config.TikaConfig; -import org.apache.tika.parser.utils.CommonsDigester; +import org.apache.tika.parser.digesting.CommonsDigester; import org.apache.tika.server.resource.TikaResource; import org.apache.tika.server.resource.UnpackerResource; import org.junit.After; import org.junit.Before; -public abstract class CXFTestBase { +public abstract class CXFTestBase extends TikaTest { private final static int DIGESTER_READ_LIMIT = 20*1024*1024; protected static final String endPoint = @@ -56,13 +55,6 @@ public abstract class CXFTestBase { protected Server server; private TikaConfig tika; - public static void assertContains(String needle, String haystack) { - assertTrue(needle + " not found in:\n" + haystack, haystack.contains(needle)); - } - - public static void assertNotFound(String needle, String haystack) { - assertFalse(needle + " unexpectedly found in:\n" + haystack, haystack.contains(needle)); - } protected static InputStream copy(InputStream in, int remaining) throws IOException { ByteArrayOutputStream out = new ByteArrayOutputStream(); http://git-wip-us.apache.org/repos/asf/tika/blob/aa5f60d7/tika-server/src/test/java/org/apache/tika/server/DetectorResourceTest.java ---------------------------------------------------------------------- diff --git a/tika-server/src/test/java/org/apache/tika/server/DetectorResourceTest.java b/tika-server/src/test/java/org/apache/tika/server/DetectorResourceTest.java index 3d4dc1f..2ec2682 100644 --- a/tika-server/src/test/java/org/apache/tika/server/DetectorResourceTest.java +++ b/tika-server/src/test/java/org/apache/tika/server/DetectorResourceTest.java @@ -68,7 +68,7 @@ public class DetectorResourceTest extends CXFTestBase { .accept("*/*") .header("Content-Disposition", "attachment; filename=" + FOO_CSV) - .put(ClassLoader.getSystemResourceAsStream(FOO_CSV)); + .put(getTestDocumentAsStream(FOO_CSV)); assertNotNull(response); String readMime = getStringFromInputStream((InputStream) response .getEntity()); @@ -85,7 +85,7 @@ public class DetectorResourceTest extends CXFTestBase { .accept("*/*") .header("Content-Disposition", "attachment; filename=" + CDEC_CSV_NO_EXT) - .put(ClassLoader.getSystemResourceAsStream(CDEC_CSV_NO_EXT)); + .put(getTestDocumentAsStream(CDEC_CSV_NO_EXT)); assertNotNull(response); String readMime = getStringFromInputStream((InputStream) response .getEntity()); @@ -98,7 +98,7 @@ public class DetectorResourceTest extends CXFTestBase { .accept("*/*") .header("Content-Disposition", "attachment; filename=" + CDEC_CSV_NO_EXT + ".csv") - .put(ClassLoader.getSystemResourceAsStream(CDEC_CSV_NO_EXT)); + .put(getTestDocumentAsStream(CDEC_CSV_NO_EXT)); assertNotNull(response); readMime = getStringFromInputStream((InputStream) response.getEntity()); assertEquals("text/csv", readMime); http://git-wip-us.apache.org/repos/asf/tika/blob/aa5f60d7/tika-server/src/test/java/org/apache/tika/server/LanguageResourceTest.java ---------------------------------------------------------------------- diff --git a/tika-server/src/test/java/org/apache/tika/server/LanguageResourceTest.java b/tika-server/src/test/java/org/apache/tika/server/LanguageResourceTest.java index c3ca475..c2c4397 100644 --- a/tika-server/src/test/java/org/apache/tika/server/LanguageResourceTest.java +++ b/tika-server/src/test/java/org/apache/tika/server/LanguageResourceTest.java @@ -87,7 +87,7 @@ public class LanguageResourceTest extends CXFTestBase { String url = endPoint + LANG_STREAM_PATH; Response response = WebClient.create(url).type("text/plain") .accept("text/plain") - .put(ClassLoader.getSystemResourceAsStream("english.txt")); + .put(getTestDocumentAsStream("english.txt")); assertNotNull(response); String readLang = getStringFromInputStream((InputStream) response .getEntity()); @@ -99,7 +99,7 @@ public class LanguageResourceTest extends CXFTestBase { String url = endPoint + LANG_STREAM_PATH; Response response = WebClient.create(url).type("text/plain") .accept("text/plain") - .put(ClassLoader.getSystemResourceAsStream("french.txt")); + .put(getTestDocumentAsStream("french.txt")); assertNotNull(response); String readLang = getStringFromInputStream((InputStream) response .getEntity()); http://git-wip-us.apache.org/repos/asf/tika/blob/aa5f60d7/tika-server/src/test/java/org/apache/tika/server/MetadataResourceTest.java ---------------------------------------------------------------------- diff --git a/tika-server/src/test/java/org/apache/tika/server/MetadataResourceTest.java b/tika-server/src/test/java/org/apache/tika/server/MetadataResourceTest.java index 7cd5f1d..5e4c0d0 100644 --- a/tika-server/src/test/java/org/apache/tika/server/MetadataResourceTest.java +++ b/tika-server/src/test/java/org/apache/tika/server/MetadataResourceTest.java @@ -73,8 +73,7 @@ public class MetadataResourceTest extends CXFTestBase { .create(endPoint + META_PATH) .type("application/msword") .accept("text/csv") - .put(ClassLoader - .getSystemResourceAsStream(TikaResourceTest.TEST_DOC)); + .put(getTestDocumentAsStream(TikaResourceTest.TEST_DOC)); Reader reader = new InputStreamReader((InputStream) response.getEntity(), UTF_8); @@ -100,8 +99,7 @@ public class MetadataResourceTest extends CXFTestBase { .create(endPoint + META_PATH) .type("application/vnd.ms-excel") .accept("text/csv") - .put(ClassLoader - .getSystemResourceAsStream(TikaResourceTest.TEST_PASSWORD_PROTECTED)); + .put(getTestDocumentAsStream(TikaResourceTest.TEST_PASSWORD_PROTECTED)); // Won't work, no password given assertEquals(500, response.getStatus()); @@ -112,7 +110,7 @@ public class MetadataResourceTest extends CXFTestBase { .type("application/vnd.ms-excel") .accept("text/csv") .header("Password", "wrong password") - .put(ClassLoader.getSystemResourceAsStream(TikaResourceTest.TEST_PASSWORD_PROTECTED)); + .put(getTestDocumentAsStream(TikaResourceTest.TEST_PASSWORD_PROTECTED)); assertEquals(500, response.getStatus()); @@ -122,7 +120,7 @@ public class MetadataResourceTest extends CXFTestBase { .type("application/vnd.ms-excel") .accept("text/csv") .header("Password", "password") - .put(ClassLoader.getSystemResourceAsStream(TikaResourceTest.TEST_PASSWORD_PROTECTED)); + .put(getTestDocumentAsStream(TikaResourceTest.TEST_PASSWORD_PROTECTED)); // Will work assertEquals(200, response.getStatus()); @@ -149,8 +147,7 @@ public class MetadataResourceTest extends CXFTestBase { .create(endPoint + META_PATH) .type("application/msword") .accept("application/json") - .put(ClassLoader - .getSystemResourceAsStream(TikaResourceTest.TEST_DOC)); + .put(getTestDocumentAsStream(TikaResourceTest.TEST_DOC)); Reader reader = new InputStreamReader((InputStream) response.getEntity(), UTF_8); @@ -165,8 +162,7 @@ public class MetadataResourceTest extends CXFTestBase { .create(endPoint + META_PATH) .type("application/msword") .accept("application/rdf+xml") - .put(ClassLoader - .getSystemResourceAsStream(TikaResourceTest.TEST_DOC)); + .put(getTestDocumentAsStream(TikaResourceTest.TEST_DOC)); String result = IOUtils.readStringFromStream((InputStream) response.getEntity()); assertContains("<rdf:li>Maxim Valyanskiy</rdf:li>", result); @@ -176,14 +172,14 @@ public class MetadataResourceTest extends CXFTestBase { @Test public void testGetField_XXX_NotFound() throws Exception { Response response = WebClient.create(endPoint + META_PATH + "/xxx").type("application/msword") - .accept(MediaType.APPLICATION_JSON).put(ClassLoader.getSystemResourceAsStream(TikaResourceTest.TEST_DOC)); + .accept(MediaType.APPLICATION_JSON).put(getTestDocumentAsStream(TikaResourceTest.TEST_DOC)); Assert.assertEquals(Response.Status.NOT_FOUND.getStatusCode(), response.getStatus()); } @Test public void testGetField_Author_TEXT_Partial_BAD_REQUEST() throws Exception { - InputStream stream = ClassLoader.getSystemResourceAsStream(TikaResourceTest.TEST_DOC); + InputStream stream = getTestDocumentAsStream(TikaResourceTest.TEST_DOC); Response response = WebClient.create(endPoint + META_PATH + "/Author").type("application/msword") .accept(MediaType.TEXT_PLAIN).put(copy(stream, 8000)); @@ -193,7 +189,7 @@ public class MetadataResourceTest extends CXFTestBase { @Test public void testGetField_Author_TEXT_Partial_Found() throws Exception { - InputStream stream = ClassLoader.getSystemResourceAsStream(TikaResourceTest.TEST_DOC); + InputStream stream = getTestDocumentAsStream(TikaResourceTest.TEST_DOC); Response response = WebClient.create(endPoint + META_PATH + "/Author").type("application/msword") .accept(MediaType.TEXT_PLAIN).put(copy(stream, 12000)); @@ -205,7 +201,7 @@ public class MetadataResourceTest extends CXFTestBase { @Test public void testGetField_Author_JSON_Partial_Found() throws Exception { - InputStream stream = ClassLoader.getSystemResourceAsStream(TikaResourceTest.TEST_DOC); + InputStream stream = getTestDocumentAsStream(TikaResourceTest.TEST_DOC); Response response = WebClient.create(endPoint + META_PATH + "/Author").type("application/msword") .accept(MediaType.APPLICATION_JSON).put(copy(stream, 12000)); @@ -219,7 +215,7 @@ public class MetadataResourceTest extends CXFTestBase { @Test public void testGetField_Author_XMP_Partial_Found() throws Exception { - InputStream stream = ClassLoader.getSystemResourceAsStream(TikaResourceTest.TEST_DOC); + InputStream stream = getTestDocumentAsStream(TikaResourceTest.TEST_DOC); Response response = WebClient.create(endPoint + META_PATH + "/dc:creator").type("application/msword") .accept("application/rdf+xml").put(copy(stream, 12000)); http://git-wip-us.apache.org/repos/asf/tika/blob/aa5f60d7/tika-server/src/test/java/org/apache/tika/server/RecursiveMetadataResourceTest.java ---------------------------------------------------------------------- diff --git a/tika-server/src/test/java/org/apache/tika/server/RecursiveMetadataResourceTest.java b/tika-server/src/test/java/org/apache/tika/server/RecursiveMetadataResourceTest.java index 56910a9..9d41ff1 100644 --- a/tika-server/src/test/java/org/apache/tika/server/RecursiveMetadataResourceTest.java +++ b/tika-server/src/test/java/org/apache/tika/server/RecursiveMetadataResourceTest.java @@ -73,8 +73,7 @@ public class RecursiveMetadataResourceTest extends CXFTestBase { Response response = WebClient .create(endPoint + META_PATH) .accept("application/json") - .put(ClassLoader - .getSystemResourceAsStream(TEST_RECURSIVE_DOC)); + .put(getTestDocumentAsStream(TEST_RECURSIVE_DOC)); Reader reader = new InputStreamReader((InputStream) response.getEntity(), UTF_8); List<Metadata> metadataList = JsonMetadataList.fromJson(reader); @@ -92,8 +91,7 @@ public class RecursiveMetadataResourceTest extends CXFTestBase { .create(endPoint + META_PATH) .type("application/vnd.ms-excel") .accept("application/json") - .put(ClassLoader - .getSystemResourceAsStream(TikaResourceTest.TEST_PASSWORD_PROTECTED)); + .put(getTestDocumentAsStream(TikaResourceTest.TEST_PASSWORD_PROTECTED)); // Won't work, no password given assertEquals(500, response.getStatus()); @@ -104,7 +102,7 @@ public class RecursiveMetadataResourceTest extends CXFTestBase { .type("application/vnd.ms-excel") .accept("application/json") .header("Password", "password") - .put(ClassLoader.getSystemResourceAsStream(TikaResourceTest.TEST_PASSWORD_PROTECTED)); + .put(getTestDocumentAsStream(TikaResourceTest.TEST_PASSWORD_PROTECTED)); // Will work assertEquals(200, response.getStatus()); @@ -122,8 +120,7 @@ public class RecursiveMetadataResourceTest extends CXFTestBase { Response response = WebClient .create(endPoint+META_PATH) .accept("application/json") - .put(ClassLoader - .getSystemResourceAsStream(TEST_RECURSIVE_DOC)); + .put(getTestDocumentAsStream(TEST_RECURSIVE_DOC)); Reader reader = new InputStreamReader((InputStream) response.getEntity(), UTF_8); List<Metadata> metadataList = JsonMetadataList.fromJson(reader); @@ -135,8 +132,7 @@ public class RecursiveMetadataResourceTest extends CXFTestBase { response = WebClient .create(endPoint + META_PATH + SLASH) .accept("application/json") - .put(ClassLoader - .getSystemResourceAsStream(TEST_RECURSIVE_DOC)); + .put(getTestDocumentAsStream(TEST_RECURSIVE_DOC)); reader = new InputStreamReader((InputStream) response.getEntity(), UTF_8); metadataList = JsonMetadataList.fromJson(reader); assertEquals(12, metadataList.size()); @@ -147,8 +143,7 @@ public class RecursiveMetadataResourceTest extends CXFTestBase { response = WebClient .create(endPoint + META_PATH + UNPARSEABLE_PATH) .accept("application/json") - .put(ClassLoader - .getSystemResourceAsStream(TEST_RECURSIVE_DOC)); + .put(getTestDocumentAsStream(TEST_RECURSIVE_DOC)); reader = new InputStreamReader((InputStream) response.getEntity(), UTF_8); metadataList = JsonMetadataList.fromJson(reader); assertEquals(12, metadataList.size()); @@ -159,8 +154,7 @@ public class RecursiveMetadataResourceTest extends CXFTestBase { response = WebClient .create(endPoint + META_PATH + XML_PATH) .accept("application/json") - .put(ClassLoader - .getSystemResourceAsStream(TEST_RECURSIVE_DOC)); + .put(getTestDocumentAsStream(TEST_RECURSIVE_DOC)); reader = new InputStreamReader((InputStream) response.getEntity(), UTF_8); metadataList = JsonMetadataList.fromJson(reader); assertEquals(12, metadataList.size()); @@ -171,8 +165,7 @@ public class RecursiveMetadataResourceTest extends CXFTestBase { response = WebClient .create(endPoint + META_PATH + TEXT_PATH) .accept("application/json") - .put(ClassLoader - .getSystemResourceAsStream(TEST_RECURSIVE_DOC)); + .put(getTestDocumentAsStream(TEST_RECURSIVE_DOC)); reader = new InputStreamReader((InputStream) response.getEntity(), UTF_8); metadataList = JsonMetadataList.fromJson(reader); assertEquals(12, metadataList.size()); @@ -183,8 +176,7 @@ public class RecursiveMetadataResourceTest extends CXFTestBase { response = WebClient .create(endPoint + META_PATH + IGNORE_PATH) .accept("application/json") - .put(ClassLoader - .getSystemResourceAsStream(TEST_RECURSIVE_DOC)); + .put(getTestDocumentAsStream(TEST_RECURSIVE_DOC)); reader = new InputStreamReader((InputStream) response.getEntity(), UTF_8); metadataList = JsonMetadataList.fromJson(reader); assertEquals(12, metadataList.size()); @@ -198,7 +190,7 @@ public class RecursiveMetadataResourceTest extends CXFTestBase { Attachment attachmentPart = new Attachment("myworddocx", "application/vnd.openxmlformats-officedocument.wordprocessingml.document", - ClassLoader.getSystemResourceAsStream(TEST_RECURSIVE_DOC)); + getTestDocumentAsStream(TEST_RECURSIVE_DOC)); WebClient webClient = WebClient.create(endPoint + META_PATH + FORM_PATH); Response response = webClient.type("multipart/form-data") @@ -214,7 +206,7 @@ public class RecursiveMetadataResourceTest extends CXFTestBase { attachmentPart = new Attachment("myworddocx", "application/vnd.openxmlformats-officedocument.wordprocessingml.document", - ClassLoader.getSystemResourceAsStream(TEST_RECURSIVE_DOC)); + getTestDocumentAsStream(TEST_RECURSIVE_DOC)); webClient = WebClient.create(endPoint + META_PATH + FORM_PATH + UNPARSEABLE_PATH); response = webClient.type("multipart/form-data") @@ -230,7 +222,7 @@ public class RecursiveMetadataResourceTest extends CXFTestBase { attachmentPart = new Attachment("myworddocx", "application/vnd.openxmlformats-officedocument.wordprocessingml.document", - ClassLoader.getSystemResourceAsStream(TEST_RECURSIVE_DOC)); + getTestDocumentAsStream(TEST_RECURSIVE_DOC)); webClient = WebClient.create(endPoint + META_PATH + FORM_PATH + XML_PATH); response = webClient.type("multipart/form-data") @@ -246,7 +238,7 @@ public class RecursiveMetadataResourceTest extends CXFTestBase { attachmentPart = new Attachment("myworddocx", "application/vnd.openxmlformats-officedocument.wordprocessingml.document", - ClassLoader.getSystemResourceAsStream(TEST_RECURSIVE_DOC)); + getTestDocumentAsStream(TEST_RECURSIVE_DOC)); webClient = WebClient.create(endPoint + META_PATH + FORM_PATH+TEXT_PATH); response = webClient.type("multipart/form-data") @@ -262,7 +254,7 @@ public class RecursiveMetadataResourceTest extends CXFTestBase { attachmentPart = new Attachment("myworddocx", "application/vnd.openxmlformats-officedocument.wordprocessingml.document", - ClassLoader.getSystemResourceAsStream(TEST_RECURSIVE_DOC)); + getTestDocumentAsStream(TEST_RECURSIVE_DOC)); webClient = WebClient.create(endPoint + META_PATH +FORM_PATH+IGNORE_PATH); response = webClient.type("multipart/form-data") http://git-wip-us.apache.org/repos/asf/tika/blob/aa5f60d7/tika-server/src/test/java/org/apache/tika/server/StackTraceOffTest.java ---------------------------------------------------------------------- diff --git a/tika-server/src/test/java/org/apache/tika/server/StackTraceOffTest.java b/tika-server/src/test/java/org/apache/tika/server/StackTraceOffTest.java index bd5fefe..065cf52 100644 --- a/tika-server/src/test/java/org/apache/tika/server/StackTraceOffTest.java +++ b/tika-server/src/test/java/org/apache/tika/server/StackTraceOffTest.java @@ -90,7 +90,7 @@ public class StackTraceOffTest extends CXFTestBase { .accept("*/*") .header("Content-Disposition", "attachment; filename=" + TEST_PASSWORD_PROTECTED) - .put(ClassLoader.getSystemResourceAsStream(TEST_PASSWORD_PROTECTED)); + .put(getTestDocumentAsStream(TEST_PASSWORD_PROTECTED)); assertNotNull("null response: " + path, response); assertEquals("unprocessable: " + path, UNPROCESSEABLE, response.getStatus()); String msg = getStringFromInputStream((InputStream) response @@ -105,7 +105,7 @@ public class StackTraceOffTest extends CXFTestBase { Response response = WebClient .create(endPoint + path) .accept("*/*") - .put(ClassLoader.getSystemResourceAsStream(TEST_NULL)); + .put(getTestDocumentAsStream(TEST_NULL)); assertNotNull("null response: " + path, response); assertEquals("unprocessable: " + path, UNPROCESSEABLE, response.getStatus()); String msg = getStringFromInputStream((InputStream) response @@ -124,7 +124,7 @@ public class StackTraceOffTest extends CXFTestBase { .accept("*/*") .header("Content-Disposition", "attachment; filename=null_pointer.evil") - .put(ClassLoader.getSystemResourceAsStream(TEST_NULL)); + .put(getTestDocumentAsStream(TEST_NULL)); assertNotNull("null response: " + path, response); assertEquals("bad type: " + path, 415, response.getStatus()); String msg = getStringFromInputStream((InputStream) response @@ -139,7 +139,7 @@ public class StackTraceOffTest extends CXFTestBase { //exceptions as the others... @Test public void testMeta() throws Exception { - InputStream stream = ClassLoader.getSystemResourceAsStream(TikaResourceTest.TEST_DOC); + InputStream stream = getTestDocumentAsStream(TikaResourceTest.TEST_DOC); Response response = WebClient.create(endPoint + "/meta" + "/Author").type("application/msword") .accept(MediaType.TEXT_PLAIN).put(copy(stream, 8000)); http://git-wip-us.apache.org/repos/asf/tika/blob/aa5f60d7/tika-server/src/test/java/org/apache/tika/server/StackTraceTest.java ---------------------------------------------------------------------- diff --git a/tika-server/src/test/java/org/apache/tika/server/StackTraceTest.java b/tika-server/src/test/java/org/apache/tika/server/StackTraceTest.java index 410824a..a45d1eb 100644 --- a/tika-server/src/test/java/org/apache/tika/server/StackTraceTest.java +++ b/tika-server/src/test/java/org/apache/tika/server/StackTraceTest.java @@ -84,7 +84,7 @@ public class StackTraceTest extends CXFTestBase { .accept("*/*") .header("Content-Disposition", "attachment; filename=" + TEST_PASSWORD_PROTECTED) - .put(ClassLoader.getSystemResourceAsStream(TEST_PASSWORD_PROTECTED)); + .put(getTestDocumentAsStream(TEST_PASSWORD_PROTECTED)); assertNotNull("null response: " + path, response); assertEquals("unprocessable: " + path, UNPROCESSEABLE, response.getStatus()); String msg = getStringFromInputStream((InputStream) response @@ -100,12 +100,12 @@ public class StackTraceTest extends CXFTestBase { Response response = WebClient .create(endPoint + path) .accept("*/*") - .put(ClassLoader.getSystemResourceAsStream(TEST_NULL)); + .put(getTestDocumentAsStream(TEST_NULL)); assertNotNull("null response: " + path, response); assertEquals("unprocessable: " + path, UNPROCESSEABLE, response.getStatus()); String msg = getStringFromInputStream((InputStream) response .getEntity()); - assertContains("Caused by: java.lang.NullPointerException: null pointer message", + assertContains("Caused by: java.lang.NullPointerException: another null pointer exception", msg); } } @@ -135,7 +135,7 @@ public class StackTraceTest extends CXFTestBase { //exceptions as the others... @Test public void testMeta() throws Exception { - InputStream stream = ClassLoader.getSystemResourceAsStream(TikaResourceTest.TEST_DOC); + InputStream stream = getTestDocumentAsStream(TikaResourceTest.TEST_DOC); Response response = WebClient.create(endPoint + "/meta" + "/Author").type("application/msword") .accept(MediaType.TEXT_PLAIN).put(copy(stream, 8000)); http://git-wip-us.apache.org/repos/asf/tika/blob/aa5f60d7/tika-server/src/test/java/org/apache/tika/server/TikaParsersTest.java ---------------------------------------------------------------------- diff --git a/tika-server/src/test/java/org/apache/tika/server/TikaParsersTest.java b/tika-server/src/test/java/org/apache/tika/server/TikaParsersTest.java index e4e60a5..5e5c735 100644 --- a/tika-server/src/test/java/org/apache/tika/server/TikaParsersTest.java +++ b/tika-server/src/test/java/org/apache/tika/server/TikaParsersTest.java @@ -79,9 +79,9 @@ public class TikaParsersTest extends CXFTestBase { assertContains("audio/ogg", text); } else { // Shouldn't do - assertNotFound("text/plain", text); - assertNotFound("application/pdf", text); - assertNotFound("audio/ogg", text); + assertNotContained("text/plain", text); + assertNotContained("application/pdf", text); + assertNotContained("audio/ogg", text); } } } @@ -114,9 +114,9 @@ public class TikaParsersTest extends CXFTestBase { assertContains("<li>audio/ogg", text); } else { // Shouldn't do - assertNotFound("text/plain", text); - assertNotFound("application/pdf", text); - assertNotFound("audio/ogg", text); + assertNotContained("text/plain", text); + assertNotContained("application/pdf", text); + assertNotContained("audio/ogg", text); } } }
