// TODO: check the tiff structure is the one requested
final TIFFImageReader reader = (TIFFImageReader) new TIFFImageReaderSpi().createReaderInstance();
reader.setInput(new FileImageInputStream(file));
// compression
final TIFFImageMetadata metadata=(TIFFImageMetadata) reader.getImageMetadata(0);
// IIOMetadataDumper IIOMetadataDumper = new IIOMetadataDumper(
// (IIOMetadataNode)reader.getImageMetadata(0).getAsTree(TIFFImageMetadata.nativeMetadataFormatName));
// System.out.println(IIOMetadataDumper.getMetadata());
assertNotNull(metadata);
IIOMetadataNode root = (IIOMetadataNode)reader.getImageMetadata(0).getAsTree(TIFFImageMetadata.nativeMetadataFormatName);
IIOMetadataNode field = getTiffField(root, BaselineTIFFTagSet.TAG_COMPRESSION);
assertNotNull(field);
assertEquals("PackBits", field.getFirstChild().getFirstChild().getAttributes().item(1).getNodeValue());
assertEquals("32773", field.getFirstChild().getFirstChild().getAttributes().item(0).getNodeValue());
IIOMetadataNode node = metadata.getStandardDataNode();
assertNotNull(node);
assertEquals("PlanarConfiguration", node.getFirstChild().getNodeName());
assertEquals("PixelInterleaved", node.getFirstChild().getAttributes().item(0).getNodeValue());