[r384]: / trunk / Library / POUs / FB_TestSuite / AddTest / svnobj  Maximize  Restore  History

Download this file

76 lines (76 with data), 9.0 kB

Gx_l:#!0…jüo^€ںر‰قSystem.StringL{f8a58466-d7f6-439f-bbb8-d4600e41d099}ImplementationL{3b83b776-fb25-43b8-99f2-3c507c9143fc}TextDocumentL{f3878285-8e4f-490b-bb1b-9acbb7eb04db}TextLinesL{a5de0b0b-1cb5-4913-ac21-9d70293ec00d}	Id
longTagText
کGVL_CfUnit.IgnoreCurrentTest := FALSE; // Reset the ignore current test flagVTrimmedTestName := F_LTrim(in := TestName);dTrimmedTestName := F_RTrim(in := TrimmedTestName);nLowerCasedTestName := F_ToLCase(in := TrimmedTestName);ئ(* If test should be disabled, make sure to remove the "disabled_"-part of it from the test name *)‚IF FIND(STR1 := LowerCasedTestName, STR2 := 'disabled_') = 1 THEND    IgnoreCurrentTestCase := TRUE;ئ    TrimmedTestName := DELETE( STR := TrimmedTestName, LEN := LEN( STR := 'disabled_' ), POS := 1);END_IFئGetCurrentTaskIndex(); // Gets the task index of where this function block instance is being run inخ(* Check if the test name already exists. Make sure there are no other tests with the same name already>   added for this test suite *)|CycleCount := GetCurrentTaskIndex.CurTaskInfo.dwIECCycleCount;´(* Iterate all the test names that up to this point have been added for this test suite *)bFOR IteratorCounter := 1 TO NumberOfTests BY 1 DO|    IF TrimmedTestName = Tests[IteratorCounter].GetName() THEN\        TestWithThisNameAlreadyExists := TRUE;¬        (* Check if a test with this name has already been called in this PLC cycle *) ‚        IF TestCycleCountIndex[IteratorCounter] = CycleCount THEN!b            GVL_CfUnit.IgnoreCurrentTest := TRUE;"ن            (* A test with this name already exists for this test suite and has already been called in this cycle.#®               Send a message notification, but only if we have not done so already. *)$†            TestDuplicateNameTrigger[IteratorCounter](CLK := TRUE);%ٍ            IF TestDuplicateNameTrigger[IteratorCounter].Q THEN // Rising edge detected. We have not reported this before&ـ                TestInstancePath := F_RemoveInstancePathAndProjectNameFromTestInstancePath(TestInstancePath :='¬                                                                                           GVL_CfUnit.CurrentTestSuiteBeingCalled^.GetInstancePath());(°                ErrorMessage := 'Test with name $'%s$' already exists in test suite $'';)®                ErrorMessage := CONCAT(STR1 := ErrorMessage, STR2 := TestInstancePath);*–                ErrorMessage := CONCAT(STR1 := ErrorMessage, STR2 := '$'');+”                Write_Device_Log(MsgCtrlMask := CmpLog.LogClass.LOG_ERROR,,L												MsgFmtStr := ErrorMessage,-N												StrArg := TrimmedTestName);.$            END_IF/        END_IF0v        TestCycleCountIndex[IteratorCounter] := CycleCount;1    END_IF2END_FOR3RIF NOT TestWithThisNameAlreadyExists THEN4T    (* Test has not been found. Add it. *)5x    Tests[IteratorCounter].SetName(Name := TrimmedTestName);6N    NumberOfTests := NumberOfTests + 1;7j    TestCycleCountIndex[NumberOfTests] := CycleCount;8B    IF IgnoreCurrentTestCase THEN9X        Tests[IteratorCounter].SetSkipped();:	END_IF;V(* Check if this test should be disabled *)<:IF IgnoreCurrentTestCase THEN=R    GVL_CfUnit.IgnoreCurrentTest := TRUE;>    RETURN;?Interface@L{a9ed5b7e-75c5-4651-af16-d2c27e98cb94}A*METHOD PUBLIC AddTestBVAR_INPUTC6    TestName : T_MaxString;DEND_VAREVARF6    IteratorCounter : UINT;G>    ErrorMessage : T_MaxString;HF    TestInstancePath : T_MaxString;I<    FunctionCallResult : DINT;J.    CycleCount : UDINT;Kd    TestWithThisNameAlreadyExists : BOOL := FALSE;LJ    LowerCasedTestName : T_MaxString;MD    TrimmedTestName : T_MaxString;NB    IgnoreCurrentTestCase : BOOL;ذذذE;ذذ	
­hعذ-
ذذ	
­iعذ-ذذ	
­jعذ-ذذ	
­kعذ-ذذ	
­lعذ-ذذ	
­mعذ-ذذ	
­nعذ-ذذ	
­oعذ-ذذ	
­pعذ-ذذ	
­qعذ-ذذ	
­rعذ-ذذ	
­sعذ-ذذ	
­îعذ-ذذ	
­ïعذ-ذذ	
­ًعذ-ذذ	
­ٌعذ-ذذ	
­ٍعذ-ذذ	
­Aعذ-ذذ	
­ئعذ-ذذ	
­اعذ-ذذ	
­بعذ-ذذ	
­ةعذ-ذذ	
­تعذ-ذذ	
­ثعذ-ذذ	
­جعذ- ذذ	
­حعذ-!ذذ	
­خعذ-"ذذ	
­دعذ-#ذذ	
­ذعذ-$ذذ	
­رعذ-%ذذ	
­زعذ-&ذذ	
­سعذ-'ذذ	
­شعذ-(ذذ	
­صعذ-)ذذ	
­ضعذ-*ذذ	
­×عذ-+ذذ	
­طعذ-,ذذ	
­ظعذ--ذذ	
­ععذ-.ذذ	
­غعذ-/ذذ	
­ـعذ-0ذذ	
­فعذ-1ذذ	
­قعذ-2ذذ	
­كعذ-ذذ	
­àعذ-3ذذ	
­لعذ-4ذذ	
­âعذ-5ذذ	
­معذ-6ذذ	
­نعذ-7ذذ	
­هعذ-8ذذ	
­وعذ-9ذذ	
­çعذ-:ذذ	
­èعذ-ذذ	
­éعذ-ذذ	
­êعذ-;ذذ	
­ëعذ-<ذذ	
­ىعذ-=ذذ	
­يعذ->ذذ	
­عذ-ذ?@ذEذذ	
­Zعذ-Aذذ	
­[عذ-Bذذ	
­\عذ-Cذذ	
­]عذ-Dذذ	
­^عذ-Eذذ	
­_عذ-Fذذ	
­`عذ-Gذذ	
­aعذ-Hذذ	
­bعذ-Iذذ	
­cعذ-Jذذ	
­dعذ-Kذذ	
­eعذ-Lذذ	
­fعذ-Mذذ	
­gعذ-Nذذ	
­عذ-D