From 7bced31e95efbe584d1b6ed831d22668eabf1fd2 Mon Sep 17 00:00:00 2001 From: Akira Saito Date: Wed, 3 Jun 2015 20:46:28 +0900 Subject: [PATCH] add test code: custom link edit test --- test/selenium/edit_custom_field.rb | 21 +++++++++++++++++++++ test/selenium/pages/admin_info.rb | 7 +++++-- test/selenium/pages/workflow_permissions.rb | 4 ++-- test/selenium/setup.rb | 13 ++++++++++++- 4 files changed, 40 insertions(+), 5 deletions(-) diff --git a/test/selenium/edit_custom_field.rb b/test/selenium/edit_custom_field.rb index 31ce3a7..a8bbb32 100644 --- a/test/selenium/edit_custom_field.rb +++ b/test/selenium/edit_custom_field.rb @@ -113,6 +113,27 @@ describe "Edit" do expect( edit_custom_field_with_alert(@issue_id, :custom_float, invalid_value) ).to eq new_value end + it "custom_link can edit" do + admin_info_page = @issues_page.open_admin_info + redmine_version = admin_info_page.redmine_version + + + if redmine_version >= 205 + + @issues_page = admin_info_page.open_issues + + new_value = 'dummy' + expect( edit_custom_field(@issue_id, :custom_link, new_value) ).to eq new_value + + new_value = 'custom_link' + expect( edit_custom_field(@issue_id, :custom_link, new_value) ).to eq new_value + + invalid_value = '' + expect( edit_custom_field_with_alert(@issue_id, :custom_link, invalid_value) ).to eq new_value + + end + end + def edit(issue_id, attribute_name, new_value) @issues_page.quick_edit issue_id, attribute_name, new_value diff --git a/test/selenium/pages/admin_info.rb b/test/selenium/pages/admin_info.rb index 61e8e50..45e3756 100644 --- a/test/selenium/pages/admin_info.rb +++ b/test/selenium/pages/admin_info.rb @@ -21,8 +21,11 @@ module QuickEdit /Redmine (\d+\.\d+\.\d+)/ =~ element.text end - /Redmine (\d+\.\d+\.\d+)/ =~ ver_elements.first.text - version = Regexp.last_match(1) + /Redmine (\d+)\.(\d+)\.(\d+)/ =~ ver_elements.first.text + major = Regexp.last_match(1).to_i * 100 + minor = Regexp.last_match(2).to_i + tiny = Regexp.last_match(3).to_f / 100 + version = major + minor + tiny version end end diff --git a/test/selenium/pages/workflow_permissions.rb b/test/selenium/pages/workflow_permissions.rb index 2a8be31..976dee7 100644 --- a/test/selenium/pages/workflow_permissions.rb +++ b/test/selenium/pages/workflow_permissions.rb @@ -61,7 +61,7 @@ module QuickEdit def parse_html_name(name) /permissions\[(.+?)\]\[(\d+)\]/ =~ name - if /2.3/ =~ @redmine_version + if @redmine_version < 205 id = Regexp.last_match(1) state = Regexp.last_match(2) else @@ -73,7 +73,7 @@ module QuickEdit end def build_html_name(id, state) - if /^2.3/ =~ @redmine_version + if @redmine_version < 205 "permissions[#{id}][#{state}]" else "permissions[#{state}][#{id}]" diff --git a/test/selenium/setup.rb b/test/selenium/setup.rb index 5068aba..508db4f 100644 --- a/test/selenium/setup.rb +++ b/test/selenium/setup.rb @@ -57,7 +57,10 @@ describe "Edit" do end it "setup custom fields" do - custom_fields_page = @first_page.open_custom_fields + admin_info_page = @first_page.open_admin_info + redmine_version = admin_info_page.redmine_version + + custom_fields_page = admin_info_page.open_custom_fields id = custom_fields_page.find_field(:custom_text) if id.nil? new_page = custom_fields_page.open_new_page @@ -93,6 +96,14 @@ describe "Edit" do new_page = custom_fields_page.open_new_page custom_fields_page = new_page.create :readonly_in_progress, :string end + + if redmine_version >= 205 + id = custom_fields_page.find_field(:custom_link) + if id.nil? + new_page = custom_fields_page.open_new_page + custom_fields_page = new_page.create :custom_link, :link + end + end end it "setup users" do -- 2.11.0