You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tika.apache.org by "Tilman Hausherr (Jira)" <ji...@apache.org> on 2021/03/16 18:34:00 UTC
[jira] [Updated] (TIKA-3323) FileCommandDetectorTest inconsistent
results depending on platform
[ https://issues.apache.org/jira/browse/TIKA-3323?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Tilman Hausherr updated TIKA-3323:
----------------------------------
Summary: FileCommandDetectorTest inconsistent results depending on platform (was: FileCommandDetectorTest incocnistent results depending on platform)
> FileCommandDetectorTest inconsistent results depending on platform
> ------------------------------------------------------------------
>
> Key: TIKA-3323
> URL: https://issues.apache.org/jira/browse/TIKA-3323
> Project: Tika
> Issue Type: Bug
> Components: core
> Affects Versions: 1.25
> Reporter: Andrew Pavlin
> Assignee: Tim Allison
> Priority: Major
> Fix For: 1.26
>
>
> The unit test for org.apache.tika.detect.FileCommandDetector fails on some platforms due to inconsistent return values from the operating system's "file --mime" command. For example, on Fedora Core 32 and Mint 19, the test case returns "text/xml". However, on Oracle Enterprise Linux 6, the test case returns "application/xml", which is equally valid but causes the unit test case to fail. When the unit test case fails, it is impossible to build Tika.
> The unit test program should be fixed to accept either answer so all dialects of the file command work successfully. A proposed patch is included below:
> diff --git a/tika-1.25/tika-core/src/test/java/org/apache/tika/detect/FileCommandDetectorTest.java b/tika-1.25/tika-core/src/test/java/org/apache/tika/detect/FileCommandDetectorTest.java
> index 21a24ab..1911e05 100644
> --- a/tika-1.25/tika-core/src/test/java/org/apache/tika/detect/FileCommandDetectorTest.java
> +++ b/tika-1.25/tika-core/src/test/java/org/apache/tika/detect/FileCommandDetectorTest.java
> @@ -44,9 +44,11 @@ public class FileCommandDetectorTest {
> assumeTrue(FileCommandDetector.checkHasFile());
>
> try (InputStream is = getClass().getResourceAsStream("/test-documents/basic_embedded.xml")) {
> - assertEquals(MediaType.text("xml"), DETECTOR.detect(is, new Metadata()));
> + MediaType answer = DETECTOR.detect(is, new Metadata()));
> + assert(MediaType.text("xml").equals(answer) || MediaType.application("xml").equals(answer));
> //make sure that the detector is resetting the stream
> - assertEquals(MediaType.text("xml"), DETECTOR.detect(is, new Metadata()));
> + answer = DETECTOR.detect(is, new Metadata()));
> + assert(MediaType.text("xml").equals(answer) || MediaType.application("xml").equals(answer));
> }
>
> //now try with TikaInputStream
--
This message was sent by Atlassian Jira
(v8.3.4#803005)