Beispiel #1
0
        public void TakeOffWeight_ValueChanges_RaisesNotifyPropertyChangedEvent()
        {
            // Setup
            var data      = new AircraftData();
            var viewModel = new AircraftDataTabViewModel(data);

            bool propertyChangedTriggered      = false;
            PropertyChangedEventArgs eventArgs = null;

            viewModel.PropertyChanged += (o, e) =>
            {
                propertyChangedTriggered = true;
                eventArgs = e;
            };

            var    random   = new Random(21);
            double newValue = random.NextDouble();

            // Call
            viewModel.TakeOffWeight = newValue;

            // Assert
            Assert.That(propertyChangedTriggered, Is.True);

            Assert.That(eventArgs, Is.Not.Null);
            Assert.That(eventArgs.PropertyName, Is.EqualTo(nameof(AircraftDataTabViewModel.TakeOffWeight)));
            Assert.That(data.TakeOffWeight, Is.EqualTo(newValue));
        }
Beispiel #2
0
        public static void Constructor_ExpectedValues()
        {
            // Setup
            var data = new AircraftData();

            // Call
            var viewModel = new AircraftDataTabViewModel(data);

            // Assert
            Assert.That(viewModel, Is.InstanceOf <ITabViewModel>());
            Assert.That(viewModel, Is.InstanceOf <ViewModelBase>());
            Assert.That(viewModel.TabName, Is.EqualTo("Aircraft data"));

            Assert.That(viewModel.TakeOffWeight, Is.EqualTo(data.TakeOffWeight));
            Assert.That(viewModel.PitchGradient, Is.EqualTo(data.PitchGradient));
            Assert.That(viewModel.MaximumPitchAngle, Is.EqualTo(data.MaximumPitchAngle));

            Assert.That(viewModel.WingSurfaceArea, Is.EqualTo(data.WingSurfaceArea));
            Assert.That(viewModel.AspectRatio, Is.EqualTo(data.AspectRatio));
            Assert.That(viewModel.OswaldFactor, Is.EqualTo(data.OswaldFactor));

            Assert.That(viewModel.MaximumLiftCoefficient, Is.EqualTo(data.MaximumLiftCoefficient));
            Assert.That(viewModel.LiftCoefficientGradient, Is.EqualTo(data.LiftCoefficientGradient));
            Assert.That(viewModel.ZeroLiftAngleOfAttack, Is.EqualTo(data.ZeroLiftAngleOfAttack));

            Assert.That(viewModel.RestDragCoefficientWithEngineFailure, Is.EqualTo(data.RestDragCoefficientWithEngineFailure));
            Assert.That(viewModel.RestDragCoefficient, Is.EqualTo(data.RestDragCoefficient));

            Assert.That(viewModel.RollResistanceCoefficient, Is.EqualTo(data.RollResistanceCoefficient));
            Assert.That(viewModel.RollResistanceWithBrakesCoefficient, Is.EqualTo(data.RollResistanceWithBrakesCoefficient));
        }
Beispiel #3
0
        private static void AssertAircraftData(AircraftDataTabViewModel expected,
                                               AircraftData actual)
        {
            Assert.That(actual.TakeOffWeight, Is.EqualTo(expected.TakeOffWeight));
            Assert.That(actual.PitchGradient, Is.EqualTo(expected.PitchGradient));
            Assert.That(actual.MaximumPitchAngle, Is.EqualTo(expected.MaximumPitchAngle));

            Assert.That(actual.WingSurfaceArea, Is.EqualTo(expected.WingSurfaceArea));
            Assert.That(actual.AspectRatio, Is.EqualTo(expected.AspectRatio));
            Assert.That(actual.OswaldFactor, Is.EqualTo(expected.OswaldFactor));

            Assert.That(actual.MaximumLiftCoefficient, Is.EqualTo(expected.MaximumLiftCoefficient));
            Assert.That(actual.LiftCoefficientGradient, Is.EqualTo(expected.LiftCoefficientGradient));
            Assert.That(actual.ZeroLiftAngleOfAttack, Is.EqualTo(expected.ZeroLiftAngleOfAttack));

            Assert.That(actual.RestDragCoefficientWithEngineFailure, Is.EqualTo(expected.RestDragCoefficientWithEngineFailure));
            Assert.That(actual.RestDragCoefficient, Is.EqualTo(expected.RestDragCoefficient));

            Assert.That(actual.RollResistanceCoefficient, Is.EqualTo(expected.RollResistanceCoefficient));
            Assert.That(actual.RollResistanceWithBrakesCoefficient, Is.EqualTo(expected.RollResistanceWithBrakesCoefficient));
        }
Beispiel #4
0
        private static void SetAircraftData(AircraftDataTabViewModel viewModel, int seed)
        {
            var random = new Random(seed);

            viewModel.TakeOffWeight     = random.NextDouble();
            viewModel.PitchGradient     = random.NextAngle();
            viewModel.MaximumPitchAngle = random.NextAngle();

            viewModel.WingSurfaceArea = random.NextDouble();
            viewModel.AspectRatio     = random.NextDouble();
            viewModel.OswaldFactor    = random.NextDouble();

            viewModel.MaximumLiftCoefficient  = random.NextDouble();
            viewModel.LiftCoefficientGradient = random.NextDouble();
            viewModel.ZeroLiftAngleOfAttack   = random.NextAngle();

            viewModel.RestDragCoefficient = random.NextDouble();
            viewModel.RestDragCoefficientWithEngineFailure = random.NextDouble() + viewModel.RestDragCoefficient;

            viewModel.RollResistanceCoefficient           = random.NextDouble();
            viewModel.RollResistanceWithBrakesCoefficient = random.NextDouble() + viewModel.RollResistanceCoefficient;
        }