public ReadFPS(ObservableCollection <string> mandatoryFaults, ObservableCollection <string> optionalFaults, ObservableCollection <string> disjuctionFaults) { InitKeyword(); ((ListDependentParameter)DependentParameters.First(x => x.Name == "RB_mandatory_faults")).ValueList = mandatoryFaults; ((ListDependentParameter)DependentParameters.First(x => x.Name == "RB_optional_faults")).ValueList = optionalFaults; ((ListDependentParameter)DependentParameters.First(x => x.Name == "RB_disjunction_faults")).ValueList = disjuctionFaults; }
public DamageDLC(string msgName) { InitKeyword(); _msgName = msgName; ((ScalarDependentParameter)DependentParameters.First(x => x.Name == "message")).ScalarValue = msgName; ((ScalarDependentParameter)DependentParameters.First(x => x.Name == "reduction")).ScalarValue = @"-1"; }
private void InitKeyword() { Name = "do_Line_manipulation"; Description = @"Do line manipulations (interrupt or short) in LabCar Breakout Box. >>Use along with ‘reset_Line_manipulation’. "; Delay = 100; UsageLimit = 1; AddPairAfter("reset_Line_manipulation"); PairType = KeywordPairType.One2One; string paraDesc = @"Specify the line names to be manipulated. (either interrupt or short) >>Line names have to be the labels which are defined in LabCar mapping file or ‘Kxxx’. >>‘xxx’ in ‘Kxxx’ is the number on the LabCar break out box. e.g.1 test_sequence = @(…,’do_Line_manipulation ‘,…,’reset_Line_manipulation’,…) interrupt_lines = @( ‘EVFL’ , ‘EVFR’ , ‘AVFL’ , ‘AVRR’ ) e.g.2 test_sequence = @(…,’do_Line_manipulation ‘,…,’reset_Line_manipulation’,…) short_lines = @( ‘EVRR’ , ‘GND’) "; DependentParameters.Add(new ListDependentParameter("interrupt_lines", paraDesc, null, "")); DependentParameters.Add(new ListDependentParameter("short_lines", paraDesc, null, "")); ParametrizationType = DependentKeywordParameterizationType.SeperateParameterized; ParameterCompositionOption = DependentKeywordParameterCompositionOption.Disjunctive; }
private void InitKeyword() { Name = "Xflash_Algo"; Description = @"Flash a hex file. Also does ECU OFF -> ECU ON after flash the hex file, and reads the current version of the hex file available inside the ECU. >>Need to put the hex file in …\STEPS_BBxxxxx_config\Tools\MM6 "; Delay = 0; UsageLimit = 255; DependentParameters.Add(new ListDependentParameter("xflash_file_name", @"Specify the hex file name to be flashed. e.g. test_sequence = @(…,’Xflash_Algo’,…) xflash_file_name = @(‘PRJ_Hexfile_BBxxxxx_Vxxxx_ECB_CSW.hex’) ", null, "0")); ParameterCompositionOption = DependentKeywordParameterCompositionOption.Unique; ParametrizationType = DependentKeywordParameterizationType.SeperateParameterized; }
private void InitKeyword() { Name = "start_continuous_request"; Description = @"Send a diagnosis request command to ECU continuously (every 50ms). >>Following settings are required in spa-file to get this keyword to work. - select “All responses” ( in “Extensions” -> “Receive mode”) - set “False” for “Show background communication” (in “Extensions”) >>Use along with ‘stop_continuous_request’. "; Delay = 0; UsageLimit = 255; DependentParameters.Add(new ListDependentParameter("Diag_Request_Continuous", @"Specify the commands to be sent to ECU continuously. e.g. test_sequence = @(…,’start_continuous_request’,…,’start_continuous_request’,…) Diag_Request_Continuous = @(‘18 00 FF 00’ , ‘14 FF 00’) ", null, "0")); AddPairAfter("stop_continuous_request"); PairType = KeywordPairType.One2One; ParameterCompositionOption = DependentKeywordParameterCompositionOption.Unique; ParametrizationType = DependentKeywordParameterizationType.SeperateParameterized; }
public EcuOnOff(int offTimeInMs, int onTimeInMs, int repeat) { InitKeyword(); ((ScalarDependentParameter)DependentParameters.First(x => x.Name == "Off_Time")).ScalarValue = offTimeInMs.ToString(); ((ScalarDependentParameter)DependentParameters.First(x => x.Name == "On_Time")).ScalarValue = onTimeInMs.ToString(); ((ScalarDependentParameter)DependentParameters.First(x => x.Name == "Repeat")).ScalarValue = repeat.ToString(); }
public override bool ParametersValidated() { ListDependentParameter paraInterrupt = (ListDependentParameter)DependentParameters.First(x => x.Name == "interrupt_lines"); ListDependentParameter paraShort = (ListDependentParameter)DependentParameters.First(x => x.Name == "short_lines"); if ((paraInterrupt.ValueList != null) && (paraShort.ValueList != null)) { if (paraInterrupt.ValueList.Count > 0 && paraShort.ValueList.Count == 2) { return(true); } } else { if ((paraInterrupt.ValueList != null) && paraInterrupt.ValueList.Count > 0) { return(true); } if ((paraShort.ValueList != null) && paraShort.ValueList.Count == 2) { return(true); } } return(false); }
public GetSeed(int index, ObservableCollection <string> diagRequest, ObservableCollection <string> expResponse) { InitKeyword(); _index = index; ((ListDependentParameter)DependentParameters.First(x => x.Name == "Diag_Request")).ValueList = diagRequest; ((ListDependentParameter)DependentParameters.First(x => x.Name == "Exp_Response")).ValueList = expResponse; }
private void InitKeyword() { Name = "set_model_values"; Description = @"Edit LabCar model variables available in VDM2EID gui in open loop. >>Use along with ‘undo_set_model_values’. "; Delay = 0; UsageLimit = 255; DependentParameters.Add(new HashDependentParameter("set_model_value_to_constant", @"Specify the variable names and values to be set. >>The same variable names as used in LabCar have to be given. Values have to be physical. e.g. test_sequence = @(…,’set_model_values’,…,’set_model_values’,…,’undo_set_model_values’,…) set_model_value_to_constant = %(‘ax’ => ‘3.0’, ‘BatteryVoltage’ => ‘15.0’) set_model_value_to_constant_2 = %(‘ax’ => ‘5.0’, ‘ay’ => ‘1.5’) ", null, "0")); AddPairAfter("undo_set_model_values"); PairType = KeywordPairType.One2One; ParameterCompositionOption = DependentKeywordParameterCompositionOption.Unique; ParametrizationType = DependentKeywordParameterizationType.SeperateParameterized; }
public override bool ParametersValidated() { if (((ListDependentParameter)DependentParameters.First(x => x.Name == "stimuli_file_name")).ValueList.All(x => x.EndsWith(".lcs", StringComparison.CurrentCultureIgnoreCase))) { return(true); } return(false); }
public override bool ParametersValidated() { if (((HashDependentParameter)DependentParameters.First(x => x.Name == "line_information")).KeyValuePairList.Count > 0) { return(true); } return(false); }
public override bool ParametersValidated() { if (((ListDependentParameter)DependentParameters.First(x => x.Name == "xflash_file_name")).ValueList.Count > 0) { return(true); } return(false); }
public override bool ParametersValidated() { if (((ListDependentParameter)DependentParameters.First(x => x.Name == "CAN_signals_expected")).ValueList.Count > 0) { return(true); } return(false); }
public override bool ParametersValidated() { if (((ListDependentParameter)DependentParameters.First(x => x.Name == "Diag_Request_Continuous")).ValueList.Count > 0) { return(true); } return(false); }
public override bool ParametersValidated() { if (((HashDependentParameter)DependentParameters.First(x => x.Name == "set_model_value_to_constant")).KeyValuePairList.Count > 0) { return(true); } return(false); }
public override bool ParametersValidated() { if (!String.IsNullOrEmpty(((ScalarDependentParameter)DependentParameters.First(x => x.Name == "SigNameChecksum")).Value)) { return(true); } return(false); }
public override bool ParametersValidated() { if (((ListDependentParameter)DependentParameters.First(x => x.Name == "Text_for_user")).ValueList.Count > 0) { return(true); } return(false); }
public override bool ParametersValidated() { if (((HashDependentParameter)DependentParameters.First(x => x.Name == "eval_ECU_signals")).KeyValuePairList.Count > 0) { return(true); } return(false); }
public override bool ParametersValidated() { if (((ListDependentParameter)DependentParameters.First(x => x.Name == "lamp_expected")).ValueList.Count > 0) { return(true); } //throw new Exception("Liansheng Debugging"); return(false); }
public override bool ParametersValidated() { if (((HashDependentParameter)DependentParameters.First(x => x.Name == "Check_CAN_signals1")).KeyValuePairList.Count == 0 && ((HashDependentParameter)DependentParameters.First(x => x.Name == "Check_CAN_signals2")).KeyValuePairList.Count == 0) { return(false); } return(true); }
public override bool ParametersValidated() { ObservableCollection <string> varExp = ((ListDependentParameter)DependentParameters.First(x => x.Name == "vr_expected")).ValueList; if (varExp.Count > 0 && varExp.All(x => (x == "ON") || (x == "OFF"))) { return(true); } return(false); }
public override bool ParametersValidated() { if (((ListDependentParameter)DependentParameters.First(x => x.Name == "RB_mandatory_faults")).ValueList.Count == 0 && ((ListDependentParameter)DependentParameters.First(x => x.Name == "RB_optional_faults")).ValueList.Count == 0 && ((ListDependentParameter)DependentParameters.First(x => x.Name == "RB_disjunction_faults")).ValueList.Count == 0) { return(false); } return(true); }
public override bool ParametersValidated() { ObservableCollection <string> varExp = ((ListDependentParameter)DependentParameters.First(x => x.Name == "diag_sequences")).ValueList; if (varExp.Count > 0) { return(true); } return(false); }
private void InitKeyword() { Name = "check_CAN_signal"; Description = @"Read CAN signals which names and expected values are specified in a par-file. "; Delay = 0; UsageLimit = 2; DependentParameters.Add(new HashDependentParameter("Check_CAN_signals1", @"Specify the signal names and expected values. >>Maximum 10 CAN signals can be read. >> Expected values can be only physical value (decimal value with a factor/offset). >>This parameter name has been renamed (from CAN_signals_expected1/2) in V1.7 e.g. test_sequence = @(…,’check_CAN_signal’,…,’ check_CAN_signal’,…) Check_CAN_signals1 = %(‘sig_A’ => ‘0’ , ‘sig_B’ => ‘!=-1.5’ , ‘sig_C’ => ‘<2.25’ ) Check_CAN_signals2 = %(‘sig_A’ => ‘2-5’ , ‘sig_D’ => ’10%5’ , ‘sig_E’ => ‘100?5’) Options to specify expected value 'sig_A' => '!=x' not equal to x 'sig_A' => '<x' less than x 'sig_A' => '>x' more than x 'sig_A' => 'x-y' range ( from x to y ) 'sig_A' => 'x%y' relative tolerance ( from x*(1-(y/100)) to x*(1+(y/100)) ) 'sig_A' => 'x?y' absolute tolerance ( from (x-y) to (x+y) ) ", null, "0")); DependentParameters.Add(new HashDependentParameter("Check_CAN_signals2", @"Specify the signal names and expected values. >>Maximum 10 CAN signals can be read. >> Expected values can be only physical value (decimal value with a factor/offset). >>This parameter name has been renamed (from CAN_signals_expected1/2) in V1.7 e.g. test_sequence = @(…,’check_CAN_signal’,…,’ check_CAN_signal’,…) Check_CAN_signals1 = %(‘sig_A’ => ‘0’ , ‘sig_B’ => ‘!=-1.5’ , ‘sig_C’ => ‘<2.25’ ) Check_CAN_signals2 = %(‘sig_A’ => ‘2-5’ , ‘sig_D’ => ’10%5’ , ‘sig_E’ => ‘100?5’) Options to specify expected value 'sig_A' => '!=x' not equal to x 'sig_A' => '<x' less than x 'sig_A' => '>x' more than x 'sig_A' => 'x-y' range ( from x to y ) 'sig_A' => 'x%y' relative tolerance ( from x*(1-(y/100)) to x*(1+(y/100)) ) 'sig_A' => 'x?y' absolute tolerance ( from (x-y) to (x+y) ) ", null, "0")); ParameterCompositionOption = DependentKeywordParameterCompositionOption.Combinatorial; ParametrizationType = DependentKeywordParameterizationType.SeperateParameterized; }
private void InitKeyword() { Name = "wait_"; Description = @"Wait a given time in millisecond. >>‘xxxx’ = wait time value. e.g. test_sequence = @(…,’wait_5000’,…,’wait_10000’,…,’wait_15000’,…) "; Delay = 0; UsageLimit = 255; DependentParameters.Add(new ScalarDependentParameter("duration", "Time to wait in sequence", "", "0")); ParameterCompositionOption = DependentKeywordParameterCompositionOption.Unique; ParametrizationType = DependentKeywordParameterizationType.InlineParameterized; }
public ReadFPS(ObservableCollection <string> faults, FaultType faultType) { InitKeyword(); if (faultType == FaultType.Mandatory) { ((ListDependentParameter)DependentParameters.First(x => x.Name == "RB_mandatory_faults")).ValueList = faults; } else if (faultType == FaultType.Optional) { ((ListDependentParameter)DependentParameters.First(x => x.Name == "RB_optional_faults")).ValueList = faults; } else if (faultType == FaultType.Disjuction) { ((ListDependentParameter)DependentParameters.First(x => x.Name == "RB_disjunction_faults")).ValueList = faults; } }
private void InitKeyword() { Name = "waitForUser"; Description = @"Suspend a sequence in the middle of execution and show a pop-up message on the screen. After press “OK” button it will resume the sequence. Can be used for semi automation test to stop a sequence and do some manipulations by manual. "; Delay = 0; UsageLimit = 255; DependentParameters.Add(new ListDependentParameter("Text_for_user", @"Give a message that will be displayed on a pop up window. e.g. test_sequence = @(…,’waitForUser’,…,’ waitForUser’,…) Text_for_user = @( ‘free comment1’ , ‘free comment2’ ) ", null, "0")); ParameterCompositionOption = DependentKeywordParameterCompositionOption.Unique; ParametrizationType = DependentKeywordParameterizationType.SeperateParameterized; }
private void InitKeyword() { Name = "ECU_"; Description = @"Turn ECU OFF and ON for n-times. >>‘xxxx’ = wait time in msec after ECU OFF >>‘yyyy’ = wait time in msec after ECU ON >>‘zzz’ = number of times ECU OFF->ON will be done. e.g. test_sequence = @(…,’ECU_OFF_500_ON_300_20’,…) "; Delay = 0; UsageLimit = 255; DependentParameters.Add(new ScalarDependentParameter("Off_Time", "Time in Ecu Off", "", "0")); DependentParameters.Add(new ScalarDependentParameter("On_Time", "Time in Ecu On", "", "0")); DependentParameters.Add(new ScalarDependentParameter("Repeat", "Repeat times", "", "0")); ParameterCompositionOption = DependentKeywordParameterCompositionOption.Unique; ParametrizationType = DependentKeywordParameterizationType.InlineParameterized; }
private void InitKeyword() { Name = "eval_ECU_signals"; Description = @"Evaluate ECU signals with MM6. "; Delay = 0; UsageLimit = 255; DependentParameters.Add(new HashDependentParameter("eval_ECU_signals", @"Specify the variable names and values to be set. >>The same variable names as used in LabCar have to be given. Values have to be physical. e.g. test_sequence = @(…,’eval_ECU_signals’,…,’eval_ECU_signals’,…) Eval_ECU_signals1 = %(‘ABS_active_120ms’ => ‘1’, ‘HmiDevice_EbdFault’ => ‘0’) Eval_ECU_signals2 = %(‘ABS_active_120ms’ => ‘0’, ‘HmiDevice_EbdFault’ => ‘1’) ", null, "0")); // PairType = KeywordPairType.One2One; ParameterCompositionOption = DependentKeywordParameterCompositionOption.Unique; ParametrizationType = DependentKeywordParameterizationType.SeperateParameterized; }
public UndoChecksumFail(string SigNameChecksum) { InitKeyword(); ((ScalarDependentParameter)DependentParameters.First(x => x.Name == "SigNameChecksum")).ScalarValue = SigNameChecksum; }