Changeset 2381


Ignore:
Timestamp:
03/05/07 10:15:16 (13 years ago)
Author:
melissa
Message:

Added thumbnail dimension tests.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/loci/formats/test/ReaderTest.java

    r2327 r2381  
    199199    } 
    200200    if (!success) writeLog(id + " failed byte array test"); 
     201    try { reader.close(true); } 
     202    catch (Exception e) { } 
     203    assertTrue(success); 
     204  } 
     205 
     206  /** 
     207   * Checks the reported thumbnail dimensions against the actual dimensions of 
     208   * the thumbnail BufferedImages. 
     209   */ 
     210  public void testThumbnailImageDimensions() { 
     211    boolean success = true; 
     212    try { 
     213      int planesRead = 0; 
     214 
     215      for (int i=0; i<reader.getSeriesCount(id); i++) { 
     216        reader.setSeries(id, i); 
     217        int imageCount = reader.getImageCount(id); 
     218        int sizeX = reader.getThumbSizeX(id); 
     219        int sizeY = reader.getThumbSizeY(id); 
     220 
     221        for (int j=0; j<imageCount; j++) { 
     222          BufferedImage b = reader.openThumbImage(id, j); 
     223          boolean failW = b.getWidth() != sizeX; 
     224          boolean failH = b.getHeight() != sizeY; 
     225          if (failW) writeLog(id + " failed thumbnail width test"); 
     226          if (failH) writeLog(id + " failed thumbnail height test"); 
     227          if (failW || failH) { 
     228            success = false; 
     229            j = imageCount; 
     230            i = reader.getSeriesCount(id); 
     231            break; 
     232          } 
     233        } 
     234        planesRead += imageCount; 
     235      } 
     236    } 
     237    catch (Exception e) { 
     238      if (FormatReader.debug) e.printStackTrace(); 
     239      success = false; 
     240    } 
     241    if (!success) writeLog(id + " failed thumbnail BufferedImage test"); 
     242    assertTrue(success); 
     243  } 
     244 
     245  /** 
     246   * Checks the reported thumbnail dimensions against the size of the array 
     247   * returned by openThumbBytes. 
     248   */ 
     249  public void testThumbnailArrayDimensions() { 
     250    boolean success = true; 
     251    try { 
     252      for (int i=0; i<reader.getSeriesCount(id); i++) { 
     253        reader.setSeries(id, i); 
     254        int imageCount = reader.getImageCount(id); 
     255        int sizeX = reader.getThumbSizeX(id); 
     256        int sizeY = reader.getThumbSizeY(id); 
     257        int bytesPerPixel = 
     258          FormatReader.getBytesPerPixel(reader.getPixelType(id)); 
     259        int sizeC = reader.getSizeC(id); 
     260        boolean rgb = reader.isRGB(id); 
     261 
     262        int expectedBytes = sizeX * sizeY * bytesPerPixel * (rgb ? sizeC : 1); 
     263 
     264        for (int j=0; j<imageCount; j++) { 
     265          byte[] b = reader.openThumbBytes(id, j); 
     266          if (b.length != expectedBytes) { 
     267            success = false; 
     268            j = imageCount; 
     269            i = reader.getSeriesCount(id); 
     270            break; 
     271          } 
     272        } 
     273      } 
     274    } 
     275    catch (Exception e) { 
     276      if (FormatReader.debug) e.printStackTrace(); 
     277      success = false; 
     278    } 
     279    if (!success) writeLog(id + " failed thumbnail byte array test"); 
    201280    try { reader.close(true); } 
    202281    catch (Exception e) { } 
     
    522601    if (!writeConfigFiles) { 
    523602      suite.addTest(new ReaderTest("testByteArrayDimensions", id)); 
     603      suite.addTest(new ReaderTest("testThumbnailImageDimensions", id));  
     604      suite.addTest(new ReaderTest("testThumbnailArrayDimensions", id));  
    524605      suite.addTest(new ReaderTest("testImageCount", id)); 
    525606      suite.addTest(new ReaderTest("testOMEXML", id)); 
Note: See TracChangeset for help on using the changeset viewer.