using OpenTap; using OpenTap.Addin; using OpenTap.Addin.Annotation; using OpenTap.Addin.Util; using System.Collections.Concurrent; using System.Collections.ObjectModel; using System.Xml.Serialization; namespace AddInPlugin { [AllowAnyChild] public class ContextStep : TestStep { private ObservableCollection variables = new ObservableCollection(); [Display("参数")] [TreeData] public ObservableCollection Variables { get => variables; set { variables = value; OnPropertyChanged(nameof(Variables)); } } [XmlIgnore] private RuntimeVariable variableContext; public override void PrePlanRun() { //ConcurrentDictionary runtimeVariablePool = new ConcurrentDictionary(); //foreach (var data in Variables) //{ // RuntimeVariable runTime = data.ToRuntime(); // if (runTime == null) continue; // runtimeVariablePool[runTime.Name] = runTime; //} //variableContext = new RuntimeVariable(ConstNames.ParametersName, runtimeVariablePool); } public RuntimeVariable GetContextVariables() { return variableContext; } protected override void RunDetail() { RunChildSteps(); } } }