diff --git a/app/controllers/issues_controller.rb b/app/controllers/issues_controller.rb index 84b95741..ca3309c4 100644 --- a/app/controllers/issues_controller.rb +++ b/app/controllers/issues_controller.rb @@ -102,6 +102,7 @@ class IssuesController < ApplicationController @edit_allowed = User.current.allowed_to?(:edit_issues, @project) @activities = Enumeration::get_values('ACTI') @priorities = Enumeration::get_values('IPRI') + @time_entry = TimeEntry.new respond_to do |format| format.html { render :template => 'issues/show.rhtml' } format.atom { render :action => 'changes', :layout => false, :content_type => 'application/atom+xml' } diff --git a/app/models/time_entry.rb b/app/models/time_entry.rb index ddaff2b6..4bd2d33b 100644 --- a/app/models/time_entry.rb +++ b/app/models/time_entry.rb @@ -29,6 +29,12 @@ class TimeEntry < ActiveRecord::Base validates_numericality_of :hours, :allow_nil => true validates_length_of :comments, :maximum => 255 + def after_initialize + if new_record? + self.activity ||= Enumeration.default('ACTI') + end + end + def before_validation self.project = issue.project if issue && project.nil? end diff --git a/test/fixtures/enumerations.yml b/test/fixtures/enumerations.yml index c90a997e..5e261547 100644 --- a/test/fixtures/enumerations.yml +++ b/test/fixtures/enumerations.yml @@ -39,4 +39,9 @@ enumerations_010: name: Development id: 10 opt: ACTI + is_default: true +enumerations_011: + name: QA + id: 11 + opt: ACTI \ No newline at end of file diff --git a/test/functional/timelog_controller_test.rb b/test/functional/timelog_controller_test.rb index e80a6772..479f4f44 100644 --- a/test/functional/timelog_controller_test.rb +++ b/test/functional/timelog_controller_test.rb @@ -30,7 +30,17 @@ class TimelogControllerTest < Test::Unit::TestCase @response = ActionController::TestResponse.new end - def test_create + def test_get_edit + @request.session[:user_id] = 3 + get :edit, :project_id => 1 + assert_response :success + assert_template 'edit' + # Default activity selected + assert_tag :tag => 'option', :attributes => { :selected => 'selected' }, + :content => 'Development' + end + + def test_post_edit @request.session[:user_id] = 3 post :edit, :project_id => 1, :time_entry => {:comments => 'Some work on TimelogControllerTest',