mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-24 16:30:27 +08:00
Selenium test for displaying workflows with problems in pages.
This commit is contained in:
@@ -1,10 +1,10 @@
|
||||
<template>
|
||||
<div class="toolTitle">
|
||||
<a v-if="tool.disabled" class="title-link name text-muted">
|
||||
<a v-if="tool.disabled" :data-tool-id="tool.id" class="title-link name text-muted">
|
||||
<span v-if="!hideName">{{ tool.name }}</span>
|
||||
<span class="description">{{ tool.description }}</span>
|
||||
</a>
|
||||
<a v-else :class="targetClass" :href="tool.link" :target="tool.target" @click="onClick">
|
||||
<a v-else :class="targetClass" :data-tool-id="tool.id" :href="tool.link" :target="tool.target" @click="onClick">
|
||||
<img v-if="tool.logo" class="logo" :src="tool.logo" :alt="tool.name" />
|
||||
<span class="labels">
|
||||
<span
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
:per-page="perPage"
|
||||
:current-page="currentPage"
|
||||
:busy.sync="isBusy"
|
||||
primary-key="id"
|
||||
@row-clicked="clicked"
|
||||
@filtered="filtered">
|
||||
<template v-slot:head(select_icon)="">
|
||||
|
||||
@@ -489,12 +489,12 @@ pages:
|
||||
editor:
|
||||
selectors:
|
||||
save: '#save-button'
|
||||
embed_dataset:
|
||||
type: xpath
|
||||
selector: '//span[text() = "Embedded Dataset"]'
|
||||
embed_dataset: '.toolTitle .title-link[data-tool-id="history_dataset_embedded"]'
|
||||
embed_workflow_display: '.toolTitle .title-link[data-tool-id="workflow_display"]'
|
||||
dataset_selector:
|
||||
type: xpath
|
||||
selector: '//span[text() = "1: 1.fasta"]'
|
||||
workflow_selection: .selection-dialog-modal [role="row"][data-pk="${id}"]
|
||||
embed_dialog_add_button: '.pages-embed .buttons #button-0'
|
||||
markdown_editor: '.markdown-textarea'
|
||||
|
||||
|
||||
@@ -1159,6 +1159,14 @@ class NavigatesGalaxy(HasDriver):
|
||||
self.libraries_index_search_for(name)
|
||||
self.libraries_index_table_elements()[0].find_element(By.CSS_SELECTOR, "td a").click()
|
||||
|
||||
def page_open_with_name(self, name, screenshot_name):
|
||||
self.home()
|
||||
self.navigate_to_pages()
|
||||
self.click_grid_popup_option(name, "View")
|
||||
if screenshot_name:
|
||||
self.sleep_for(self.wait_types.UX_RENDER)
|
||||
self.screenshot(screenshot_name)
|
||||
|
||||
@retry_during_transitions
|
||||
def libraries_index_table_elements(self):
|
||||
container = self.components.libraries._.wait_for_visible()
|
||||
|
||||
@@ -1,3 +1,7 @@
|
||||
from galaxy_test.base.workflow_fixtures import (
|
||||
WORKFLOW_WITH_BAD_COLUMN_PARAMETER,
|
||||
WORKFLOW_WITH_OLD_TOOL_VERSION,
|
||||
)
|
||||
from .framework import (
|
||||
managed_history,
|
||||
selenium_test,
|
||||
@@ -19,14 +23,41 @@ class TestPages(SeleniumTestCase):
|
||||
self.screenshot("pages_grid")
|
||||
name = self.create_page_and_edit(screenshot_name="pages_create_form")
|
||||
self.screenshot("pages_editor_new")
|
||||
self.components.pages.editor.markdown_editor.wait_for_and_send_keys("moo\n\n\ncow\n\n")
|
||||
self.components.pages.editor.embed_dataset.wait_for_and_click()
|
||||
editor = self._page_editor
|
||||
editor.markdown_editor.wait_for_and_send_keys("moo\n\n\ncow\n\n")
|
||||
editor.embed_dataset.wait_for_and_click()
|
||||
self.screenshot("pages_editor_embed_dataset_dialog")
|
||||
self.components.pages.editor.dataset_selector.wait_for_and_click()
|
||||
editor.dataset_selector.wait_for_and_click()
|
||||
self.sleep_for(self.wait_types.UX_RENDER)
|
||||
self.components.pages.editor.save.wait_for_and_click()
|
||||
editor.save.wait_for_and_click()
|
||||
self.screenshot("pages_editor_saved")
|
||||
self.home()
|
||||
self.page_open_with_name(name, "page_view_with_embedded_dataset")
|
||||
|
||||
@selenium_test
|
||||
@managed_history
|
||||
def test_workflow_problem_display(self):
|
||||
workflow_populator = self.workflow_populator
|
||||
problem_workflow_1_id = workflow_populator.upload_yaml_workflow(
|
||||
WORKFLOW_WITH_OLD_TOOL_VERSION, exact_tools=True
|
||||
)
|
||||
problem_workflow_2_id = workflow_populator.upload_yaml_workflow(
|
||||
WORKFLOW_WITH_BAD_COLUMN_PARAMETER, exact_tools=True
|
||||
)
|
||||
|
||||
self.navigate_to_pages()
|
||||
self.click_grid_popup_option(name, "View")
|
||||
self.screenshot("pages_view_simple")
|
||||
name = self.create_page_and_edit()
|
||||
editor = self._page_editor
|
||||
editor.markdown_editor.wait_for_and_send_keys("moo\n\n\ncow\n\n")
|
||||
editor.embed_workflow_display.wait_for_and_click()
|
||||
self.screenshot("pages_editor_embed_workflow_dialog")
|
||||
editor.workflow_selection(id=problem_workflow_1_id).wait_for_and_click()
|
||||
self.sleep_for(self.wait_types.UX_RENDER)
|
||||
editor.embed_workflow_display.wait_for_and_click()
|
||||
editor.workflow_selection(id=problem_workflow_2_id).wait_for_and_click()
|
||||
self.sleep_for(self.wait_types.UX_RENDER)
|
||||
editor.save.wait_for_and_click()
|
||||
self.page_open_with_name(name, "page_view_with_workflow_problems")
|
||||
|
||||
@property
|
||||
def _page_editor(self):
|
||||
return self.components.pages.editor
|
||||
|
||||
Reference in New Issue
Block a user