Esempio n. 1
0
        public void TestBuiltInSensorType()
        {
            // Unknown
            {
                var sensor = new TestSensor("test");
                Assert.AreEqual(sensor.GetBuiltInSensorType(), BuiltInSensorType.Unknown);

                var stackingSensor = new StackingSensor(sensor, 2);
                Assert.AreEqual(BuiltInSensorType.Unknown, stackingSensor.GetBuiltInSensorType());
            }

            // Vector
            {
                var sensor = new VectorSensor(6);
                Assert.AreEqual(BuiltInSensorType.VectorSensor, sensor.GetBuiltInSensorType());

                var stackingSensor = new StackingSensor(sensor, 2);
                Assert.AreEqual(BuiltInSensorType.VectorSensor, stackingSensor.GetBuiltInSensorType());
            }

            var gameObject = new GameObject();

            // Ray
            {
                var sensorComponent = gameObject.AddComponent <RayPerceptionSensorComponent3D>();
                sensorComponent.DetectableTags = new List <string>();
                var sensor = sensorComponent.CreateSensor();
                Assert.AreEqual(BuiltInSensorType.RayPerceptionSensor, sensor.GetBuiltInSensorType());

                var stackingSensor = new StackingSensor(sensor, 2);
                Assert.AreEqual(BuiltInSensorType.RayPerceptionSensor, stackingSensor.GetBuiltInSensorType());
            }

            // Camera
            {
                var sensorComponent = gameObject.AddComponent <CameraSensorComponent>();
                var sensor          = sensorComponent.CreateSensor();
                Assert.AreEqual(BuiltInSensorType.CameraSensor, sensor.GetBuiltInSensorType());
            }

            // RenderTexture
            {
                var sensorComponent = gameObject.AddComponent <RenderTextureSensorComponent>();
                var sensor          = sensorComponent.CreateSensor();
                Assert.AreEqual(BuiltInSensorType.RenderTextureSensor, sensor.GetBuiltInSensorType());
            }
        }