60d8c92f5253541ccd05a4935b406a7cc350cc93
[integration/test.git] / csit / libraries / SetupUtils.robot
1 *** Settings ***
2 Documentation     Simple resource with setup keywords which combine FailFast and Karaf logging.
3 ...
4 ...               See FailFast.robot documentation for intricacies of that library.
5 Resource          ${CURDIR}/FailFast.robot
6 Resource          ${CURDIR}/KarafKeywords.robot
7 Resource          ${CURDIR}/Utils.robot
8
9 *** Variables ***
10 ${SetupUtils__Known_Bug_ID}    ${EMPTY}
11
12 *** Keywords ***
13 Setup_Utils_For_Setup_And_Teardown
14     [Documentation]    Prepare both FailFast and karaf logging, to be used in suite setup.
15     FailFast.Do_Not_Fail_Fast_From_Now_On
16     KarafKeywords.Open_Controller_Karaf_Console_On_Background
17     BuiltIn.Run Keyword And Ignore Error    KarafKeywords.Log_Test_Suite_Start_To_Controller_Karaf
18
19 Setup_Test_With_Logging_And_Fast_Failing
20     [Documentation]    Test case setup which skips on previous failure. If not, logs test case name to Karaf log.
21     ...    Recommended to be used as the default test case setup.
22     FailFast.Fail_This_Fast_On_Previous_Error
23     BuiltIn.Run Keyword And Ignore Error    KarafKeywords.Log_Testcase_Start_To_Controller_Karaf
24
25 Setup_Test_With_Logging_And_Without_Fast_Failing
26     [Documentation]    Test case setup which explicitly ignores previous failure and logs test case name to Karaf log.
27     ...    Needed if the recommended default is to be overriden.
28     FailFast.Run_Even_When_Failing_Fast
29     BuiltIn.Run Keyword And Ignore Error    KarafKeywords.Log_Testcase_Start_To_Controller_Karaf
30
31 Set_Known_Bug_Id
32     [Arguments]    ${id}
33     [Documentation]    Tell the Teardown keywords that any failure from now on is due to the specified known bug.
34     Set_Suite_Variable    ${SetupUtils__Known_Bug_ID}    ${id}
35
36 Set_Unknown_Bug_Id
37     [Documentation]    Tell the Teardown keywords that from now on there is no longer known bug causing the failure so it should use linked bugs.
38     Set_Known_Bug_Id    ${EMPTY}
39
40 SetupUtils__Report_Bugs_Causing_Failure
41     BuiltIn.Run_Keyword_And_Return_If    '${SetupUtils__Known_Bug_ID}' != ''    Utils.Report_Failure_Due_To_Bug    ${SetupUtils__Known_Bug_ID}
42     Utils.Report_Failure_And_Point_To_Linked_Bugs
43
44 Teardown_Test_Show_Bugs_And_Start_Fast_Failing_If_Test_Failed
45     [Documentation]    Test case teardown. Show linked bugs and start fast failing in case of failure.
46     BuiltIn.Run_Keyword_If_Test_Failed    BuiltIn.Set_Suite_Variable    ${SuiteFastFail}    True
47     SetupUtils__Report_Bugs_Causing_Failure
48
49 Teardown_Test_Show_Bugs_If_Test_Failed
50     [Documentation]    Test case teardown. Show linked bugs in case of failure.
51     SetupUtils__Report_Bugs_Causing_Failure