2 Documentation A resource file containing all global Yangman GUI variables
3 ... to help Yangman GUI and functional testing.
4 Resource Variables.robot
7 ${YANGMAN_LOGO} //img[contains(@ng-src, "assets/images/logo_yangman.png") and contains(@id, "page_logo")]
8 ${TOGGLE_MENU_BUTTON} //a[@id="toggleMenu"]
9 ${LOGOUT_BUTTON} //a[@id="logout-button"]
11 ${MODULES_TAB_NAME} Modules
12 ${HISTORY_TAB_NAME} History
13 ${COLLECTIONS_TAB_NAME} Collections
14 ${LEFT_TAB_AREA} //md-tab-content[@id="tab-content-0"]
15 ${MODULES_TAB_SELECTED} ${LEFT_TAB_AREA}//md-tab-item[@aria-selected="true"]/span[contains(text(), "${MODULES_TAB_NAME}")]
16 ${MODULES_TAB_UNSELECTED} ${LEFT_TAB_AREA}//md-tab-item[@aria-selected="false"]/span[contains(text(), "${MODULES_TAB_NAME}")]
17 ${HISTORY_TAB_SELECTED} ${LEFT_TAB_AREA}//md-tab-item[@aria-selected="true"]/span[contains(text(), "${HISTORY_TAB_NAME}")]
18 ${HISTORY_TAB_UNSELECTED} ${LEFT_TAB_AREA}//md-tab-item[@aria-selected="false"]/span[contains(text(), "${HISTORY_TAB_NAME}")]
19 ${COLLECTIONS_TAB_SELECTED} ${LEFT_TAB_AREA}//md-tab-item[@aria-selected="true"]/span[contains(text(), "${COLLECTIONS_TAB_NAME}")]
20 ${COLLECTIONS_TAB_UNSELECTED} ${LEFT_TAB_AREA}//md-tab-item[@aria-selected="false"]/span[contains(text(), "${COLLECTIONS_TAB_NAME}")]
21 ${MODULES_WERE_LOADED_ALERT} //span[contains(text(), "Modules were loaded.")]
22 ${TOGGLE_MODULE_DETAIL_BUTTON_LEFT} //md-icon[@class="arrow-switcher material-icons" and @id="toggle-module-detail"]
23 ${TOGGLE_MODULE_DETAIL_BUTTON_RIGHT} //md-icon[@class="arrow-switcher material-icons arrow-switcher__left"" and @id="toggle-module-detail"]
24 # Modules Tab Left Panel
25 ${MODULE_TAB_CONTENT} //*[@id="tab-content-2"]
26 ${MODULE_SEARCH_INPUT} //input[@id="search-modules"]
27 ${MODULE_ID_LABEL} module_
28 ${MODULE_LIST_ITEM} ${MODULE_TAB_CONTENT}//md-list-item[contains(@id, "${MODULE_ID_LABEL}")]//div[@class="pointer title layout-align-center-center layout-row"]
29 ${MODULE_LIST_ITEM_COLLAPSED} ${MODULE_LIST_ITEM}//following-sibling::md-list[@aria-hidden="true"]
30 ${MODULE_LIST_ITEM_EXPANDED} ${MODULE_LIST_ITEM}//following-sibling::md-list[@aria-hidden="false"]
31 ${MODULE_LIST_MODULE_NAME_XPATH} ${MODULE_LIST_ITEM}//p[@class="top-element flex"]
32 ${OPERATIONS_LABEL} operations
33 ${OPERATIONAL_LABEL} operational
34 ${CONFIG_LABEL} config
35 ${TESTING_MODULE_NAME} ${EMPTY}
36 ${TESTING_MODULE_XPATH} ${MODULE_TAB_CONTENT}//p[contains(., "${TESTING_MODULE_NAME}")]//ancestor::md-list-item[contains(@id, "${MODULE_ID_LABEL}")]
38 ${MODULE_DETAIL_CONTENT} //*[@id="tab-content-1"]
39 ${MODULE_DETAIL_MODULE_NAME_LABEL} ${MODULE_DETAIL_CONTENT}//h4
40 ${MODULE_DETAIL_OPERATIONS_TAB_SELECTED} ${MODULE_DETAIL_CONTENT}//md-tab-item[@aria-selected="true"]//span[contains(text(), "${OPERATIONS_LABEL}")]
41 ${MODULE_DETAIL_OPERATIONS_TAB_DESELECTED} ${MODULE_DETAIL_CONTENT}//md-tab-item[@aria-selected="false"]//span[contains(text(), "${OPERATIONS_LABEL}")]
42 ${MODULE_DETAIL_OPERATIONAL_TAB_SELECTED} ${MODULE_DETAIL_CONTENT}//md-tab-item[@aria-selected="true"]//span[contains(text(), "${OPERATIONAL_LABEL}")]
43 ${MODULE_DETAIL_OPERATIONAL_TAB_DESELECTED} ${MODULE_DETAIL_CONTENT}//md-tab-item[@aria-selected="false"]//span[contains(text(), "${OPERATIONAL_LABEL}")]
44 ${MODULE_DETAIL_CONFIG_TAB_SELECTED} ${MODULE_DETAIL_CONTENT}//md-tab-item[@aria-selected="true"]//span[contains(text(), "${CONFIG_LABEL}")]
45 ${MODULE_DETAIL_CONFIG_TAB_DESELECTED} ${MODULE_DETAIL_CONTENT}//md-tab-item[@aria-selected="false"]//span[contains(text(), "${CONFIG_LABEL}")]
46 ${MODULE_DETAIL_TAB_CONTENT_LABEL} tab-content-
47 ${MODULE_DETAIL_ACTIVE_TAB_CONTENT} ${MODULE_DETAIL_CONTENT}//md-tab-content[contains(@class, "md-active")]
48 ${MODULE_DETAIL_EXPAND_BRANCH_BUTTON} ${MODULE_DETAIL_ACTIVE_TAB_CONTENT}//md-icon[contains(., "add")]
49 ${MODULE_DETAIL_COLLAPSE_BRANCH_BUTTON} ${MODULE_DETAIL_ACTIVE_TAB_CONTENT}//md-list-item//md-icon[contains(., "remove")]
50 ${BRANCH_LABEL} ${EMPTY}
51 ${NETWORK_TOPOLOGY_LABEL} network-topology
52 ${TOPOLOGY_TOPOLOGY_ID_LABEL} topology {topology-id}
53 ${NODE_NODE_ID_LABEL} node {node-id}
54 ${LINK_LINK_ID_LABEL} link {link-id}
55 ${BRANCH_ID_LABEL} branch-
56 ${MODULE_DETAIL_BRANCH} ${MODULE_DETAIL_ACTIVE_TAB_CONTENT}//md-list-item[contains(@id, "${BRANCH_ID_LABEL}")]
57 ${MODULE_DETAIL_BRANCH_LABEL} ${MODULE_DETAIL_BRANCH}//span[contains(@class, "indented tree-label ng-binding flex") and contains(text(), "${BRANCH_LABEL}")]
58 #History Tab Left Panel
59 #Collections Tab Left Panel
61 ${OPERATION_NAME} EMPTY
62 ${OPERATION_SELECT_INPUT} //md-select[@id="request-selected-operation"]
63 ${OPERATION_SELECT_INPUT_CLICKABLE} ${OPERATION_SELECT_INPUT}//parent::md-input-container
64 ${SELECT_BACKDROP} //md-backdrop[@class="md-select-backdrop md-click-catcher ng-scope"]
65 ${OPERATION_SELECT_MENU_EXPANDED} //div[contains(@aria-hidden, "false") and contains(@id,"select_container_10")]
66 ${GET_OPTION} //*[@id="select_option_12"]
67 ${POST_OPTION} //*[@id="select_option_13"]
68 ${PUT_OPTION} //*[@id="select_option_14"]
69 ${DELETE_OPTION} //*[@id="select_option_15"]
70 ${SELECTED_OPERATION_XPATH} ${OPERATION_SELECT_INPUT}//span/div[contains(text(), "${OPERATION_NAME}")]
71 ${REQUEST_URL_INPUT} //*[@id="request-url"]
72 ${SEND_BUTTON} //*[@id="send-request"]
73 ${SAVE_BUTTON} //*[@id="save-request"]
74 ${PARAMETERS_BUTTON} //*[@id="show-parameters"]
75 ${FORM_RADIOBUTTON_SELECTED} //md-radio-button[contains(@id, "shown-data-type-form") and contains(@aria-checked, "true")]
76 ${FORM_RADIOBUTTON_UNSELECTED} //md-radio-button[contains(@id, "shown-data-type-form") and contains(@aria-checked, "false")]
77 ${JSON_RADIOBUTTON_SELECTED} //md-radio-button[contains(@id, "shown-data-type-json") and contains(@aria-checked, "true")]
78 ${JSON_RADIOBUTTON_UNSELECTED} //md-radio-button[contains(@id, "shown-data-type-json") and contains(@aria-checked, "false")]
79 ${FILL_FORM_WITH_RECEIVED_DATA_CHECKBOX_SELECTED} //span[contains(text(), "Fill form with received data after execution")]//ancestor::md-checkbox[@aria-checked="true"]
80 ${FILL_FORM_WITH_RECEIVED_DATA_CHECKBOX_UNSELECTED} //span[contains(text(), "Fill form with received data after execution")]//ancestor::md-checkbox[@aria-checked="false"]
81 ${SHOW_SENT_DATA_CHECKBOX_SELECTED} //md-checkbox[@id="show-sent-data-checkbox" and @aria-checked="true"]
82 ${SHOW_SENT_DATA_CHECKBOX_UNSELECTED} //md-checkbox[@id="show-sent-data-checkbox" and @aria-checked="false"]
83 ${SHOW_RECEIVED_DATA_CHECKBOX_SELECTED} //md-checkbox[@id="show-received-data-checkbox" and @aria-checked="true"]
84 ${SHOW_RECEIVED_DATA_CHECKBOX_UNSELECTED} //md-checkbox[@id="show-received-data-checkbox" and @aria-checked="false"]
85 ${MILLISECONDS_LABEL} ms
86 ${STATUS_LABEL} //span[contains(text(), "Status:")]
87 ${STATUS_VALUE} //span[@id="info-request-status"]
88 ${TIME_LABEL} //span[contains(text(), "Time:")]
89 ${TIME_VALUE} //span[@id="info-request-execution-time"]
90 #Right Panel Json Content
91 ${SENT_DATA_CODE_MIRROR_DISPLAYED} //div[@id="sentData" and @aria-hidden="false"]
92 ${SENT_DATA_LABEL} ${SENT_DATA_CODE_MIRROR_DISPLAYED}//h5[contains(text(), Sent data)]
93 ${SENT_DATA_ENLARGE_FONT_SIZE_BUTTON} ${SENT_DATA_CODE_MIRROR_DISPLAYED}//button[contains(@aria-label, arrow_drop_up)]
94 ${SENT_DATA_REDUCE_FONT_SIZE_BUTTON} ${SENT_DATA_CODE_MIRROR_DISPLAYED}//button[contains(@aria-label, arrow_drop_down)]
95 ${RECEIVED_DATA_CODE_MIRROR_DISPLAYED} //div[@id="ReceiveData" and @aria-hidden="false"]
96 ${RECEIVED_DATA_LABEL} ${RECEIVED_DATA_CODE_MIRROR_DISPLAYED}//h5[contains(text(), Received data)]
97 ${RECEIVED_DATA_ENLARGE_FONT_SIZE_BUTTON} ${RECEIVED_DATA_CODE_MIRROR_DISPLAYED}//button[contains(@aria-label, arrow_drop_up)]
98 ${RECEIVED_DATA_REDUCE_FONT_SIZE_BUTTON} ${RECEIVED_DATA_CODE_MIRROR_DISPLAYED}//button[contains(@aria-label, arrow_drop_down)]
99 # Right Panel Form Content
100 ${FORM_CONTENT} //section[contains(@class, "yangmanModule__right-panel__form bottom-content ng-scope") and contains(@aria-hidden, "false")]
101 ${FORM_TOP_ELEMENT_CONTAINER} ${FORM_CONTENT}//div[contains(@class, "yangmanModule__right-panel__form__element-container ng-scope")]
102 ${FORM_TOP_ELEMENT_POINTER} ${FORM_TOP_ELEMENT_CONTAINER}//p[contains(@class, "top-element pointer")]
103 ${FORM_TOP_ELEMENT_LABEL_XPATH} ${FORM_TOP_ELEMENT_POINTER}//span[contains(@class, "ng-binding ng-scope")]
104 ${FORM_TOP_ELEMENT_YANGMENU} ${FORM_TOP_ELEMENT_CONTAINER}//yang-form-menu
105 ${FORM_TOP_ELEMENT_LIST_ITEM_ROW} ${FORM_TOP_ELEMENT_CONTAINER}//section[@class="yangmanModule__right-panel__form__list__paginator ng-scope layout-column flex"]
106 ${FORM_TOP_ELEMENT_LIST_ITEM} ${FORM_TOP_ELEMENT_LIST_ITEM_ROW}//md-tab-item[contains(@class, "md-tab ng-scope ng-isolate-scope md-ink-ripple")]
107 ${FORM_TOP_ELEMENT_LIST_ITEM_LABEL} ${FORM_TOP_ELEMENT_LIST_ITEM}/span