You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Farrukh Najmi (JIRA)" <ji...@apache.org> on 2012/06/28 15:03:44 UTC

[jira] [Commented] (IMAGING-85) Rename src/test/data directory to src/test/resources to comply with maven conventions

    [ https://issues.apache.org/jira/browse/IMAGING-85?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13403075#comment-13403075 ] 

Farrukh Najmi commented on IMAGING-85:
--------------------------------------

Loading test resources from classpath is not uncommon. Consider the simplicity of the following code junit test that uses spring framework.

{code}
    @Test
    public void testGetImageMetadataCommonsImaging() {
        
        InputStream is = null;
        try {
            PathMatchingResourcePatternResolver resolver = new PathMatchingResourcePatternResolver();
            Resource[] resources = resolver.getResources("classpath:images/iptc/1/Oregon Scientific DS6639 - DSC_0307 - iptc added with irfanview.jpg");
            Resource res = resources[0];
            URL url = res.getURL();
            is = url.openStream();
            
            Map params = new HashMap();
            JpegImageMetadata metadata = (JpegImageMetadata) Imaging.getMetadata(is, "Oregon Scientific DS6639 - DSC_0307 - iptc added with irfanview.jpg");
            JpegPhotoshopMetadata psMetadata = metadata.getPhotoshop();
            List oldRecords = psMetadata.photoshopApp13Data.getRecords();

            for (int j = 0; j < oldRecords.size(); j++) {
                IptcRecord record = (IptcRecord) oldRecords.get(j);
                System.err.println("Key: " + record.iptcType.getName() + " (0x"
                            + Integer.toHexString(record.iptcType.getType())
                            + "), value: " + record.value);
            }
            
        } catch (ImageReadException ex) {
            Logger.getLogger(ImageCatalogerTest.class.getName()).log(Level.SEVERE, null, ex);
        } catch (IOException ex) {
            Logger.getLogger(ImageCatalogerTest.class.getName()).log(Level.SEVERE, null, ex);
        } finally {
            if (null != is) {
                try {
                    is.close();
                } catch (IOException ex) {
                    Logger.getLogger(ImageCatalogerTest.class.getName()).log(Level.SEVERE, null, ex);
                }
            }
        }
        
    }    
{code}
                
> Rename src/test/data directory to src/test/resources to comply with maven conventions
> -------------------------------------------------------------------------------------
>
>                 Key: IMAGING-85
>                 URL: https://issues.apache.org/jira/browse/IMAGING-85
>             Project: Commons Imaging
>          Issue Type: Improvement
>            Reporter: Farrukh Najmi
>         Attachments: SANSELAN-83-patch.txt
>
>
> Currently established maven convention is not being following because test resources being placed under src/test/data instead of src/test/resources directory. This causes problems is maven-jar-plugin and possibly other situations. Proposed patch for SANSELAN-82 will not work until the proposed fix for this issues is addressed.
> The proposed fix is to rename src/test/data to src/test/resources and apply the following patch to fix test code that setsup path for test data files:
> {code}
> Index: src/test/java/org/apache/commons/imaging/ImagingTestConstants.java
> ===================================================================
> --- src/test/java/org/apache/commons/imaging/ImagingTestConstants.java  (revision 1354112)
> +++ src/test/java/org/apache/commons/imaging/ImagingTestConstants.java  (working copy)
> @@ -24,12 +24,12 @@
>  
>      static final File PHIL_HARVEY_TEST_IMAGE_FOLDER = new File(
>              FilenameUtils
> -                    .separatorsToSystem("src\\test\\data\\images\\exif\\philHarvey\\"));
> +                    .separatorsToSystem("src\\test\\resources\\images\\exif\\philHarvey\\"));
>  
>      static final File SOURCE_FOLDER = new File("src");
>      static final File TEST_SOURCE_FOLDER = new File(SOURCE_FOLDER, "test");
>      static final File TEST_DATA_SOURCE_FOLDER = new File(TEST_SOURCE_FOLDER,
> -            "data");
> +            "resources");
>      static final File TEST_IMAGE_FOLDER = new File(TEST_DATA_SOURCE_FOLDER,
>              "images");
>  }
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira