// Copyright Keysight Technologies 2012-2019 // This Source Code Form is subject to the terms of the Mozilla Public // License, v. 2.0. If a copy of the MPL was not distributed with this // file, you can obtain one at http://mozilla.org/MPL/2.0/. using System.Collections.Generic; using System.ComponentModel; namespace OpenTap.Engine.UnitTests.TestTestSteps { [DisplayName("Connection Manager Tests\\Dummy Three-way RF Switch")] [Description("Dummy Instrument implementing a switch to test ConnectionManager")] public class DummySwitchIntrument : Instrument { public SwitchPosition Position1 { get; private set; } public SwitchPosition Position2 { get; private set; } public SwitchPosition Position3 { get; private set; } public List Positions { get; private set; } /// /// Initializes a new instance of the class. /// public DummySwitchIntrument() { Name = "Sw"; Position1 = new SwitchPosition(this, "Pos1"); Position2 = new SwitchPosition(this, "Pos2"); Position3 = new SwitchPosition(this, "Pos3"); Positions = new List { new SwitchPosition(this, "PosN1"), new SwitchPosition(this, "PosN2"), new SwitchPosition(this, "PosN3") }; } public void SetPosition(SwitchPosition pos) { Position1.IsActive = false; Position2.IsActive = false; Position3.IsActive = false; Positions.ForEach(x => x.IsActive = false); pos.IsActive = true; } } }