diff options
-rw-r--r-- | public/javascripts/application.js | 8 | ||||
-rw-r--r-- | test/ui/base.rb | 5 | ||||
-rw-r--r-- | test/ui/issues_test_ui.rb | 21 |
3 files changed, 30 insertions, 4 deletions
diff --git a/public/javascripts/application.js b/public/javascripts/application.js index 8d1f8d56a..558235fa6 100644 --- a/public/javascripts/application.js +++ b/public/javascripts/application.js @@ -555,7 +555,13 @@ function beforeShowDatePicker(input, inst) { break; case "issue_due_date" : if ($("#issue_start_date").size() > 0) { - default_date = $("#issue_start_date").val(); + var start_date = $("#issue_start_date").val(); + if (start_date != "") { + start_date = new Date(Date.parse(start_date)); + if (start_date > new Date()) { + default_date = $("#issue_start_date").val(); + } + } } break; } diff --git a/test/ui/base.rb b/test/ui/base.rb index f7273e227..dfaa61107 100644 --- a/test/ui/base.rb +++ b/test/ui/base.rb @@ -60,6 +60,11 @@ module Redmine assert_equal '/my/page', current_path end + setup do + # Set the page width higher than 900 to get the full layout with sidebar + page.driver.browser.manage.window.resize_to(1024, 900) + end + teardown do Capybara.reset_sessions! # Forget the (simulated) browser state Capybara.use_default_driver # Revert Capybara.current_driver to Capybara.default_driver diff --git a/test/ui/issues_test_ui.rb b/test/ui/issues_test_ui.rb index 92f4cdd7b..be443575a 100644 --- a/test/ui/issues_test_ui.rb +++ b/test/ui/issues_test_ui.rb @@ -21,7 +21,7 @@ class Redmine::UiTest::IssuesTest < Redmine::UiTest::Base fixtures :projects, :users, :email_addresses, :roles, :members, :member_roles, :trackers, :projects_trackers, :enabled_modules, :issue_statuses, :issues, :enumerations, :custom_fields, :custom_values, :custom_fields_trackers, - :watchers + :watchers, :journals, :journal_details def test_create_issue log_user('jsmith', 'jsmith') @@ -150,15 +150,30 @@ class Redmine::UiTest::IssuesTest < Redmine::UiTest::Base end end - def test_create_issue_start_due_date_default + def test_default_due_date_proposed_in_date_picker log_user('jsmith', 'jsmith') visit '/projects/ecookbook/issues/new' + + # Future start date: due date should default to start date + fill_in 'Start date', :with => '2027-04-01' + fill_in 'Due date', :with => '' + page.first('p#due_date_area img').click + page.first("td.ui-datepicker-days-cell-over a").click + assert_equal '2027-04-01', page.find('input#issue_due_date').value + + # Passed start date: due date should default to today fill_in 'Start date', :with => '2012-04-01' fill_in 'Due date', :with => '' page.first('p#due_date_area img').click page.first("td.ui-datepicker-days-cell-over a").click - assert_equal '2012-04-01', page.find('input#issue_due_date').value + assert_equal Date.today.to_s, page.find('input#issue_due_date').value + end + + def test_default_start_date_proposed_in_date_picker + log_user('jsmith', 'jsmith') + visit '/projects/ecookbook/issues/new' + # Passed due date: start date should default to due date fill_in 'Start date', :with => '' fill_in 'Due date', :with => '2012-04-01' page.first('p#start_date_area img').click |