public void Initialize(ISequenceFlowContainer flowContainer) { ISequenceGroup sequenceGroup = flowContainer as ISequenceGroup; this.Info.Hash = sequenceGroup.Info.Hash; this.Info.Modified = true; this.Info.ModifiedTime = DateTime.Now; this.Info.Path = sequenceGroup.Info.SequenceParamFile; this.Info.Version = sequenceGroup.Info.Version; this.VariableValues = new VariableInitValueCollection(); foreach (IVariable variable in sequenceGroup.Variables) { VariableInitValue variableInitValue = new VariableInitValue() { Name = variable.Name }; variableInitValue.Initialize(variable); this.VariableValues.Add(variableInitValue); } this.SetUpParameters = new SequenceParameter(); this.SetUpParameters.Initialize(sequenceGroup.SetUp); this.SequenceParameters = new SequenceParameterCollection(); foreach (ISequence sequence in sequenceGroup.Sequences) { SequenceParameter parameter = new SequenceParameter(); parameter.Initialize(sequence); SequenceParameters.Add(parameter); } this.TearDownParameters = new SequenceParameter(); this.TearDownParameters.Initialize(sequenceGroup.TearDown); }
private static void FillParameterDataToSequenceData(ISequence sequence, ISequenceParameter parameter) { for (int i = 0; i < sequence.Variables.Count; i++) { parameter.VariableValues[i].Value = sequence.Variables[i].Value; } for (int i = 0; i < sequence.Steps.Count; i++) { FillParameterDataToSequenceData(sequence.Steps[i], parameter.StepParameters[i]); } }
private static void SetParameterToSequenceData(ISequence sequenece, ISequenceParameter parameter) { for (int i = 0; i < sequenece.Variables.Count; i++) { IVariable variable = sequenece.Variables[i]; if (!variable.Name.Equals(parameter.VariableValues[i].Name)) { ILogService logService = TestflowRunner.GetInstance().LogService; logService.Print(LogLevel.Warn, CommonConst.PlatformLogSession, 0, $"Variable{variable.Name} {sequenece.Name} value in parameter data is invalid."); I18N i18N = I18N.GetInstance(Constants.I18nName); throw new TestflowDataException(ModuleErrorCode.UnmatchedParameter, i18N.GetStr("UnmatchedData")); } variable.Value = parameter.VariableValues[i].Value; } for (int i = 0; i < sequenece.Steps.Count; i++) { SetParameterToSequenceData(sequenece.Steps[i], parameter.StepParameters[i]); } }