Changeset 6633


Ignore:
Timestamp:
07/02/10 12:27:27 (9 years ago)
Author:
bdezonia
Message:

fixed lut testing in testColorCustom. enhanced testColorComposite to support UINT16.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/components/loci-plugins/test/loci/plugins/in/ImporterTest.java

    r6623 r6633  
    3737 
    3838// left off 
     39//   should be able to make colorTests() handle both ImagePluses and CompositeImages. Change lutTest() too. Then can get 
     40//     rid of ImagePlusLutTest(). 
    3941//   the color test methods seem to fail for indexed data 
    4042//   the color test methods seem to fail for virtual=true 
     
    563565                                  int expS, int expI, int expZ, int expC, int expT) 
    564566  { 
     567    // TODO - returns a boolean so we can print out all values before asserting failure. Could be changed if desired. 
     568     
    565569    int tempS = sIndex(imp, z, c, t, indexed, falseColor); 
    566570    int tempI = iIndex(imp, z, c, t, indexed, falseColor); 
     
    571575    //System.out.println("actual CZT "+tempC+" "+tempZ+" "+tempT); 
    572576     
    573     System.out.println("  indices test (I forced to 0)"); 
    574     System.out.println("    expected (sizct): "+expS+" "+0+" "+expZ+" "+expC+" "+expT); 
    575     System.out.println("    actual (sizct):   "+tempS+" "+0+" "+tempZ+" "+tempC+" "+tempT); 
     577    //System.out.println("  indices test (I forced to 0)"); 
     578    //System.out.println("    expected (sizct): "+expS+" "+0+" "+expZ+" "+expC+" "+expT); 
     579    //System.out.println("    actual (sizct):   "+tempS+" "+0+" "+tempZ+" "+tempC+" "+tempT); 
    576580     
    577581    //TODO - remove this debugging code 
     
    587591    { 
    588592      assertEquals(expS,tempS); 
    589       //assertEquals(expI,tempI); 
     593      //assertEquals(expI,tempI);  // not so important we test this 
    590594      assertEquals(expZ,tempZ); 
    591595      assertEquals(expC,tempC); 
     
    746750   
    747751  /** tests that multiple file groups are pulled into one dataset */ 
    748   private void groupedFilesTest(ImagePlus imp, int numDatasets, int numImagesPerDataset) 
    749   { 
    750     stackTest(imp,numDatasets*numImagesPerDataset); 
     752  private void groupedFilesTest(ImagePlus imp, int expNumZ, int expNumC, int expNumT) 
     753  { 
     754    stackTest(imp,expNumZ*expNumC*expNumT); 
    751755     
    752756    ImageStack st = imp.getStack(); 
    753757     
    754     System.out.println("groupedFilesTest"); 
     758    //System.out.println("groupedFilesTest"); 
    755759    int slice = 0; 
    756     for (int t = 0; t < FakeTimepointCount; t++) { 
    757       for (int z = 0; z < FakePlaneCount; z++) { 
    758         for (int c = 0; c < FakeChannelCount; c++) { 
     760    for (int t = 0; t < expNumT; t++) { 
     761      for (int z = 0; z < expNumZ; z++) { 
     762        for (int c = 0; c < expNumC; c++) { 
    759763 
    760764          ImageProcessor proc = st.getProcessor(++slice); 
    761           printVals(proc); 
     765          //printVals(proc); 
    762766          assertEquals(0,sIndex(proc)); 
    763           assertEquals(z,iIndex(proc));  // TODO: is this correct. it passes but looks wrong. 
     767          assertEquals(z,iIndex(proc));  // TODO: is this correct? it passes but looks wrong. 
    764768          assertEquals(z,zIndex(proc)); 
    765769          assertEquals(0,cIndex(proc)); 
     
    815819          //System.out.println("--\nexp CZT "+cIndex+" "+zIndex+" "+tIndex); 
    816820          //System.out.println("act CZT "+actualC+" "+actualZ+" "+actualT); 
    817           // TODO - put back in post debug 
    818821          assertEquals(zIndex, actualZ); 
    819822          assertEquals(cIndex, actualC); 
     
    11711174    impsCountTest(imps,1); 
    11721175   
    1173     groupedFilesTest(imps[0], FAKE_FILES.length, FakePlaneCount); 
     1176    groupedFilesTest(imps[0], FakePlaneCount, FakeChannelCount, FakeTimepointCount); 
    11741177  } 
    11751178   
     
    13891392  } 
    13901393   
    1391   private void imagePlusLutTest(ImagePlus imp, boolean indexed, boolean falseColor) 
     1394  // TODO : can I replace all calls to this to colorTests() passing numChannels == 1. Another way: modify lutTest() to 
     1395  //   use a standard ImagePlus rather than a CompImg and have it call getColorTable(). Then pass in just RED ramped 
     1396  //   test values. 
     1397  private void imagePlusLutTest(ImagePlus imp, boolean indexed, boolean falseColor, Color color) 
    13921398  { 
    13931399    // When numCh < 2 or numCh > 7 the setColorMode() code for Composite and Colorize cannot create a CompositeImage. 
     
    13971403    assertFalse(imp instanceof CompositeImage); 
    13981404     
     1405    if (indexed) 
     1406    { 
     1407      fail("imagePlusLutTest() - not yet supporting indexed"); 
     1408      if (falseColor) 
     1409        ; 
     1410    } 
     1411     
    13991412    LUT lut = getColorTable(imp,0); 
    14001413     
    14011414    byte[] data = new byte[256]; 
    14021415     
    1403     lut.getReds(data); 
    1404      
    1405     if (indexed && falseColor) 
     1416    if (color.getRed() > 0) 
    14061417    { 
    1407       System.out.println("imagePlusLutTest() - indexed and falseColor - 1st 10 lut entries"); 
    1408       for (int i = 0; i < 10; i++) 
    1409         System.out.print("  "+data[i]); 
    1410       System.out.println(); 
    1411     } 
    1412     else 
     1418      lut.getReds(data); 
    14131419      ascendingValuesTest(data,256); 
     1420    } 
     1421    if (color.getGreen() > 0) 
     1422    { 
     1423      lut.getGreens(data); 
     1424      ascendingValuesTest(data,256); 
     1425    } 
     1426    if (color.getBlue() > 0) 
     1427    { 
     1428      lut.getBlues(data); 
     1429      ascendingValuesTest(data,256); 
     1430    } 
    14141431  } 
    14151432   
     
    14921509      assertFalse(imp.isComposite()); 
    14931510 
    1494       imagePlusLutTest(imp,indexed,falseColor); 
     1511      imagePlusLutTest(imp,indexed,falseColor,DefaultColorOrder[0]); 
    14951512    } 
    14961513     
     
    15531570       
    15541571      colorTests(ci,expectedSizeC,DefaultColorOrder); 
    1555  
    1556       // TODO - may need to reenable if commented code below reactivated 
    1557       //ci.reset();  // force the channel processors to get initialized, otherwise nullptr  - TODO : does this point out a IJ bug? 
    1558  
    1559       /* 
    1560       int maxZ = ci.getNSlices(); 
    1561       int maxC = ci.getNChannels(); 
    1562       int maxT = ci.getNFrames(); 
    1563        
    1564       //System.out.println("Checking index vals"); 
    1565       //System.out.println("maxes z c t = "+maxZ+" "+maxC+" "+maxT); 
    1566        
    1567       // check that each image in the overall series has the correct iIndex value 
    1568       int index = 0; 
    1569       for (int t = 0; t < maxT; t++) 
    1570         for (int c = 0; c < maxC; c++) 
    1571           for (int z = 0; z < maxZ; z++) 
    1572             assertEquals(index++, getIndexValue(ci,z,c,t,indexed));  // expected value from CZT order 
    1573             //indexValuesTest(ci, z, c, t, indexed, 0, index++, z, c, t); 
    1574       */ 
    15751572    } 
    15761573    else  // expectedSizeC < 2 or > 7 - we should have gotten back a regular ImagePlus 
     
    15781575      assertFalse(imp.isComposite()); 
    15791576 
    1580       imagePlusLutTest(imp,indexed,falseColor); 
     1577      imagePlusLutTest(imp,indexed,falseColor,DefaultColorOrder[0]); 
    15811578    } 
    15821579     
     
    16901687      assertFalse(imp.isComposite()); 
    16911688 
    1692       imagePlusLutTest(imp,indexed,falseColor); 
     1689      imagePlusLutTest(imp,indexed,falseColor,DefaultColorOrder[0]); 
    16931690    } 
    16941691     
     
    17921789      assertFalse(imp.isComposite()); 
    17931790   
    1794       imagePlusLutTest(imp,indexed,falseColor); 
     1791      imagePlusLutTest(imp,indexed,falseColor,DefaultColorOrder[0]); 
    17951792    } 
    17961793   
     
    19061903      assertFalse(imp.isComposite()); 
    19071904   
    1908       imagePlusLutTest(imp,indexed,falseColor); 
     1905      imagePlusLutTest(imp,indexed,falseColor,CustomColorOrder[0]); 
    19091906    } 
    19101907   
     
    25042501  public void testColorComposite() 
    25052502  { 
    2506     for (boolean virtual : new boolean[]{false}) {  // TODO : fails when virtual is true 
     2503    for (boolean virtual : new boolean[]{false}) {  // TODO : fails when virtual is true for numChannels < 2 or > 7 
    25072504       
    25082505      // these here to simplify debugging 
    25092506   
    25102507      // edge cases in number of channels nonindexed in one series 
     2508      // TODO : next one fails when virtual true 
    25112509      colorCompositeTester(virtual,FormatTools.UINT8,NotIndexed,1,1,RealColor,OneSeries); 
    25122510      colorCompositeTester(virtual,FormatTools.UINT8,NotIndexed,2,2,RealColor,OneSeries); 
    25132511      colorCompositeTester(virtual,FormatTools.UINT8,NotIndexed,7,7,RealColor,OneSeries); 
     2512      // TODO : next one fails when virtual true 
    25142513      colorCompositeTester(virtual,FormatTools.UINT8,NotIndexed,8,8,RealColor,OneSeries); 
    25152514   
     
    25172516      colorCompositeTester(virtual,FormatTools.UINT8,NotIndexed,4,4,RealColor,OneSeries); 
    25182517      colorCompositeTester(virtual,FormatTools.UINT8,NotIndexed,6,3,RealColor,OneSeries); 
     2518      // TODO : next one fails when virtual true 
    25192519      colorCompositeTester(virtual,FormatTools.UINT8,NotIndexed,12,3,RealColor,OneSeries); 
    25202520   
     
    25272527   
    25282528      // general test loop 
    2529       int[] pixTypes = new int[] {FormatTools.UINT8}; 
     2529      int[] pixTypes = new int[] {FormatTools.UINT8,FormatTools.UINT16}; 
    25302530      int[] channels = new int[] {1,2,3,4,5,6,7,8,9}; 
    25312531      int[] series = new int[] {1,2,3,4}; 
Note: See TracChangeset for help on using the changeset viewer.