Exemplo n.º 1
0
        private void CreateDriveType()
        {
            if (DriveType == null && DriveTypeDiscriminator != null && VerificationTest != null)
            {
                switch (DriveTypeDiscriminator)
                {
                case "Rotary":
                    DriveType = new RotaryDrive(this.VerificationTest.Instrument);
                    break;

                case "Mechanical":
                    DriveType    = new MechanicalDrive(this.VerificationTest.Instrument);
                    AppliedInput = DriveType.MaxUnCorrected();
                    break;

                default:
                    throw new NotSupportedException($"Drive type {DriveTypeDiscriminator} is not supported.");
                }
            }
        }
Exemplo n.º 2
0
        public static async Task <MechanicalTestManager> Create(IUnityContainer container, EvcCommunicationClient commClient)
        {
            await commClient.Connect();

            var itemValues = await commClient.GetItemValues(commClient.ItemDetails.GetAllItemNumbers());

            await commClient.Disconnect();

            var instrument = new Instrument(InstrumentType.MiniAT, itemValues);
            var driveType  = new MechanicalDrive(instrument);

            CreateVerificationTests(instrument, driveType);

            var volumeTest    = instrument.VolumeTest;
            var volumeManager = new MechanicalVolumeVerification(container.Resolve <IEventAggregator>(), volumeTest,
                                                                 commClient);

            var manager = new MechanicalTestManager(container, instrument, commClient, volumeManager, null);

            container.RegisterInstance <TestManager>(manager);

            return(manager);
        }