diff --git a/.env.76 b/.env.76 new file mode 100644 index 0000000..73a7825 --- /dev/null +++ b/.env.76 @@ -0,0 +1,3 @@ +ENV=test +AUTH_LOGIN = admin +AUTH_PASSWORD = admin diff --git a/data/environment.py b/data/environment.py index 348a3fd..edc6f16 100644 --- a/data/environment.py +++ b/data/environment.py @@ -46,6 +46,14 @@ class Environment: return self.URLS[self.env] + "e-nms-ui/" return self.URLS[self.env] raise Exception(f"Unknown value of ENV variable {self.env}") + + def get_env_name(self) -> str: + """Возвращает имя текущего окружения. + + Возвращает: + str: имя текущего окружения. + """ + return self.env def get_request_url(self) -> str: """Возвращает URL для API-запросов. diff --git a/pages/license_tab.py b/pages/license_tab.py index 739bb6a..e97312a 100644 --- a/pages/license_tab.py +++ b/pages/license_tab.py @@ -12,6 +12,7 @@ from locators.button_locators import ButtonLocators from elements.text_input_element import TextInput from elements.text_element import Text from elements.button_element import Button +from data.environment import host from components.toolbar_component import ToolbarComponent from components.json_container_component import JsonContainerComponent from components.alert_component import AlertComponent @@ -88,6 +89,8 @@ class LicenseTab(BasePage): self.should_be_input_form_title() self.should_be_empty_input_form() self.should_be_update_button() + + self.verify_json_container_content() def should_be_error_alert_window_with_text(self, text: str) -> None: """Проверяет наличие/отсутствие алерта с указанным текстом. @@ -151,16 +154,41 @@ class LicenseTab(BasePage): actual_data = self.json_container.read_data(JsonContainerLocators.CONTAINER) - # send request to backend to get license info - response = self.send_get_api_request("e-cmdb/api/lic") - response_body = self.get_response_body(response) - - ## temporarily - del response_body["netManagment"] - response_body["ui"].pop("lcc") - - self.json_container.check_json_equals( - actual_data, - response_body, - "Expected json content is not equal actual:" - ) + env_name = host.get_env_name() + + # temporarily because of difference in version + if env_name == "test": + # send request to backend to get license info + response = self.send_get_api_request("e-cmdb/api/lic") + response_body = self.get_response_body(response) + + del response_body["netManagment"] + response_body["ui"]["lcc"].pop("lcc_object") + response_body["ui"]["lcc"].pop("lcc_reference_book") + response_body["ui"]["lcc"].pop("lcc_reports") + response_body["ui"]["lcc"].pop("lcc_library_files") + response_body["ui"]["lcc"].pop("lcc_global_map") + response_body["ui"]["cmdb"].pop("logical_phone") + response_body["ui"]["cmdb"].pop("logical_ip") + response_body["ui"]["cmdb"].pop("logical_vlan") + response_body["ui"]["cmdb"].pop("logical_vm") + + # compare actual and response from cmdb + self.json_container.check_json_equals( + actual_data, + response_body, + "Expected json content is not equal actual:" + ) + elif env_name == "develop" != 0: + # send request to backend to get license info + response = self.send_get_api_request("api/service-manager/license") + response_body = self.get_response_body(response) + + # compare actual and response from cmdb + self.json_container.check_json_equals( + actual_data, + response_body["data"]["config"]["config"]["e-nms"], + "Expected json content is not equal actual:" + ) + else: + pass