From 08eb407fc6e8052bd84efbf8eb0466d5e1e0e266 Mon Sep 17 00:00:00 2001 From: Nico Schedel Date: Mon, 4 Nov 2019 13:11:36 +0100 Subject: [PATCH] TT#68016 selenium: remove find_text() and scroll_to_id() find_text() is doing stuff a find_element_by_xpath() can do just as well, and scroll_to_id() was never used. both functions have now been removed. Change-Id: Iefb1128e6c6db56d5cdee248188f4d0c6b83f42b --- t/lib/Selenium/Collection/Common.pm | 2 +- .../Remote/Driver/FirefoxExtensions.pm | 22 ------------------- t/selenium/controller_billing.t | 3 +-- t/selenium/controller_peering.t | 7 +----- 4 files changed, 3 insertions(+), 31 deletions(-) diff --git a/t/lib/Selenium/Collection/Common.pm b/t/lib/Selenium/Collection/Common.pm index 08c2d57387..d72a61f48d 100644 --- a/t/lib/Selenium/Collection/Common.pm +++ b/t/lib/Selenium/Collection/Common.pm @@ -21,7 +21,7 @@ sub login_ok { $self->driver->get("$uri/login"); diag("Do Admin Login"); - ok($self->driver->find_text("Admin Sign In"), "Text Admin Sign In found"); + ok($self->driver->find_element('/html/body//div//h1[contains(text(), "Admin Sign In")]'), "Text 'Admin Sign In' found"); is($self->driver->get_title, '', 'No Tab Title was set'); $self->driver->fill_element('#username', 'css', $login); $self->driver->fill_element('#password', 'css', $pwd); diff --git a/t/lib/Selenium/Remote/Driver/FirefoxExtensions.pm b/t/lib/Selenium/Remote/Driver/FirefoxExtensions.pm index 9a672ae497..efb67f5d73 100644 --- a/t/lib/Selenium/Remote/Driver/FirefoxExtensions.pm +++ b/t/lib/Selenium/Remote/Driver/FirefoxExtensions.pm @@ -31,17 +31,6 @@ sub BUILD { $self->set_timeout("implicit", 10_000); } -sub find_text { - try { - my ($self, $text, $scheme) = @_; - $scheme //= "xpath"; - return $self->find_element("//*[contains(text(),\"$text\")]", $scheme); - } - catch { - return; - }; -} - sub select_if_unselected { my ($self, $query, $scheme) = @_; $scheme //= "xpath"; @@ -76,17 +65,6 @@ sub fill_element { return 1; } -sub scroll_to_id { - my ($self, $id) = @_; - my $script = - 'var arg1 = arguments[0];' . - 'var elem = window.document.getElementById(arg1);' . - 'elem.scrollIntoView();' . - 'return elem;'; - my $elem = $self->execute_script($script,$id); - return $elem; -} - sub scroll_to_element { my ($self, $elem) = @_; my $script = diff --git a/t/selenium/controller_billing.t b/t/selenium/controller_billing.t index 83d8e64047..1ddc7a7aac 100644 --- a/t/selenium/controller_billing.t +++ b/t/selenium/controller_billing.t @@ -279,9 +279,9 @@ diag("Edit Wednesday"); ok($d->find_element_by_xpath('//*[@id="masthead"]//div//h2[contains(text(), "Off-peak-times")]'), 'We are on the correct page'); $d->refresh(); $d->move_and_click('//*[@id="content"]//table//tr[3]/td//a[text()[contains(., "Edit")]]', 'xpath', '//*[@id="masthead"]//div//h2[contains(text(), "Off-peak-times")]'); -ok($d->find_text("Edit Wednesday"), 'Edit dialog was opened'); diag("Fill in invalid values"); +ok($d->find_element_by_xpath('//*[@id="mod_edit"]/div/h3[contains(text(), "Edit Wednesday")]'), 'Edit window has been opened'); $d->fill_element('#start', 'css', "invalid"); $d->fill_element('#end', 'css', "value"); $d->find_element('#add', 'css')->click(); @@ -351,7 +351,6 @@ ok($d->find_element_by_xpath('//*[@id="date_definition_table"]//tr[1]/td[contain diag("Delete Date Definition"); $d->scroll_to_element($d->find_element('//*[@id="date_definition_table_filter"]/label/input')); $d->move_and_click('//*[@id="date_definition_table"]/tbody//tr//td//div//a[contains(text(),"Delete")]', 'xpath', '//div[contains(@class, "dataTables_filter")]//input'); -ok($d->find_text("Are you sure?"), 'Delete dialog appears'); $d->find_element('#dataConfirmOK', 'css')->click(); diag("Check if Date Definition has been deleted"); diff --git a/t/selenium/controller_peering.t b/t/selenium/controller_peering.t index 3716440520..d8f8756590 100644 --- a/t/selenium/controller_peering.t +++ b/t/selenium/controller_peering.t @@ -44,7 +44,7 @@ $d->select_if_unselected('//table[@id="billing_profileidtable"]/tbody/tr[1]//inp $d->find_element('//*[@id="status"]')->click(); $d->find_element('//*[@id="status"]/option[@value="active"]')->click(); $d->find_element('//*[@id="save"]')->click(); -ok($d->find_text('Create Peering Group'), 'Succesfully went back to previous form'); # Should go back to prev form +ok($d->find_element_by_xpath('//*[@id="mod_edit"]/div/h3[contains(text(), "Create SIP Peering Group")]'), 'Edit window has been opened'); diag("Continue creating a Peering Group"); $d->fill_element('//*[@id="name"]', 'xpath', $groupname); @@ -205,7 +205,6 @@ ok($d->find_element_by_xpath('//*[@id="peering_servers_table"]//tr[1]/td[contain diag("Delete Inbound Peering Rule"); $d->scroll_to_element($d->find_element('//*[@id="InboundPeeringRules_table_filter"]/label/input')); $d->move_and_click('//*[@id="InboundPeeringRules_table"]/tbody/tr[1]//td//div//a[contains(text(), "Delete")]', 'xpath', '//*[@id="InboundPeeringRules_table_filter"]//input'); -ok($d->find_text("Are you sure?"), 'Delete dialog appears'); $d->find_element('#dataConfirmOK', 'css')->click(); diag("Check if Inbound Peering Rule has been deleted"); @@ -318,7 +317,6 @@ ok($d->find_element_by_xpath('//*[@id="sip_peering_group_table"]//tr[1]/td[conta diag("Delete Peering Server"); $d->move_and_click('//*[@id="sip_peering_group_table"]/tbody/tr[1]//td//div//a[contains(text(), "Details")]', 'xpath', '//*[@id="sip_peering_group_table_filter"]//input'); $d->move_and_click('//*[@id="peering_servers_table"]/tbody/tr[1]//td//div//a[contains(text(), "Delete")]', 'xpath', '//*[@id="peering_servers_table_filter"]//input'); -ok($d->find_text("Are you sure?"), 'Delete dialog appears'); $d->find_element('#dataConfirmOK', 'css')->click(); diag("Check if Peering Server has been deleted"); @@ -334,7 +332,6 @@ ok($d->find_element_by_xpath('//*[@id="PeeringRules_table"]//tr[1]/td[contains(t diag("Delete Outbound Peering Rule"); $d->move_and_click('//*[@id="PeeringRules_table"]/tbody/tr[1]//td//div//a[contains(text(), "Delete")]', 'xpath', '//*[@id="PeeringRules_table_filter"]//input'); -ok($d->find_text("Are you sure?"), 'Delete dialog appears'); $d->find_element('#dataConfirmOK', 'css')->click(); diag("Check if Outbound Peering Rule has been deleted"); @@ -350,7 +347,6 @@ ok($d->find_element_by_css('#sip_peering_group_table tr > td.dataTables_empty', $d->fill_element('//*[@id="sip_peering_group_table_filter"]/label/input', 'xpath', $groupname); ok($d->find_element_by_xpath('//*[@id="sip_peering_group_table"]//tr[1]/td[contains(text(), "' . $groupname . '")]'), 'Peering Group was found'); $d->move_and_click('//*[@id="sip_peering_group_table"]/tbody/tr[1]//td//div//a[contains(text(), "Delete")]', 'xpath', '//*[@id="sip_peering_group_table_filter"]//input'); -ok($d->find_text("Are you sure?"), 'Delete dialog appears'); $d->find_element('#dataConfirmCancel', 'css')->click(); diag('Check if Peering Group is still here'); @@ -359,7 +355,6 @@ ok($d->find_element_by_xpath('//*[@id="sip_peering_group_table"]//tr[1]/td[conta diag('Try to delete Peering Group'); $d->move_and_click('//*[@id="sip_peering_group_table"]/tbody/tr[1]//td//div//a[contains(text(), "Delete")]', 'xpath', '//*[@id="sip_peering_group_table_filter"]//input'); -ok($d->find_text("Are you sure?"), 'Delete dialog appears'); $d->find_element('#dataConfirmOK', 'css')->click(); diag('Check if Peering Group has been deleted');