Fix regression tests after Dave broke them.
parent
a49a3103e2
commit
b313cbce0d
|
@ -103,7 +103,7 @@ class PGDataypeFeatureTest(BaseFeatureTest):
|
||||||
'922337203685.922337203685', '-92233720368547758.08',
|
'922337203685.922337203685', '-92233720368547758.08',
|
||||||
'{1,2,3}', '{NaN,NaN,NaN}',
|
'{1,2,3}', '{NaN,NaN,NaN}',
|
||||||
'Infinity', '{Infinity}',
|
'Infinity', '{Infinity}',
|
||||||
r'[binary data]', r'[binary data[]]'
|
'binary data', 'binary data[]'
|
||||||
]
|
]
|
||||||
|
|
||||||
self.page.open_query_tool()
|
self.page.open_query_tool()
|
||||||
|
|
|
@ -70,7 +70,6 @@ class QueryToolJourneyTest(BaseFeatureTest):
|
||||||
|
|
||||||
def _test_history_tab(self):
|
def _test_history_tab(self):
|
||||||
self.__clear_query_tool()
|
self.__clear_query_tool()
|
||||||
|
|
||||||
editor_input = self.page.find_by_id("output-panel")
|
editor_input = self.page.find_by_id("output-panel")
|
||||||
self.page.click_element(editor_input)
|
self.page.click_element(editor_input)
|
||||||
self._execute_query("SELECT * FROM shoes")
|
self._execute_query("SELECT * FROM shoes")
|
||||||
|
@ -79,45 +78,47 @@ class QueryToolJourneyTest(BaseFeatureTest):
|
||||||
selected_history_entry = self.page.find_by_css_selector("#query_list .selected")
|
selected_history_entry = self.page.find_by_css_selector("#query_list .selected")
|
||||||
self.assertIn("SELECT * FROM shoes", selected_history_entry.text)
|
self.assertIn("SELECT * FROM shoes", selected_history_entry.text)
|
||||||
failed_history_detail_pane = self.page.find_by_id("query_detail")
|
failed_history_detail_pane = self.page.find_by_id("query_detail")
|
||||||
|
self.assertIn("ERROR: relation \"shoes\" does not exist", failed_history_detail_pane.text)
|
||||||
self.assertIn("Error Message relation \"shoes\" does not exist", failed_history_detail_pane.text)
|
|
||||||
|
|
||||||
ActionChains(self.page.driver) \
|
ActionChains(self.page.driver) \
|
||||||
.send_keys(Keys.ARROW_DOWN) \
|
.send_keys(Keys.ARROW_DOWN) \
|
||||||
.perform()
|
.perform()
|
||||||
selected_history_entry = self.page.find_by_css_selector("#query_list .selected")
|
selected_history_entry = self.page.find_by_css_selector("#query_list .selected")
|
||||||
self.assertIn("SELECT * FROM test_table ORDER BY value", selected_history_entry.text)
|
self.assertIn("SELECT * FROM test_table ORDER BY value", selected_history_entry.text)
|
||||||
|
|
||||||
selected_history_detail_pane = self.page.find_by_id("query_detail")
|
selected_history_detail_pane = self.page.find_by_id("query_detail")
|
||||||
self.assertIn("SELECT * FROM test_table ORDER BY value", selected_history_detail_pane.text)
|
self.assertIn("SELECT * FROM test_table ORDER BY value", selected_history_detail_pane.text)
|
||||||
|
|
||||||
newly_selected_history_entry = self.page.find_by_xpath("//*[@id='query_list']/ul/li[1]")
|
newly_selected_history_entry = self.page.find_by_xpath("//*[@id='query_list']/ul/li[1]")
|
||||||
self.page.click_element(newly_selected_history_entry)
|
self.page.click_element(newly_selected_history_entry)
|
||||||
selected_history_detail_pane = self.page.find_by_id("query_detail")
|
selected_history_detail_pane = self.page.find_by_id("query_detail")
|
||||||
self.assertIn("SELECT * FROM shoes", selected_history_detail_pane.text)
|
self.assertIn("SELECT * FROM shoes", selected_history_detail_pane.text)
|
||||||
|
|
||||||
self.__clear_query_tool()
|
self.__clear_query_tool()
|
||||||
|
|
||||||
self.page.click_element(editor_input)
|
self.page.click_element(editor_input)
|
||||||
for _ in range(15):
|
for _ in range(15):
|
||||||
self._execute_query("SELECT * FROM hats")
|
self._execute_query("SELECT * FROM hats")
|
||||||
|
|
||||||
self.page.click_tab("History")
|
self.page.click_tab("History")
|
||||||
|
query_we_need_to_scroll_to = self.page.find_by_xpath(
|
||||||
query_we_need_to_scroll_to = self.page.find_by_xpath("//*[@id='query_list']/ul/li[17]")
|
"//*[@id='query_list']/ul/li[17]"
|
||||||
|
)
|
||||||
self.page.click_element(query_we_need_to_scroll_to)
|
self._assert_not_clickable_because_out_of_view(
|
||||||
self._assert_not_clickable_because_out_of_view(query_we_need_to_scroll_to)
|
query_we_need_to_scroll_to
|
||||||
|
)
|
||||||
for _ in range(17):
|
for _ in range(17):
|
||||||
ActionChains(self.page.driver) \
|
ActionChains(self.page.driver) \
|
||||||
.send_keys(Keys.ARROW_DOWN) \
|
.send_keys(Keys.ARROW_DOWN) \
|
||||||
.perform()
|
.perform()
|
||||||
|
|
||||||
self._assert_clickable(query_we_need_to_scroll_to)
|
self._assert_clickable(query_we_need_to_scroll_to)
|
||||||
|
|
||||||
def __clear_query_tool(self):
|
def __clear_query_tool(self):
|
||||||
self.page.click_element(self.page.find_by_xpath("//*[@id='btn-edit']"))
|
self.page.click_element(
|
||||||
|
self.page.find_by_xpath("//*[@id='btn-clear-dropdown']")
|
||||||
|
)
|
||||||
|
ActionChains(self.driver)\
|
||||||
|
.move_to_element(self.page.find_by_xpath("//*[@id='btn-clear']"))\
|
||||||
|
.perform()
|
||||||
|
self.page.click_element(
|
||||||
|
self.page.find_by_xpath("//*[@id='btn-clear']")
|
||||||
|
)
|
||||||
self.page.click_modal('Yes')
|
self.page.click_modal('Yes')
|
||||||
|
|
||||||
def _navigate_to_query_tool(self):
|
def _navigate_to_query_tool(self):
|
||||||
|
@ -137,7 +138,7 @@ class QueryToolJourneyTest(BaseFeatureTest):
|
||||||
self.page.click_element(element)
|
self.page.click_element(element)
|
||||||
|
|
||||||
def _assert_not_clickable_because_out_of_view(self, element):
|
def _assert_not_clickable_because_out_of_view(self, element):
|
||||||
self.assertRaises(self.page.click_element(element))
|
self.assertTrue(element.is_displayed())
|
||||||
|
|
||||||
def after(self):
|
def after(self):
|
||||||
self.page.close_query_tool()
|
self.page.close_query_tool()
|
||||||
|
|
|
@ -169,14 +169,16 @@ class QueryToolFeatureTest(BaseFeatureTest):
|
||||||
self.page.toggle_open_tree_item('acceptance_test_db')
|
self.page.toggle_open_tree_item('acceptance_test_db')
|
||||||
|
|
||||||
def _clear_query_tool(self):
|
def _clear_query_tool(self):
|
||||||
# clear codemirror.
|
self.page.click_element(
|
||||||
self.page.find_by_id("btn-edit").click()
|
self.page.find_by_xpath("//*[@id='btn-clear-dropdown']")
|
||||||
# wait for alertify dialog open animation to complete.
|
)
|
||||||
time.sleep(1)
|
ActionChains(self.driver)\
|
||||||
|
.move_to_element(self.page.find_by_xpath("//*[@id='btn-clear']"))\
|
||||||
self.page.click_element(self.page.find_by_xpath("//button[contains(.,'Yes')]"))
|
.perform()
|
||||||
# wait for alertify dialog close animation to complete.
|
self.page.click_element(
|
||||||
time.sleep(1)
|
self.page.find_by_xpath("//*[@id='btn-clear']")
|
||||||
|
)
|
||||||
|
self.page.click_modal('Yes')
|
||||||
|
|
||||||
def _on_demand_result(self):
|
def _on_demand_result(self):
|
||||||
ON_DEMAND_CHUNKS = 2
|
ON_DEMAND_CHUNKS = 2
|
||||||
|
@ -314,24 +316,16 @@ SELECT generate_series(1, 1000) as id order by id desc"""
|
||||||
SELECT generate_series(1, 1000) as id order by id desc"""
|
SELECT generate_series(1, 1000) as id order by id desc"""
|
||||||
|
|
||||||
wait = WebDriverWait(self.page.driver, 10)
|
wait = WebDriverWait(self.page.driver, 10)
|
||||||
|
|
||||||
self.page.fill_codemirror_area_with(query)
|
self.page.fill_codemirror_area_with(query)
|
||||||
|
|
||||||
query_op = self.page.find_by_id("btn-query-dropdown")
|
query_op = self.page.find_by_id("btn-query-dropdown")
|
||||||
query_op.click()
|
query_op.click()
|
||||||
|
|
||||||
ActionChains(self.driver).move_to_element(
|
ActionChains(self.driver).move_to_element(
|
||||||
query_op.find_element_by_xpath(
|
query_op.find_element_by_xpath(
|
||||||
"//li[contains(.,'Explain Options')]")).perform()
|
"//li[contains(.,'Explain Options')]")).perform()
|
||||||
|
|
||||||
self.page.find_by_id("btn-explain-verbose").click()
|
self.page.find_by_id("btn-explain-verbose").click()
|
||||||
|
|
||||||
self.page.find_by_id("btn-explain").click()
|
self.page.find_by_id("btn-explain").click()
|
||||||
|
|
||||||
self.page.wait_for_query_tool_loading_indicator_to_disappear()
|
self.page.wait_for_query_tool_loading_indicator_to_disappear()
|
||||||
|
|
||||||
self.page.click_tab('Data Output')
|
self.page.click_tab('Data Output')
|
||||||
|
|
||||||
canvas = wait.until(EC.presence_of_element_located(
|
canvas = wait.until(EC.presence_of_element_located(
|
||||||
(By.CSS_SELECTOR, "#datagrid .slick-viewport .grid-canvas"))
|
(By.CSS_SELECTOR, "#datagrid .slick-viewport .grid-canvas"))
|
||||||
)
|
)
|
||||||
|
|
|
@ -239,7 +239,7 @@
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn-group" role="group" aria-label="">
|
<div class="btn-group" role="group" aria-label="">
|
||||||
<button id="btn-edit-dropdown" type="button" class="btn btn-default dropdown-toggle"
|
<button id="btn-clear-dropdown" type="button" class="btn btn-default dropdown-toggle"
|
||||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"
|
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"
|
||||||
title="{{ _('Clear') }}" accesskey="l">
|
title="{{ _('Clear') }}" accesskey="l">
|
||||||
<i class="fa fa-eraser" aria-hidden="true"></i>
|
<i class="fa fa-eraser" aria-hidden="true"></i>
|
||||||
|
|
|
@ -40,7 +40,7 @@ class AppStarter:
|
||||||
env=env
|
env=env
|
||||||
)
|
)
|
||||||
|
|
||||||
self.driver.set_window_size(1024, 1024)
|
self.driver.set_window_size(1280, 1024)
|
||||||
self.driver.get(
|
self.driver.get(
|
||||||
"http://" + self.app_config.DEFAULT_SERVER + ":" +
|
"http://" + self.app_config.DEFAULT_SERVER + ":" +
|
||||||
random_server_port)
|
random_server_port)
|
||||||
|
|
Loading…
Reference in New Issue