* @param harness the test harness (<code>null</code> not permitted).
*/
public void testDouble(TestHarness harness)
{
harness.checkPoint("(int, int, int, double, DataBuffer)");
BandedSampleModel m = new BandedSampleModel(DataBuffer.TYPE_INT, 2, 3, 2);
DataBufferInt b = new DataBufferInt(6, 2);
m.setSample(0, 0, 0, (double) 0xA0, b);
m.setSample(1, 0, 0, (double) 0xA1, b);
m.setSample(0, 1, 0, (double) 0xA2, b);
m.setSample(1, 1, 0, (double) 0xA3, b);
m.setSample(0, 2, 0, (double) 0xA4, b);
m.setSample(1, 2, 0, (double) 0xA5, b);
m.setSample(0, 0, 1, (double) 0xB0, b);
m.setSample(1, 0, 1, (double) 0xB1, b);
m.setSample(0, 1, 1, (double) 0xB2, b);
m.setSample(1, 1, 1, (double) 0xB3, b);
m.setSample(0, 2, 1, (double) 0xB4, b);
m.setSample(1, 2, 1, (double) 0xB5, b);
harness.check(b.getElem(0, 0), 0xA0);
harness.check(b.getElem(0, 1), 0xA1);
harness.check(b.getElem(0, 2), 0xA2);
harness.check(b.getElem(0, 3), 0xA3);
harness.check(b.getElem(0, 4), 0xA4);
harness.check(b.getElem(0, 5), 0xA5);
harness.check(b.getElem(1, 0), 0xB0);
harness.check(b.getElem(1, 1), 0xB1);
harness.check(b.getElem(1, 2), 0xB2);
harness.check(b.getElem(1, 3), 0xB3);
harness.check(b.getElem(1, 4), 0xB4);
harness.check(b.getElem(1, 5), 0xB5);
// check negative x
boolean pass = false;
try
{
m.setSample(-1, 0, 0, (double) 0xFF, b);
}
catch (ArrayIndexOutOfBoundsException e)
{
pass = true;
}
harness.check(pass);
// check negative y
pass = false;
try
{
m.setSample(0, -1, 0, (double) 0xFF, b);
}
catch (ArrayIndexOutOfBoundsException e)
{
pass = true;
}
harness.check(pass);
// check negative band
pass = false;
try
{
m.setSample(0, 0, -1, (double) 0xFF, b);
}
catch (ArrayIndexOutOfBoundsException e)
{
pass = true;
}
harness.check(pass);
// check null buffer
pass = false;
try
{
m.setSample(0, 0, 0, (double) 0xFF, null);
}
catch (NullPointerException e)
{
pass = true;
}