| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178 |
- package com.jme3.scene;
- import com.jme3.bounding.BoundingVolume;
- import com.jme3.material.Material;
- import com.jme3.math.Quaternion;
- import com.jme3.math.Transform;
- import com.jme3.math.Vector3f;
- import org.junit.Test;
- import static org.easymock.EasyMock.*;
- import static org.junit.Assert.*;
- public class GeometryTest {
- @Test
- public void testConstructorNameNull() {
- Geometry geom = new Geometry(null);
- assertNull(geom.getName());
- }
- @Test
- public void testConstructorName() {
- Geometry geom = new Geometry("TestGeometry");
- assertEquals("TestGeometry", geom.getName());
- }
- @Test(expected = NullPointerException.class)
- public void testConstructorNameMeshNullMesh() {
- Geometry geom = new Geometry("TestGeometry", null);
- }
- @Test
- public void testConstructorNameMesh() {
- Mesh m = new Mesh();
- Geometry geom = new Geometry("TestGeometry", m);
- assertEquals("TestGeometry", geom.getName());
- assertEquals(m, geom.getMesh());
- }
- @Test(expected = IllegalStateException.class)
- public void testSetLodLevelMeshLodZero() {
- Mesh m = new Mesh();
- Geometry geom = new Geometry("TestGeometry", m);
- geom.setLodLevel(0);
- }
- @Test(expected = IllegalArgumentException.class)
- public void testSetLodLevelLodLessZero() {
- Mesh m = new Mesh();
- VertexBuffer lodLevels = new VertexBuffer(VertexBuffer.Type.Size);
- m.setLodLevels(new VertexBuffer[]{lodLevels});
- Geometry geom = new Geometry("TestGeometry", m);
- geom.setLodLevel(-1);
- }
- @Test(expected = IllegalArgumentException.class)
- public void testSetLodLevelLodGreaterMeshLod() {
- Mesh m = new Mesh();
- VertexBuffer lodLevel = new VertexBuffer(VertexBuffer.Type.Size);
- m.setLodLevels(new VertexBuffer[]{lodLevel});
- Geometry geom = new Geometry("TestGeometry", m);
- geom.setLodLevel(5);
- }
- @Test
- public void testSetLodLevel() {
- Mesh m = new Mesh();
- VertexBuffer lodLevel = new VertexBuffer(VertexBuffer.Type.Size);
- m.setLodLevels(new VertexBuffer[]{lodLevel, lodLevel, lodLevel});
- Geometry geom = new Geometry("TestGeometry", m);
- geom.setLodLevel(2);
- assertEquals(2, geom.getLodLevel());
- }
- @Test(expected = IllegalArgumentException.class)
- public void testSetMeshNull() {
- Geometry geom = new Geometry();
- geom.setMesh(null);
- }
- @Test(expected = UnsupportedOperationException.class)
- public void testSetMeshBatched() {
- Mesh m = new Mesh();
- Geometry geom = new Geometry();
- BatchNode bn = new BatchNode();
- geom.batch(bn, 1);
- geom.setMesh(m);
- }
- @Test
- public void testSetMesh() {
- Mesh m = new Mesh();
- Geometry geom = new Geometry();
- geom.setMesh(m);
- assertEquals(m, geom.getMesh());
- }
- @Test(expected = UnsupportedOperationException.class)
- public void testSetMaterialBatched() {
- Material m = new Material();
- Geometry geom = new Geometry();
- BatchNode bn = new BatchNode();
- geom.batch(bn, 1);
- geom.setMaterial(m);
- }
- @Test
- public void testSetMaterial() {
- Material m = new Material();
- Geometry geom = new Geometry();
- geom.setMaterial(m);
- assertEquals(m, geom.getMaterial());
- }
- @Test
- public void testUpdateModelBound() {
- Mesh mockedMesh = createMock(Mesh.class);
- mockedMesh.updateBound();
- expectLastCall();
- replay(mockedMesh);
- Geometry geom = new Geometry();
- geom.setMesh(mockedMesh);
- geom.updateModelBound();
- verify(mockedMesh);
- }
- @Test(expected = NullPointerException.class)
- public void testUpdateWorldBoundNoMesh() {
- Geometry geom = new Geometry();
- geom.updateWorldBound();
- }
- @Test
- public void testUpdateWorlBoundNoBoundingVolume() {
- Mesh mockedMesh = createMock(Mesh.class);
- expect(mockedMesh.getBound()).andReturn(null);
- replay(mockedMesh);
- Geometry geom = new Geometry();
- geom.setMesh(mockedMesh);
- geom.updateWorldBound();
- verify(mockedMesh);
- }
- @Test
- public void testUpdateWorlBoundIgnoreTransform() {
- Mesh mockedMesh = createMock(Mesh.class);
- BoundingVolume mockedBoundingVolume = createMock(BoundingVolume.class);
- expect(mockedMesh.getBound()).andReturn(mockedBoundingVolume).times(2);
- expect(mockedBoundingVolume.clone(null)).andReturn(null);
- replay(mockedMesh, mockedBoundingVolume);
- Geometry geom = new Geometry();
- geom.setMesh(mockedMesh);
- geom.setIgnoreTransform(true);
- geom.updateWorldBound();
- verify(mockedMesh, mockedBoundingVolume);
- }
- @Test
- public void testUpdateWorlBoundTransform() {
- Mesh mockedMesh = createMock(Mesh.class);
- BoundingVolume mockedBoundingVolume = createMock(BoundingVolume.class);
- expect(mockedMesh.getBound()).andReturn(mockedBoundingVolume).times(2);
- expect(mockedBoundingVolume.transform(anyObject(Transform.class), same((BoundingVolume) null))).andReturn(null);
- replay(mockedMesh, mockedBoundingVolume);
- Geometry geom = new Geometry();
- geom.setMesh(mockedMesh);
- geom.setIgnoreTransform(false);
- geom.updateWorldBound();
- verify(mockedMesh, mockedBoundingVolume);
- }
- }
|