|
14 | 14 | from typing import Any, Final |
15 | 15 |
|
16 | 16 | from playwright.sync_api import Page, WebSocket |
17 | | -from pytest_simcore.helpers.logging_tools import log_context, test_logger |
| 17 | +from pytest_simcore.helpers.logging_tools import log_context |
18 | 18 | from pytest_simcore.helpers.playwright import ( |
19 | 19 | MINUTE, |
20 | 20 | SECOND, |
@@ -93,6 +93,9 @@ def test_classic_ti_plan( # noqa: PLR0915 |
93 | 93 | is_autoscaled: bool, |
94 | 94 | is_product_lite: bool, |
95 | 95 | ): |
| 96 | + |
| 97 | + # TODO: check TIP upgrade |
| 98 | + |
96 | 99 | project_data = create_tip_plan_from_dashboard("newTIPlanButton") |
97 | 100 | assert "workbench" in project_data, "Expected workbench to be in project data!" |
98 | 101 | assert isinstance( |
@@ -204,49 +207,69 @@ def test_classic_ti_plan( # noqa: PLR0915 |
204 | 207 | ) |
205 | 208 |
|
206 | 209 | with log_context(logging.INFO, "Create report"): |
207 | | - ti_iframe.get_by_role("button", name="Load Analysis").click() |
208 | | - page.wait_for_timeout(_JLAB_REPORTING_MAX_TIME) |
209 | | - ti_iframe.get_by_role("button", name="Load").nth(1).click() |
210 | | - page.wait_for_timeout(_JLAB_REPORTING_MAX_TIME) |
211 | | - ti_iframe.get_by_role("button", name="Add to Report (0)").nth(0).click() |
212 | | - page.wait_for_timeout(_JLAB_REPORTING_MAX_TIME) |
213 | | - ti_iframe.get_by_role("button", name="Export to S4L").click() |
214 | | - page.wait_for_timeout(_JLAB_REPORTING_MAX_TIME) |
215 | | - ti_iframe.get_by_role("button", name="Add to Report (1)").nth(1).click() |
216 | | - page.wait_for_timeout(_JLAB_REPORTING_MAX_TIME) |
217 | | - ti_iframe.get_by_role("button", name="Export Report").click() |
218 | | - page.wait_for_timeout(_JLAB_REPORTING_MAX_TIME) |
| 210 | + if is_product_lite: |
| 211 | + # NOTE: buttons should be disabled |
| 212 | + assert not ti_iframe.get_by_role( |
| 213 | + "button", name="Load Analysis" |
| 214 | + ).is_enabled() |
| 215 | + assert ( |
| 216 | + not ti_iframe.get_by_role("button", name="Load").nth(1).is_enabled() |
| 217 | + ) |
| 218 | + assert not ti_iframe.get_by_role( |
| 219 | + "button", name="Export to S4L" |
| 220 | + ).is_enabled() |
| 221 | + assert not ti_iframe.get_by_role( |
| 222 | + "button", name="Export Report" |
| 223 | + ).is_enabled() |
| 224 | + |
| 225 | + else: |
| 226 | + ti_iframe.get_by_role("button", name="Load Analysis").click() |
| 227 | + page.wait_for_timeout(_JLAB_REPORTING_MAX_TIME) |
| 228 | + ti_iframe.get_by_role("button", name="Load").nth(1).click() |
| 229 | + page.wait_for_timeout(_JLAB_REPORTING_MAX_TIME) |
| 230 | + ti_iframe.get_by_role("button", name="Add to Report (0)").nth(0).click() |
| 231 | + page.wait_for_timeout(_JLAB_REPORTING_MAX_TIME) |
| 232 | + ti_iframe.get_by_role("button", name="Export to S4L").click() |
| 233 | + page.wait_for_timeout(_JLAB_REPORTING_MAX_TIME) |
| 234 | + ti_iframe.get_by_role("button", name="Add to Report (1)").nth(1).click() |
| 235 | + page.wait_for_timeout(_JLAB_REPORTING_MAX_TIME) |
| 236 | + ti_iframe.get_by_role("button", name="Export Report").click() |
| 237 | + page.wait_for_timeout(_JLAB_REPORTING_MAX_TIME) |
219 | 238 |
|
220 | 239 | with log_context(logging.INFO, "Check outputs"): |
221 | | - expected_outputs = ["output_1.zip", "TIP_report.pdf", "results.csv"] |
222 | | - text_on_output_button = f"Outputs ({len(expected_outputs)})" |
223 | | - page.get_by_test_id("outputsBtn").get_by_text(text_on_output_button).click() |
| 240 | + if is_product_lite: |
| 241 | + pass |
| 242 | + else: |
| 243 | + expected_outputs = ["output_1.zip", "TIP_report.pdf", "results.csv"] |
| 244 | + text_on_output_button = f"Outputs ({len(expected_outputs)})" |
| 245 | + page.get_by_test_id("outputsBtn").get_by_text( |
| 246 | + text_on_output_button |
| 247 | + ).click() |
224 | 248 |
|
225 | 249 | if is_product_lite: |
226 | | - test_logger.info( |
227 | | - "Skipping the rest of the test since it is intended for the full version" |
228 | | - ) |
229 | | - return |
| 250 | + assert expected_number_of_steps == 2 |
| 251 | + else: |
| 252 | + with log_context(logging.INFO, "Exposure Analysis step (3)"): |
| 253 | + with expected_service_running( |
| 254 | + page=page, |
| 255 | + node_id=node_ids[2], |
| 256 | + websocket=log_in_and_out, |
| 257 | + timeout=( |
| 258 | + _POST_PRO_AUTOSCALED_MAX_STARTUP_TIME |
| 259 | + if is_autoscaled |
| 260 | + else _POST_PRO_MAX_STARTUP_TIME |
| 261 | + ), |
| 262 | + press_start_button=False, |
| 263 | + ) as service_running: |
| 264 | + app_mode_trigger_next_app(page) |
| 265 | + s4l_postpro_iframe = service_running.iframe_locator |
| 266 | + assert s4l_postpro_iframe |
230 | 267 |
|
231 | | - with log_context(logging.INFO, "Exposure Analysis step (3)"): |
232 | | - with expected_service_running( |
233 | | - page=page, |
234 | | - node_id=node_ids[2], |
235 | | - websocket=log_in_and_out, |
236 | | - timeout=( |
237 | | - _POST_PRO_AUTOSCALED_MAX_STARTUP_TIME |
238 | | - if is_autoscaled |
239 | | - else _POST_PRO_MAX_STARTUP_TIME |
240 | | - ), |
241 | | - press_start_button=False, |
242 | | - ) as service_running: |
243 | | - app_mode_trigger_next_app(page) |
244 | | - s4l_postpro_iframe = service_running.iframe_locator |
245 | | - assert s4l_postpro_iframe |
246 | | - |
247 | | - with log_context(logging.INFO, "Post process"): |
248 | | - # click on the postpro mode button |
249 | | - s4l_postpro_iframe.get_by_test_id("mode-button-postro").click() |
250 | | - # click on the surface viewer |
251 | | - s4l_postpro_iframe.get_by_test_id("tree-item-ti_field.cache").click() |
252 | | - s4l_postpro_iframe.get_by_test_id("tree-item-SurfaceViewer").nth(0).click() |
| 268 | + with log_context(logging.INFO, "Post process"): |
| 269 | + # click on the postpro mode button |
| 270 | + s4l_postpro_iframe.get_by_test_id("mode-button-postro").click() |
| 271 | + # click on the surface viewer |
| 272 | + s4l_postpro_iframe.get_by_test_id("tree-item-ti_field.cache").click() |
| 273 | + s4l_postpro_iframe.get_by_test_id("tree-item-SurfaceViewer").nth( |
| 274 | + 0 |
| 275 | + ).click() |
0 commit comments