[r322]: / trunk / Library / POUs / FB_CdsTestResultLogger / LogTestSuiteResults / svnobj  Maximize  Restore  History

Download this file

124 lines (124 with data), 16.3 kB

Gx_ln?!0…jüoÍ35&Õy-¯tESystem.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
rCfUnitTestResults REF= TestResults.GetTestSuiteResults();äIF PrintingTestSuiteResultNumber <= GVL_CfUnit.NumberOfInitializedTestSuites AND NOT PrintedTestSuitesResults THENò    PrintingTestSuiteTrigger(CLK := GVL_CfUnit.TestSuiteAddresses[PrintingTestSuiteResultNumber]^.AreAllTestsFinished());L    IF PrintingTestSuiteTrigger.Q THENŽ        StringToPrint := CONCAT(STR1 := '| Test suite $'%s$' with ID=',ˆ                                STR2 := UINT_TO_STRING(CfUnitTestResults.TestSuiteResults[PrintingTestSuiteResultNumber].Identity));l        StringToPrint := CONCAT(STR1 := StringToPrint,z                                STR2 := ' finished running');T        (* Print test suite name and ID *)¢        WRITE_DEVICE_LOG(MsgCtrlMask := UDINT_TO_DWORD(CmpLog.LogClass.LOG_INFO),Ž                                            MsgFmtStr := StringToPrint,ü                                            StrArg := CfUnitTestResults.TestSuiteResults[PrintingTestSuiteResultNumber].Name);b        (* Print number of tests in test suite *)`        StringToPrint := CONCAT(STR1 := '| ID=',z                                STR2 := ' number of tests=');’                                STR2 := UINT_TO_STRING(CfUnitTestResults.TestSuiteResults[PrintingTestSuiteResultNumber].NumberOfTests));j                          MsgFmtStr := StringToPrint,P                          StrArg := ''); p        (* Print number of failed tests in test suite *)!ˆ                                STR2 := ' number of failed tests=');"ž                                STR2 := UINT_TO_STRING(CfUnitTestResults.TestSuiteResults[PrintingTestSuiteResultNumber].NumberOfFailedTests));#        $n        (* Iterate and print all tests in test suite *)%†        FOR TestsInTestSuiteCounter := 1 TO CfUnitTestResults.TestSuiteResults[PrintingTestSuiteResultNumber].NumberOfTests BY 1 DO&B            (* Print test name *)'ª            WRITE_DEVICE_LOG(MsgCtrlMask := UDINT_TO_DWORD(CmpLog.LogClass.LOG_INFO),(v                             MsgFmtStr := '| Test name=%s',)¸                             StrArg := CfUnitTestResults.TestSuiteResults[PrintingTestSuiteResultNumber].TestCaseResults[TestsInTestSuiteCounter].TestName);*N            (* Print test class name *)+‚                             MsgFmtStr := '| Test class name=%s',,                             StrArg := CfUnitTestResults.TestSuiteResults[PrintingTestSuiteResultNumber].TestCaseResults[TestsInTestSuiteCounter].TestClassName);-@                                .Š            (* Print test result/status (SUCCESS, FAILED, SKIPPED) *)/–            IF CfUnitTestResults.TestSuiteResults[PrintingTestSuiteResultNumber].TestCaseResults[TestsInTestSuiteCounter].TestIsFailed THEN0¸                StringToPrint := CONCAT(STR1 := '| Test status=', STR2 := TEST_STATUS_FAIL);1ž            ELSIF CfUnitTestResults.TestSuiteResults[PrintingTestSuiteResultNumber].TestCaseResults[TestsInTestSuiteCounter].TestIsSkipped THEN2¸                StringToPrint := CONCAT(STR1 := '| Test status=', STR2 := TEST_STATUS_SKIP);3             ELSE4¸                StringToPrint := CONCAT(STR1 := '| Test status=', STR2 := TEST_STATUS_PASS);5			END_IF6p                             MsgFmtStr := StringToPrint,7V                             StrArg := '');8            9~            (* Print assertion/failure message (if existing) *):º            IF LEN(STR := CfUnitTestResults.TestSuiteResults[PrintingTestSuiteResultNumber].TestCaseResults[TestsInTestSuiteCounter].FailureMessage) > 0 THEN;²                WRITE_DEVICE_LOG(MsgCtrlMask := UDINT_TO_DWORD(CmpLog.LogClass.LOG_INFO),<’                                 MsgFmtStr := '| Test assert message=%s',=Ì                                 StrArg := CfUnitTestResults.TestSuiteResults[PrintingTestSuiteResultNumber].TestCaseResults[TestsInTestSuiteCounter].FailureMessage);>$            END_IF?x            (* Print assertion/failure type (if existing) *)@Ø            IF CfUnitTestResults.TestSuiteResults[PrintingTestSuiteResultNumber].TestCaseResults[TestsInTestSuiteCounter].FailureType <> E_AssertionType.Type_UNDEFINED THENAŒ                                 MsgFmtStr := '| Test assert type=%s',B¦                                 StrArg := F_AssertionTypeToString(AssertionType :=C´                                 CfUnitTestResults.TestSuiteResults[PrintingTestSuiteResultNumber].TestCaseResults[TestsInTestSuiteCounter].FailureType));D        END_FORE°        IF PrintingTestSuiteResultNumber = GVL_CfUnit.NumberOfInitializedTestSuites THENFZ            PrintedTestSuitesResults := TRUE;G        ELSEHž            PrintingTestSuiteResultNumber := PrintingTestSuiteResultNumber + 1;I        END_IFJ€        PrintingTestSuiteTrigger(CLK := FALSE); // Reset triggerK    END_IFLEND_IFM€(* Log end results once all test suites have finished running *)Nä//IF PrintingTestSuiteResultNumber = GVL_CfUnit.NumberOfInitializedTestSuites AND NOT PrintedFinalTestResults THENO¾IF PrintingTestSuiteResultNumber = GVL_CfUnit.NumberOfInitializedTestSuites AND NOT PrintedFinalTestResults AND TestResults.GetAreTestResultsAvailable() THEN  Pš    WRITE_DEVICE_LOG(MsgCtrlMask := UDINT_TO_DWORD(CmpLog.LogClass.LOG_INFO),QT                        MsgFmtStr := '%s',R¤                        StrArg := '| ==========TESTS FINISHED RUNNING==========');Sr                        MsgFmtStr := '| Test suites: %s',T°                        StrArg := UINT_TO_STRING(CfUnitTestResults.NumberOfTestSuites));Uf                        MsgFmtStr := '| Tests: %s',V®                        StrArg := UINT_TO_STRING(CfUnitTestResults.NumberOfTestCases));W|                        MsgFmtStr := '| Successful tests: %s',X                        StrArg := UINT_TO_STRING(CfUnitTestResults.NumberOfSuccessfulTestCases));Yt                        MsgFmtStr := '| Failed tests: %s',Zº                        StrArg := UINT_TO_STRING(CfUnitTestResults.NumberOfFailedTestCases));[˜                        StrArg := '| ====================================');\H    PrintedFinalTestResults := TRUE;]Interface^L{a9ed5b7e-75c5-4651-af16-d2c27e98cb94}_BMETHOD PUBLIC LogTestSuiteResults`VARar    CfUnitTestResults : REFERENCE TO ST_TestSuiteResults;bB    StringToPrint : T_MaxString; c²    TestsInTestSuiteCounter : UINT(1..GVL_Param_CfUnit.MaxNumberOfTestsForEachTestSuite);dEND_VAReVAR CONSTANTfP    TEST_STATUS_SKIP : STRING := 'SKIP';gP    TEST_STATUS_PASS : STRING := 'PASS';hP    TEST_STATUS_FAIL : STRING := 'FAIL';ÐÐÐEnÐÐ	
­”ÚÐ-
ÐÐ	
­“ÚÐ-ÐÐ	
­ÚÐ-ÐÐ	
­ÚÐ-ÐÐ	
­ÚÐ-ÐÐ	
­	ÚÐ-ÐÐ	
­
ÚÐ-ÐÐ	
­ÚÐ-ÐÐ	
­ÚÐ-ÐÐ	
­
ÚÐ-ÐÐ	
­ÚÐ-ÐÐ	
­ÚÐ-ÐÐ	
­ÚÐ-ÐÐ	
­ÚÐ-ÐÐ	
­ÚÐ-ÐÐ	
­ÚÐ-ÐÐ	
­ÚÐ-ÐÐ	
­ÚÐ-ÐÐ	
­ÚÐ-ÐÐ	
­ÚÐ-ÐÐ	
­ÚÐ-ÐÐ	
­ÚÐ-ÐÐ	
­ÚÐ-ÐÐ	
­ÚÐ-ÐÐ	
­ÚÐ-ÐÐ	
­ÚÐ-ÐÐ	
­ÚÐ-ÐÐ	
­ÚÐ- ÐÐ	
­ ÚÐ-ÐÐ	
­!ÚÐ-ÐÐ	
­"ÚÐ-ÐÐ	
­#ÚÐ-!ÐÐ	
­$ÚÐ-ÐÐ	
­%ÚÐ-"ÐÐ	
­&ÚÐ-ÐÐ	
­'ÚÐ-ÐÐ	
­(ÚÐ-ÐÐ	
­6ÚÐ-#ÐÐ	
­kÚÐ-$ÐÐ	
­lÚÐ-%ÐÐ	
­ƒÚÐ-&ÐÐ	
­„ÚÐ-'ÐÐ	
­…ÚÐ-(ÐÐ	
­†ÚÐ-)ÐÐ	
­‡ÚÐ-*ÐÐ	
­ˆÚÐ-'ÐÐ	
­‰ÚÐ-+ÐÐ	
­tÚÐ-,ÐÐ	
­ŸÚÐ--ÐÐ	
­¡ÚÐ-.ÐÐ	
­¢ÚÐ-/ÐÐ	
­£ÚÐ-0ÐÐ	
­¤ÚÐ-1ÐÐ	
­¥ÚÐ-2ÐÐ	
­¦ÚÐ-3ÐÐ	
­§ÚÐ-4ÐÐ	
­¨ÚÐ-5ÐÐ	
­©ÚÐ-'ÐÐ	
­ªÚÐ-6ÐÐ	
­ ÚÐ-7ÐÐ	
­uÚÐ-8ÐÐ	
­vÚÐ-9ÐÐ	
­wÚÐ-:ÐÐ	
­xÚÐ-;ÐÐ	
­yÚÐ-<ÐÐ	
­zÚÐ-=ÐÐ	
­{ÚÐ->ÐÐ	
­|ÚÐ-ÐÐ	
­}ÚÐ-?ÐÐ	
­~ÚÐ-@ÐÐ	
­‹ÚÐ-;ÐÐ	
­€ÚÐ-AÐÐ	
­ÚÐ-BÐÐ	
­‚ÚÐ-CÐÐ	
­hÚÐ->ÐÐ	
­’ÚÐ-8ÐÐ	
­ŠÚÐ-DÐÐ	
­jÚÐ-ÐÐ	
­7ÚÐ-EÐÐ	
­8ÚÐ-FÐÐ	
­9ÚÐ-GÐÐ	
­:ÚÐ-HÐÐ	
­;ÚÐ-IÐÐ	
­<ÚÐ-JÐÐ	
­=ÚÐ-KÐÐ	
­>ÚÐ-LÐÐ	
­?ÚÐ-ÐÐ	
­@ÚÐ-MÐÐ	
­AÚÐ-NÐÐ	
­«ÚÐ-OÐÐ	
­IÚÐ-PÐÐ	
­fÚÐ-QÐÐ	
­KÚÐ-RÐÐ	
­LÚÐ-PÐÐ	
­MÚÐ-SÐÐ	
­NÚÐ-TÐÐ	
­OÚÐ-PÐÐ	
­PÚÐ-UÐÐ	
­QÚÐ-VÐÐ	
­RÚÐ-PÐÐ	
­SÚÐ-WÐÐ	
­TÚÐ-XÐÐ	
­UÚÐ-PÐÐ	
­VÚÐ-YÐÐ	
­WÚÐ-ZÐÐ	
­XÚÐ-PÐÐ	
­YÚÐ-QÐÐ	
­ZÚÐ-[ÐÐ	
­[ÚÐ-\ÐÐ	
­ÚÐ-LÐ]^ÐEÐÐ	
­ÚÐ-_ÐÐ	
­žÚÐ-`ÐÐ	
­ÚÐ-aÐÐ	
­ÚÐ-bÐÐ	
­‘ÚÐ-cÐÐ	
­\ÚÐ-dÐÐ	
­–ÚÐ-eÐÐ	
­—ÚÐ-fÐÐ	
­˜ÚÐ-gÐÐ	
­™ÚÐ-hÐÐ	
­•ÚÐ-d