package de.lmu.ifi.dbs.jfeaturelib.shapeFeatures;
import de.lmu.ifi.dbs.jfeaturelib.LibProperties;
import ij.process.ByteProcessor;
import ij.process.ImageProcessor;
import java.util.EnumSet;
import org.junit.Test;
import static org.junit.Assert.*;
/**
*
* @author Franz
*/
public class SquareModelShapeMatrixTest {
public SquareModelShapeMatrixTest() {
}
@Test
public void testGetMatrix() {
ByteProcessor bp = new ByteProcessor(9, 9);
bp.setBackgroundValue(0);
bp.setColor(0);
bp.fill();
bp.setColor(1);
bp.drawRect(4, 4, 3, 3);
SquareModelShapeMatrix m = new SquareModelShapeMatrix(3);
m.run(bp);
int[][] result = m.getMatrix();
assertEquals(3, result.length);
assertEquals(3, result[0].length);
assertEquals(3, result[1].length);
assertEquals(3, result[2].length);
assertArrayEquals(new int[]{0, 0, 1}, result[0]);
assertArrayEquals(new int[]{1, 0, 0}, result[1]);
assertArrayEquals(new int[]{0, 0, 1}, result[2]);
}
@Test
public void testGetMatrix1() {
ByteProcessor bp = new ByteProcessor(9, 9);
bp.setBackgroundValue(0);
bp.setColor(0);
bp.fill();
bp.setColor(1);
bp.drawRect(4, 4, 4, 4);
SquareModelShapeMatrix m = new SquareModelShapeMatrix(3);
m.run(bp);
int[][] result = m.getMatrix();
assertEquals(3, result.length);
assertEquals(3, result[0].length);
assertEquals(3, result[1].length);
assertEquals(3, result[2].length);
assertArrayEquals(new int[]{0, 1, 0}, result[0]);
assertArrayEquals(new int[]{0, 0, 1}, result[1]);
assertArrayEquals(new int[]{0, 1, 0}, result[2]);
}
@Test
public void testSetMatrixDimension() {
SquareModelShapeMatrix instance = new SquareModelShapeMatrix();
instance.setMatrixDimension(2);
assertEquals(instance.matrixDimension, 2);
}
@Test(expected = IllegalArgumentException.class)
public void testSetMatrixDimensionFail1() {
SquareModelShapeMatrix instance = new SquareModelShapeMatrix();
instance.setMatrixDimension(0);
}
@Test(expected = IllegalArgumentException.class)
public void testSetMatrixDimensionFail2() {
SquareModelShapeMatrix instance = new SquareModelShapeMatrix();
instance.setMatrixDimension(-1);
}
}