public void AddComponent()
        {
            var component          = new MockMesh();
            var componentContainer = new ComponentContainer();

            Assert.IsTrue(componentContainer.TryAddComponent(component));
        }
示例#2
0
        public void GetBoundaryEdges_Polygon([NUnit.Framework.Range(1, 5)] int numberOfQuads)
        {
            MockMesh mesh          = Polygon(numberOfQuads);
            var      boundaryEdges = NavmeshProcessor.GetBoundaryEdges(mesh.indices, mesh.vertices).ToArray();

            for (int i = 0; i < numberOfQuads; i++)
            {
                var v0 = new Vector3(i, 0);
                var v1 = new Vector3(i + 1, 0);
                var v2 = new Vector3(i, 1);
                var v3 = new Vector3(i + 1, 1);

                //Assert Contains top and bottom edge
                AssertContainsOne(boundaryEdges, true, (v0, v1), (v1, v0));
                AssertContainsOne(boundaryEdges, true, (v2, v3), (v3, v2));

                //Assert Doesn't contain diagonal edge
                AssertContainsOne(boundaryEdges, false, (v1, v2), (v2, v1));

                //Assert If beginning -> contains left edge
                AssertContainsOne(boundaryEdges, i == 0, (v0, v2), (v2, v0));
                //Assert If end -> contains right edge
                AssertContainsOne(boundaryEdges, i + 1 == numberOfQuads, (v1, v3), (v3, v1));
            }

            //Assert Is of expected length
            Assert.AreEqual(2 * numberOfQuads + 2, boundaryEdges.Length);
        }
        public void RemoveComponentType()
        {
            var component          = new MockMesh();
            var componentContainer = new ComponentContainer();

            componentContainer.TryAddComponent(component);

            Assert.IsTrue(componentContainer.TryRemoveComponent <MockMesh>());
            Assert.IsFalse(componentContainer.HasComponent <MockMesh>());
        }
示例#4
0
        public void AddComponent()
        {
            // Arrange
            var component = new MockMesh();

            // Act
            var componentContainer = new ComponentContainer();

            // Assert
            Assert.True(componentContainer.TryAddComponent(component));
        }
        public void DoesntHaveComponent()
        {
            var component          = new MockMesh();
            var componentContainer = new ComponentContainer();

            Assert.IsFalse(componentContainer.HasComponent <MockMesh>());

            componentContainer.TryAddComponent(component);

            Assert.IsFalse(componentContainer.HasComponent <MockTransform>());
        }
        public void GetComponent()
        {
            var component          = new MockMesh();
            var componentContainer = new ComponentContainer();

            componentContainer.TryAddComponent(component);

            MockMesh gotComponent;

            Assert.IsTrue(componentContainer.TryGetComponent(out gotComponent));
            Assert.AreSame(component, gotComponent);
        }
示例#7
0
        public void HasComponent()
        {
            // Arrange
            var component          = new MockMesh();
            var componentContainer = new ComponentContainer();

            // Act
            componentContainer.TryAddComponent(component);

            // Assert
            Assert.True(componentContainer.HasComponent <MockMesh>());
        }
        public void CantGetComponent()
        {
            var component          = new MockMesh();
            var componentContainer = new ComponentContainer();

            componentContainer.TryAddComponent(component);

            MockTransform gotComponent;

            Assert.IsFalse(componentContainer.TryGetComponent(out gotComponent));
            Assert.AreNotSame(component, gotComponent);
            Assert.IsNull(gotComponent);
        }
示例#9
0
        public void RemoveComponentInstance()
        {
            // Arrange
            var component          = new MockMesh();
            var componentContainer = new ComponentContainer();

            // Act
            componentContainer.TryAddComponent(component);

            // Assert
            Assert.True(componentContainer.TryRemoveComponent(component));
            Assert.False(componentContainer.HasComponent <MockMesh>());
        }
示例#10
0
        public void GetComponent()
        {
            // Arrange
            var component          = new MockMesh();
            var componentContainer = new ComponentContainer();

            // Act
            componentContainer.TryAddComponent(component);

            // Assert
            Assert.True(componentContainer.TryGetComponent(out MockMesh gotComponent));
            Assert.Same(component, gotComponent);
        }
示例#11
0
        private static MockMesh Polygon(int numberOfQuads)
        {
            MockMesh mesh = new MockMesh {
                indices = new List <int>(), vertices = new List <Vector3>()
            };

            for (int i = 0; i < numberOfQuads; i++)
            {
                MockMesh quad = Quad(i);
                mesh.indices.AddRange(quad.indices);
                mesh.vertices.AddRange(quad.vertices);
            }
            return(mesh);
        }
示例#12
0
        public void CantGetComponent()
        {
            // Arrange
            var component          = new MockMesh();
            var componentContainer = new ComponentContainer();

            // Act
            componentContainer.TryAddComponent(component);

            // Assert
            Assert.False(componentContainer.TryGetComponent(out MockTransform gotComponent));
            Assert.NotSame(component, gotComponent);
            Assert.Null(gotComponent);
        }
示例#13
0
 public static void Run()
 {
     var mesh = new MockMesh();
     var biologicalEquation = new BiologicalEquation(mesh);
     biologicalEquation.SolveAndOutput();
 }