Entity3DTests ClassDelta Engine Documentation
Inheritance Hierarchy

System Object
  DeltaEngine.Platforms TestWithMocksOrVisually
    DeltaEngine.Rendering3D.Tests Entity3DTests

Namespace: DeltaEngine.Rendering3D.Tests
Assembly: DeltaEngine.Rendering3D.Tests (in DeltaEngine.Rendering3D.Tests.dll) Version: 1.1.1.0 (1.1.1)
Syntax

public class Entity3DTests : TestWithMocksOrVisually

The Entity3DTests type exposes the following members.

Constructors

  NameDescription
Public methodEntity3DTests
Initializes a new instance of the Entity3DTests class
Top
Methods

  NameDescription
Protected methodAdvanceTimeAndUpdateEntities (Inherited from TestWithMocksOrVisually.)
Public methodCannotAddTheSameTypeOfComponentTwice
Public methodCreateEntity3D
Public methodCreateEntity3DPositionAndOrientation
Public methodCreateLookAtCameraIfCurrentCamNull
Public methodInitializeResolver (Inherited from TestWithMocksOrVisually.)
Protected methodRegisterMock T  (Inherited from TestWithMocksOrVisually.)
Protected methodResolve T  (Inherited from TestWithMocksOrVisually.)
Protected methodRunAfterFirstFrame (Inherited from TestWithMocksOrVisually.)
Public methodRunTestAndDisposeResolverWhenDone (Inherited from TestWithMocksOrVisually.)
Public methodSetAndGetEntity3DComponentsDirectly
Public methodSetOrientationProperty
Public methodSetPositionProperty
Public methodSettingFloatWithoutInterpolationSetsLastFloatAlso
Public methodSettingOrientationWithoutInterpolationSetsLastOrientationAlso
Public methodSettingPositionWithoutInterpolationSetsLastPositionAlso
Top
Properties

  NameDescription
Protected propertyIsMockResolver (Inherited from TestWithMocksOrVisually.)
Top
Examples

[Test, CloseAfterFirstFrame]
public void CreateEntity3D()
{
    var entity = new Entity3D(Vector3D.Zero);
    entity.Add(Rectangle.One);
    Assert.AreEqual(Vector3D.Zero, entity.Position);
    Assert.AreEqual(Quaternion.Identity, entity.Orientation);
    Assert.IsTrue(entity.IsVisible);
    Assert.AreEqual(4, entity.GetComponentsForSaving().Count);
}
[Test, CloseAfterFirstFrame]
public void CreateEntity3DPositionAndOrientation()
{
    var position = new Vector3D(10.0f, -3.0f, 27.0f);
    var orientation = Quaternion.Identity;
    var entity = new Entity3D(position, orientation);
    Assert.AreEqual(position, entity.Position);
    Assert.AreEqual(orientation, entity.Orientation);
}
[Test, CloseAfterFirstFrame]
public void SetAndGetEntity3DComponentsDirectly()
{
    var entity = new Entity3D(Vector3D.Zero);
    entity.Set(Vector3D.One);
    Assert.AreEqual(Vector3D.One, entity.Get<Vector3D>());
    entity.Set(Quaternion.Identity);
    Assert.AreEqual(Quaternion.Identity, entity.Get<Quaternion>());
}
[Test, CloseAfterFirstFrame]
public void CannotAddTheSameTypeOfComponentTwice()
{
    var entity = new Entity3D(Vector3D.Zero);
    Assert.Throws<Entity.ComponentOfTheSameTypeAddedMoreThanOnce>(() => entity.Add(Vector3D.One));
}
[Test, CloseAfterFirstFrame]
public void SetPositionProperty()
{
    var entity = new Entity3D(Vector3D.Zero) { Position = Vector3D.One };
    Assert.AreEqual(Vector3D.One, entity.Position);
}
[Test, CloseAfterFirstFrame]
public void SetOrientationProperty()
{
    var entity = new Entity3D(Vector3D.Zero) { Orientation = Quaternion.Identity };
    Assert.AreEqual(Quaternion.Identity, entity.Orientation);
}
[Test, CloseAfterFirstFrame]
public void SettingPositionWithoutInterpolationSetsLastPositionAlso()
{
    var entity = new MockEntity3D(Vector3D.One);
    Assert.AreEqual(Vector3D.One, entity.GetLastPosition());
    entity.SetWithoutInterpolation(Vector3D.UnitX);
    Assert.AreEqual(Vector3D.UnitX, entity.Position);
    Assert.AreEqual(Vector3D.UnitX, entity.GetLastPosition());
}
[Test, CloseAfterFirstFrame]
public void SettingOrientationWithoutInterpolationSetsLastOrientationAlso()
{
    var entity = new MockEntity3D(Vector3D.Zero, Orientation1);
    Assert.AreEqual(Orientation1, entity.GetLastOrientation());
    entity.SetWithoutInterpolation(Orientation2);
    Assert.AreEqual(Orientation2, entity.Orientation);
    Assert.AreEqual(Orientation2, entity.GetLastOrientation());
}
[Test, CloseAfterFirstFrame]
public void SettingFloatWithoutInterpolationSetsLastFloatAlso()
{
    var entity = new MockEntity3D(Vector3D.Zero);
    entity.Add(90.0f);
    Assert.AreEqual(90.0f, entity.GetLastTickLerpComponents()[0]);
    entity.SetWithoutInterpolation(180.0f);
    Assert.AreEqual(180.0f, entity.Get<float>());
    Assert.AreEqual(180.0f, entity.GetLastTickLerpComponents()[0]);
}
[Test, CloseAfterFirstFrame]
public void CreateLookAtCameraIfCurrentCamNull()
{
    Camera.Current = null;
    new Entity3D(Vector3D.Zero);
    Assert.AreEqual(typeof(LookAtCamera), Camera.Current.GetType());
}
See Also