Beispiel #1
0
        public void Create_WithAircraftDataResultingInArgumentOutOfRangeException_ThrowsCreateKernelDataException()
        {
            // Setup
            var random       = new Random(21);
            var aircraftData = new AircraftData
            {
                WingSurfaceArea         = -1 * random.NextDouble(),
                AspectRatio             = random.NextDouble(),
                OswaldFactor            = random.NextDouble(),
                MaximumLiftCoefficient  = random.NextDouble(),
                LiftCoefficientGradient = random.NextDouble(),
                ZeroLiftAngleOfAttack   = random.NextAngle(),
                RestDragCoefficient     = random.NextDouble(),
                RestDragCoefficientWithEngineFailure = random.NextDouble()
            };

            // Call
            TestDelegate call = () => AerodynamicsDataFactory.Create(aircraftData);

            // Assert
            var       exception      = Assert.Throws <CreateKernelDataException>(call);
            Exception innerException = exception.InnerException;

            Assert.That(innerException, Is.TypeOf <ArgumentOutOfRangeException>());
            Assert.That(exception.Message, Is.EqualTo(exception.Message));
        }
Beispiel #2
0
        public void Create_AircraftDataNull_ThrowsArgumentNullException()
        {
            // Call
            TestDelegate call = () => AerodynamicsDataFactory.Create(null);

            // Assert
            Assert.That(call, Throws.ArgumentNullException
                        .With.Property(nameof(ArgumentNullException.ParamName))
                        .EqualTo("aircraftData"));
        }
Beispiel #3
0
        public void Create_WithCalculation_ReturnsExpectedAircraftData()
        {
            // Setup
            var random       = new Random(21);
            var aircraftData = new AircraftData
            {
                WingSurfaceArea         = random.NextDouble(),
                AspectRatio             = random.NextDouble(),
                OswaldFactor            = random.NextDouble(),
                MaximumLiftCoefficient  = random.NextDouble(),
                LiftCoefficientGradient = random.NextDouble(),
                ZeroLiftAngleOfAttack   = random.NextAngle(),
                RestDragCoefficient     = random.NextDouble(),
                RestDragCoefficientWithEngineFailure = random.NextDouble()
            };

            // Call
            KernelAerodynamicsData data = AerodynamicsDataFactory.Create(aircraftData);

            // Assert
            AerodynamicsDataTestHelper.AssertAerodynamicsData(aircraftData, data);
        }