Skip to content

Commit

Permalink
Updated BlackPawnTextureAtlasBuilderTest.
Browse files Browse the repository at this point in the history
  • Loading branch information
Nicolas Gramlich committed Nov 22, 2011
1 parent 1d84d1d commit 6930a29
Showing 1 changed file with 51 additions and 42 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -3,21 +3,23 @@
import junit.framework.Assert;
import junit.framework.TestCase;

import org.anddev.andengine.opengl.texture.atlas.buildable.builder.BlackPawnTextureBuilder.Node;
import org.anddev.andengine.opengl.texture.atlas.buildable.builder.BlackPawnTextureAtlasBuilder.Node;
import org.anddev.andengine.opengl.texture.atlas.source.ITextureAtlasSource;
import org.anddev.andengine.util.modifier.IModifier.DeepCopyNotSupportedException;

/**
* @author Nicolas Gramlich
* @since 16:08:32 - 12.08.2010
*/
public class BlackPawnTextureBuilderTest extends TestCase {
public class BlackPawnTextureAtlasBuilderTest extends TestCase {
// ===========================================================
// Constants
// ===========================================================

private static final int SPACING_NONE = 0;
private static final int SPACING_ONE = 1;
private static final int PADDING_NONE = 0;
private static final int PADDING_ONE = 1;

// ===========================================================
// Fields
Expand All @@ -41,127 +43,134 @@ public class BlackPawnTextureBuilderTest extends TestCase {

public void testSingle() {
final Node node = new Node(0, 0, 10, 10);
final Node inserted = node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE);
final Node inserted = node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE, PADDING_NONE);

this.assertNodeRect(inserted, 0, 0, 4, 2);
}

public void testDouble() {
final Node node = new Node(0, 0, 10, 10);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE, PADDING_NONE);

final Node inserted = node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE);
final Node inserted = node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE, PADDING_NONE);

this.assertNodeRect(inserted, 4, 0, 4, 2);
}

public void testTriple() {
final Node node = new Node(0, 0, 10, 10);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE, PADDING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE, PADDING_NONE);

final Node inserted = node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE);
final Node inserted = node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE, PADDING_NONE);

this.assertNodeRect(inserted, 0, 2, 4, 2);
}

public void testQuadrupel() {
final Node node = new Node(0, 0, 10, 10);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE, PADDING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE, PADDING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE, PADDING_NONE);

final Node inserted = node.insert(new DummyTextureSource(2, 2), 10, 10, SPACING_NONE);
final Node inserted = node.insert(new DummyTextureSource(2, 2), 10, 10, SPACING_NONE, PADDING_NONE);

this.assertNodeRect(inserted, 8, 0, 2, 2);
}

public void testQuadrupel2() {
final Node node = new Node(0, 0, 10, 10);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE, PADDING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE, PADDING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE, PADDING_NONE);

final Node inserted = node.insert(new DummyTextureSource(2, 3), 10, 10, SPACING_NONE);
final Node inserted = node.insert(new DummyTextureSource(2, 3), 10, 10, SPACING_NONE, PADDING_NONE);

this.assertNodeRect(inserted, 0, 4, 2, 3);
}

public void testQuintupel() {
final Node node = new Node(0, 0, 10, 10);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE);
node.insert(new DummyTextureSource(2, 3), 10, 10, SPACING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE, PADDING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE, PADDING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE, PADDING_NONE);
node.insert(new DummyTextureSource(2, 3), 10, 10, SPACING_NONE, PADDING_NONE);

final Node inserted = node.insert(new DummyTextureSource(2, 3), 10, 10, SPACING_NONE);
final Node inserted = node.insert(new DummyTextureSource(2, 3), 10, 10, SPACING_NONE, PADDING_NONE);

this.assertNodeRect(inserted, 2, 4, 2, 3);
}

public void testQuintupel2() {
final Node node = new Node(0, 0, 10, 10);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE);
node.insert(new DummyTextureSource(2, 3), 10, 10, SPACING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE, PADDING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE, PADDING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE, PADDING_NONE);
node.insert(new DummyTextureSource(2, 3), 10, 10, SPACING_NONE, PADDING_NONE);

final Node inserted = node.insert(new DummyTextureSource(2, 8), 10, 10, SPACING_NONE);
final Node inserted = node.insert(new DummyTextureSource(2, 8), 10, 10, SPACING_NONE, PADDING_NONE);

this.assertNodeRect(inserted, 4, 2, 2, 8);
}

public void testQuintupel3() {
final Node node = new Node(0, 0, 10, 10);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE);
node.insert(new DummyTextureSource(2, 3), 10, 10, SPACING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE, PADDING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE, PADDING_NONE);
node.insert(new DummyTextureSource(4, 2), 10, 10, SPACING_NONE, PADDING_NONE);
node.insert(new DummyTextureSource(2, 3), 10, 10, SPACING_NONE, PADDING_NONE);

final Node inserted = node.insert(new DummyTextureSource(2, 10), 10, 10, SPACING_NONE);
final Node inserted = node.insert(new DummyTextureSource(2, 10), 10, 10, SPACING_NONE, PADDING_NONE);

Assert.assertNull(inserted);
}

public void testFullSize() {
final Node node = new Node(0, 0, 10, 10);

final Node inserted = node.insert(new DummyTextureSource(10, 10), 10, 10, SPACING_NONE);
final Node inserted = node.insert(new DummyTextureSource(10, 10), 10, 10, SPACING_NONE, PADDING_NONE);

this.assertNodeRect(inserted, 0, 0, 10, 10);
}

public void testPerfectFit() {
final Node node = new Node(0, 0, 10, 10);
node.insert(new DummyTextureSource(5, 5), 10, 10, SPACING_NONE);
node.insert(new DummyTextureSource(5, 5), 10, 10, SPACING_NONE);
node.insert(new DummyTextureSource(5, 5), 10, 10, SPACING_NONE);
node.insert(new DummyTextureSource(5, 5), 10, 10, SPACING_NONE, PADDING_NONE);
node.insert(new DummyTextureSource(5, 5), 10, 10, SPACING_NONE, PADDING_NONE);
node.insert(new DummyTextureSource(5, 5), 10, 10, SPACING_NONE, PADDING_NONE);

final Node inserted = node.insert(new DummyTextureSource(5, 5), 10, 10, SPACING_NONE);
final Node inserted = node.insert(new DummyTextureSource(5, 5), 10, 10, SPACING_NONE, PADDING_NONE);

this.assertNodeRect(inserted, 5, 5, 5, 5);
}

public void testPerfectFit2() {
final Node node = new Node(0, 0, 10, 10);
node.insert(new DummyTextureSource(4, 4), 10, 10, SPACING_ONE);
node.insert(new DummyTextureSource(4, 4), 10, 10, SPACING_ONE);
node.insert(new DummyTextureSource(4, 4), 10, 10, SPACING_ONE);
node.insert(new DummyTextureSource(4, 4), 10, 10, SPACING_ONE, PADDING_NONE);
node.insert(new DummyTextureSource(4, 4), 10, 10, SPACING_ONE, PADDING_NONE);
node.insert(new DummyTextureSource(4, 4), 10, 10, SPACING_ONE, PADDING_NONE);

final Node inserted = node.insert(new DummyTextureSource(5, 5), 10, 10, SPACING_ONE);
final Node inserted = node.insert(new DummyTextureSource(5, 5), 10, 10, SPACING_ONE, PADDING_NONE);

this.assertNodeRect(inserted, 5, 5, 5, 5);
}

public void testNoFitDueToSpacing() {
final Node node = new Node(0, 0, 10, 10);
node.insert(new DummyTextureSource(5, 5), 10, 10, SPACING_ONE);
node.insert(new DummyTextureSource(5, 5), 10, 10, SPACING_ONE, PADDING_NONE);

final Node inserted = node.insert(new DummyTextureSource(5, 5), 10, 10, SPACING_ONE);
final Node inserted = node.insert(new DummyTextureSource(5, 5), 10, 10, SPACING_ONE, PADDING_NONE);

Assert.assertNull(inserted);
}

public void testSinglePadding() {
final Node node = new Node(0, 0, 10, 10);
final Node inserted = node.insert(new DummyTextureSource(8, 8), 10, 10, SPACING_NONE, PADDING_ONE);

this.assertNodeRect(inserted, 0, 0, 10, 10);
}

private void assertNodeRect(final Node pNode, final int pLeft, final int pTop, final int pWidth, final int pHeight) {
Assert.assertEquals(pLeft, pNode.getRect().getLeft());
Assert.assertEquals(pTop, pNode.getRect().getTop());
Expand Down

0 comments on commit 6930a29

Please sign in to comment.