Skip to content

Commit 82ca693

Browse files
committed
More test cases for collection builders.
- Add test case for building paired lists. - Add tests for new hide original datasets functionality for lists and paired lists.
1 parent 5fa5467 commit 82ca693

File tree

3 files changed

+103
-8
lines changed

3 files changed

+103
-8
lines changed

test/galaxy_selenium/navigates_galaxy.py

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -151,6 +151,14 @@ def history_has_hid(driver):
151151
self.wait_for_selector_visible(history_item_selector)
152152
return history_item_selector
153153

154+
def history_panel_wait_for_hid_hidden(self, hid, timeout=60):
155+
current_history_id = self.current_history_id()
156+
contents = self.api_get("histories/%s/contents" % current_history_id)
157+
history_item = [d for d in contents if d["hid"] == hid][0]
158+
history_item_selector = "#%s-%s" % (history_item["history_content_type"], history_item["id"])
159+
self.wait_for_selector_absent(history_item_selector)
160+
return history_item_selector
161+
154162
def history_panel_wait_for_hid_state(self, hid, state, timeout=60):
155163
history_item_selector = self.history_panel_wait_for_hid_visible(hid, timeout=timeout)
156164
history_item_selector_state = "%s.state-%s" % (history_item_selector, state)
@@ -364,6 +372,11 @@ def history_options_menu_selector(self):
364372
menu_selector = self.test_data["historyOptions"]["selectors"]["menu"]
365373
return menu_selector
366374

375+
@retry_during_transitions
376+
def history_panel_refresh_click(self):
377+
refresh_item = self.wait_for_selector_clickable("#history-refresh-button")
378+
refresh_item.click()
379+
367380
def history_panel_multi_operations_selector(self):
368381
return self.test_data["historyPanel"]["selectors"]["history"]["multiOperationsIcon"]
369382

@@ -445,6 +458,18 @@ def click_hda_title(self, hda_id, wait=False):
445458
# TODO: Replace with calls to history_panel_click_item_title.
446459
return self.history_panel_click_item_title(hda_id=hda_id, wait=wait)
447460

461+
def collection_builder_set_name(self, name):
462+
name_element = self.wait_for_selector_visible("input.collection-name")
463+
name_element.send_keys(name)
464+
465+
def collection_builder_hide_originals(self):
466+
hide_element = self.wait_for_selector_clickable("input.hide-originals")
467+
hide_element.click()
468+
469+
def collection_builder_create(self):
470+
create_element = self.wait_for_selector_clickable("button.create-collection")
471+
create_element.click()
472+
448473
def logout_if_needed(self):
449474
if self.is_logged_in():
450475
self.home()

test/qunit/test-data/paired-collection-creator.data.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ var datasets1CreateRequestJSON = {
2222
"type": "dataset_collection",
2323
"collection_type": "list:paired",
2424
"name": "Heres a collection",
25+
"hide_source_items": false,
2526
"element_identifiers": [
2627
{
2728
"collection_type": "paired",

test/selenium_tests/test_collection_builders.py

Lines changed: 77 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,27 @@ def test_build_list_simple(self):
1414
self.history_panel_muli_operation_select_hid(1)
1515
self.history_panel_multi_operation_action_click("Build Dataset List")
1616

17-
name_element = self.wait_for_selector_visible("input.collection-name")
18-
name_element.send_keys("my cool list")
17+
self.collection_builder_set_name("my cool list")
1918

20-
create_element = self.wait_for_selector_clickable("button.create-collection")
21-
create_element.click()
19+
self.collection_builder_create()
2220
self.history_panel_wait_for_hid_ok(2)
2321

22+
@selenium_test
23+
def test_build_list_and_hide_items(self):
24+
self.perform_upload(self.get_filename("1.fasta"))
25+
self.history_panel_wait_for_hid_ok(1)
26+
self.history_panel_multi_operations_show()
27+
self.history_panel_muli_operation_select_hid(1)
28+
self.history_panel_multi_operation_action_click("Build Dataset List")
29+
30+
self.collection_builder_hide_originals()
31+
self.collection_builder_set_name("my cool list")
32+
33+
self.collection_builder_create()
34+
self.history_panel_wait_for_hid_ok(2)
35+
self.history_panel_refresh_click()
36+
self.history_panel_wait_for_hid_hidden(1)
37+
2438
@selenium_test
2539
def test_build_pair_simple(self):
2640
self.perform_upload(self.get_filename("1.tabular"))
@@ -31,9 +45,64 @@ def test_build_pair_simple(self):
3145
self.history_panel_muli_operation_select_hid(1)
3246
self.history_panel_muli_operation_select_hid(2)
3347
self.history_panel_multi_operation_action_click("Build Dataset Pair")
34-
name_element = self.wait_for_selector_visible("input.collection-name")
35-
name_element.send_keys("my awesome pair")
48+
self.collection_builder_set_name("my awesome pair")
49+
50+
self.collection_builder_create()
51+
self.history_panel_wait_for_hid_ok(3)
52+
53+
@selenium_test
54+
def test_build_paired_list_simple(self):
55+
self.perform_upload(self.get_filename("1.tabular"))
56+
self.perform_upload(self.get_filename("2.tabular"))
57+
self.history_panel_wait_for_hid_visible(1)
58+
self.history_panel_wait_for_hid_visible(2)
59+
self.history_panel_multi_operations_show()
60+
self.history_panel_muli_operation_select_hid(1)
61+
self.history_panel_muli_operation_select_hid(2)
62+
self.history_panel_multi_operation_action_click("Build List of Dataset Pairs")
63+
64+
clear_filter_link = self.wait_for_selector_visible("a.clear-filters-link")
65+
clear_filter_link.click()
66+
67+
forward_column = self.wait_for_selector_visible(".forward-column .column-datasets")
68+
first_datset_forward = forward_column.find_elements_by_css_selector("li")[0]
69+
first_datset_forward.click()
70+
71+
reverse_column = self.wait_for_selector_visible(".reverse-column .column-datasets")
72+
second_dataset_reverse = reverse_column.find_elements_by_css_selector("li")[1]
73+
second_dataset_reverse.click()
74+
75+
self.collection_builder_set_name("my awesome paired list")
76+
77+
self.collection_builder_create()
78+
self.history_panel_wait_for_hid_ok(3)
79+
80+
@selenium_test
81+
def test_build_paired_list_hide_original(self):
82+
self.perform_upload(self.get_filename("1.tabular"))
83+
self.perform_upload(self.get_filename("2.tabular"))
84+
self.history_panel_wait_for_hid_visible(1)
85+
self.history_panel_wait_for_hid_visible(2)
86+
self.history_panel_multi_operations_show()
87+
self.history_panel_muli_operation_select_hid(1)
88+
self.history_panel_muli_operation_select_hid(2)
89+
self.history_panel_multi_operation_action_click("Build List of Dataset Pairs")
90+
91+
clear_filter_link = self.wait_for_selector_visible("a.clear-filters-link")
92+
clear_filter_link.click()
93+
94+
forward_column = self.wait_for_selector_visible(".forward-column .column-datasets")
95+
first_datset_forward = forward_column.find_elements_by_css_selector("li")[0]
96+
first_datset_forward.click()
97+
98+
reverse_column = self.wait_for_selector_visible(".reverse-column .column-datasets")
99+
second_dataset_reverse = reverse_column.find_elements_by_css_selector("li")[1]
100+
second_dataset_reverse.click()
101+
102+
self.collection_builder_hide_originals()
103+
self.collection_builder_set_name("my awesome paired list")
36104

37-
create_element = self.wait_for_selector_clickable("button.create-collection")
38-
create_element.click()
105+
self.collection_builder_create()
39106
self.history_panel_wait_for_hid_ok(3)
107+
self.history_panel_wait_for_hid_hidden(1)
108+
self.history_panel_wait_for_hid_hidden(2)

0 commit comments

Comments
 (0)