respond_to do |format|
format.html {render :action => "show", :layout => !request.xhr?}
- if @gantt.respond_to?('to_image')
+ if @gantt.respond_to?(:to_image)
format.png do
send_data(@gantt.to_image,
:disposition => 'inline', :type => 'image/png',
).all
issues.each do |issue|
issue.instance_variable_set(
- "@relations",
+ :@relations,
relations.select {|r| r.issue_from_id == issue.id || r.issue_to_id == issue.id}
)
end
if issues.any?
hours_by_issue_id = TimeEntry.visible(user).where(:issue_id => issues.map(&:id)).group(:issue_id).sum(:hours)
issues.each do |issue|
- issue.instance_variable_set "@spent_hours", (hours_by_issue_id[issue.id] || 0.0)
+ issue.instance_variable_set :@spent_hours, (hours_by_issue_id[issue.id] || 0.0)
end
end
end
" AND parent.lft <= #{Issue.table_name}.lft AND parent.rgt >= #{Issue.table_name}.rgt").
where("parent.id IN (?)", issues.map(&:id)).group("parent.id").sum(:hours)
issues.each do |issue|
- issue.instance_variable_set "@total_spent_hours", (hours_by_issue_id[issue.id] || 0.0)
+ issue.instance_variable_set :@total_spent_hours, (hours_by_issue_id[issue.id] || 0.0)
end
end
end
relations_from.select {|relation| relation.issue_from_id == issue.id} +
relations_to.select {|relation| relation.issue_to_id == issue.id}
- issue.instance_variable_set "@relations", IssueRelation::Relations.new(issue, relations.sort)
+ issue.instance_variable_set :@relations, IssueRelation::Relations.new(issue, relations.sort)
end
end
end
issues.each do |issue|
journal = journals.detect {|j| j.journalized_id == issue.id}
- issue.instance_variable_set("@last_updated_by", journal.try(:user) || '')
+ issue.instance_variable_set(:@last_updated_by, journal.try(:user) || '')
end
end
end
issues.each do |issue|
journal = journals.detect {|j| j.journalized_id == issue.id}
- issue.instance_variable_set("@last_notes", journal.try(:notes) || '')
+ issue.instance_variable_set(:@last_notes, journal.try(:notes) || '')
end
end
end
journals.each do |journal|
journal.details.each do |detail|
if detail.property == 'cf'
- detail.instance_variable_set "@custom_field", fields_by_id[detail.prop_key.to_i]
+ detail.instance_variable_set :@custom_field, fields_by_id[detail.prop_key.to_i]
end
end
end
end
if column.is_a?(QueryCustomFieldColumn)
custom_field = column.custom_field
- send "total_for_custom_field", custom_field, scope
+ send :total_for_custom_field, custom_field, scope
else
send "total_for_#{column.name}", scope
end
elsif value.is_a?(String)
value = set_custom_field_value_by_id(custom_field, custom_field_value, value)
end
- custom_field_value.instance_variable_set "@attachment_present", attachment_present
+ custom_field_value.instance_variable_set :@attachment_present, attachment_present
value
end
errors = []
if custom_value.value.blank?
- if custom_value.instance_variable_get("@attachment_present")
+ if custom_value.instance_variable_get(:@attachment_present)
errors << ::I18n.t('activerecord.errors.messages.invalid')
end
else
end
def supports_annotate?
- respond_to?('annotate')
+ respond_to?(:annotate)
end
def root_url
class << self
# Returns the relative root url of the application
def relative_url_root
- if ActionController::Base.respond_to?('relative_url_root')
+ if ActionController::Base.respond_to?(:relative_url_root)
ActionController::Base.relative_url_root.to_s
else
ActionController::Base.config.relative_url_root.to_s
# Sets the relative root url of the application
def relative_url_root=(arg)
- if ActionController::Base.respond_to?('relative_url_root=')
+ if ActionController::Base.respond_to?(:relative_url_root=)
ActionController::Base.relative_url_root=arg
else
ActionController::Base.config.relative_url_root = arg
assert_select 'div#issue_tree span.issues-stat' do
assert_select 'span.badge', text: '4'
assert_select 'span.open a', text: '3 open'
- assert_equal CGI.unescape(css_select('span.open a').first.attr('href')),
+ assert_equal CGI.unescape(css_select('span.open a').first.attr(:href)),
"/issues?parent_id=~1&set_filter=true&status_id=o"
assert_select 'span.closed a', text: '1 closed'
- assert_equal CGI.unescape(css_select('span.closed a').first.attr('href')),
+ assert_equal CGI.unescape(css_select('span.closed a').first.attr(:href)),
"/issues?parent_id=~1&set_filter=true&status_id=c"
end
end
assert_select 'div#issue_tree span.issues-stat' do
assert_select 'span.open a', text: '1 open'
- assert_equal CGI.unescape(css_select('span.open a').first.attr('href')),
+ assert_equal CGI.unescape(css_select('span.open a').first.attr(:href)),
"/issues?parent_id=~1&set_filter=true&status_id=o"
assert_select 'span.closed', text: '0 closed'
assert_select 'span.closed a', 0
assert_response :success
assert_select '#block-issuesupdatedbyme' do
- report_url = CGI.unescape(css_select('h3 a').first.attr('href'))
+ report_url = CGI.unescape(css_select('h3 a').first.attr(:href))
assert_match 'f[]=project.status', report_url
assert_match 'v[project.status][]=1', report_url
assert_match 'f[]=updated_by', report_url
assert_response :success
assert_select '#block-issuesassignedtome table.issues tbody' do
- report_url = css_select('h3 a').map {|e| e.attr('href')}.first
+ report_url = css_select('h3 a').map {|e| e.attr(:href)}.first
assert_match 'f%5B%5D=project.status', report_url
assert_match 'v%5Bproject.status%5D%5B%5D=1', report_url
assert_response :success
assert_select '#block-issuesreportedbyme' do
- report_url = css_select('h3 a').map {|e| e.attr('href')}.first
+ report_url = css_select('h3 a').map {|e| e.attr(:href)}.first
assert_match 'f%5B%5D=project.status', report_url
assert_match 'v%5Bproject.status%5D%5B%5D=1', report_url
assert_response :success
assert_select '#block-issueswatched table.issues tbody' do
- report_url = css_select('h3 a').map {|e| e.attr('href')}.first
+ report_url = css_select('h3 a').map {|e| e.attr(:href)}.first
assert_match 'f%5B%5D=project.status', report_url
assert_match 'v%5Bproject.status%5D%5B%5D=1', report_url
}
assert_response :success
- child_level1 = css_select('tr#project-5').map {|e| e.attr('class')}.first.split(' ')
- child_level2 = css_select('tr#project-6').map {|e| e.attr('class')}.first.split(' ')
+ child_level1 = css_select('tr#project-5').map {|e| e.attr(:class)}.first.split(' ')
+ child_level2 = css_select('tr#project-6').map {|e| e.attr(:class)}.first.split(' ')
assert_include 'idnt', child_level1
assert_include 'idnt-1', child_level1
assert_response :success
assert_equal(
%w(view_documents view_issues),
- css_select('input[name="role[permissions][]"][checked=checked]').map {|e| e.attr('value')}.sort
+ css_select('input[name="role[permissions][]"][checked=checked]').map {|e| e.attr(:value)}.sort
)
end
assert_response :success
assert_equal(
[t2, t1, t3].map(&:id).map(&:to_s),
- css_select('input[name="ids[]"]').map {|e| e.attr('value')}
+ css_select('input[name="ids[]"]').map {|e| e.attr(:value)}
)
get(
:index,
assert_response :success
assert_equal(
[t3, t1, t2].map(&:id).map(&:to_s),
- css_select('input[name="ids[]"]').map {|e| e.attr('value')}
+ css_select('input[name="ids[]"]').map {|e| e.attr(:value)}
)
end
get :index, :params => params.dup.merge(sort_criteria)
assert_response :success
expected_ids = expected.map(&:id).map(&:to_s)
- actual_ids = css_select('input[name="ids[]"]').map {|e| e.attr('value')}
+ actual_ids = css_select('input[name="ids[]"]').map {|e| e.attr(:value)}
assert_equal expected_ids, actual_ids
end
end
}
)
assert_response :success
- assert_equal [entry].map(&:id).map(&:to_s), css_select('input[name="ids[]"]').map {|e| e.attr('value')}
+ assert_equal [entry].map(&:id).map(&:to_s), css_select('input[name="ids[]"]').map {|e| e.attr(:value)}
end
def test_index_with_project_status_filter
)
assert_response :success
- time_entries = css_select('input[name="ids[]"]').map {|e| e.attr('value')}
+ time_entries = css_select('input[name="ids[]"]').map {|e| e.attr(:value)}
assert_include '1', time_entries
assert_not_include '4', time_entries
end
:v => {'issue.tracker_id' => ['2']}
}
assert_response :success
- assert_equal [entry].map(&:id).map(&:to_s), css_select('input[name="ids[]"]').map {|e| e.attr('value')}
+ assert_equal [entry].map(&:id).map(&:to_s), css_select('input[name="ids[]"]').map {|e| e.attr(:value)}
end
def test_index_with_issue_tracker_column
:v => {'issue.category_id' => ['1']}
}
assert_response :success
- assert_equal ['1', '2'], css_select('input[name="ids[]"]').map {|e| e.attr('value')}
+ assert_equal ['1', '2'], css_select('input[name="ids[]"]').map {|e| e.attr(:value)}
end
def test_index_with_issue_category_column
:v => {'author_id' => ['2']}
}
assert_response :success
- assert_equal ['1'], css_select('input[name="ids[]"]').map {|e| e.attr('value')}
+ assert_equal ['1'], css_select('input[name="ids[]"]').map {|e| e.attr(:value)}
end
def test_index_with_author_column
assert_response :success
assert_equal(
[entry].map(&:id).map(&:to_s),
- css_select('input[name="ids[]"]').map {|e| e.attr('value')}
+ css_select('input[name="ids[]"]').map {|e| e.attr(:value)}
)
end
# link to the attachment
link = css_select(".cf_#{@field.id} .value a:not(.icon-download)")
assert_equal 1, link.size
- assert_equal "testfile.txt", link.text
+ assert_equal "testfile.txt", link.first.text
# preview the attachment
- get link.attr('href')
+ get link.first.attr(:href)
assert_response :success
assert_select 'h2', :text => "#{issue.tracker} ##{issue.id} ยป testfile.txt"
end
d = JournalDetail.new(:property => 'cf', :prop_key => '2')
journals = [Journal.new(:details => [d])]
- d.expects(:instance_variable_set).with("@custom_field", CustomField.find(2)).once
+ d.expects(:instance_variable_set).with(:@custom_field, CustomField.find(2)).once
Journal.preload_journals_details_custom_fields(journals)
end
@gantt.project = @project
@gantt.query = IssueQuery.new(:project => @project, :name => 'Gantt')
@gantt.view = self
- @gantt.instance_variable_set('@date_from', options[:date_from] || (today - 14))
- @gantt.instance_variable_set('@date_to', options[:date_to] || (today + 14))
+ @gantt.instance_variable_set(:@date_from, options[:date_from] || (today - 14))
+ @gantt.instance_variable_set(:@date_to, options[:date_to] || (today + 14))
end
private :create_gantt
def test_set_safe_attributes
p = Person.new
- p.send('safe_attributes=', {'firstname' => 'John', 'lastname' => 'Smith', 'login' => 'jsmith'}, User.anonymous)
+ p.send(:safe_attributes=, {'firstname' => 'John', 'lastname' => 'Smith', 'login' => 'jsmith'}, User.anonymous)
assert_equal 'John', p.firstname
assert_equal 'Smith', p.lastname
assert_nil p.login
p = Person.new
User.current = User.find(1)
- p.send('safe_attributes=', {'firstname' => 'John', 'lastname' => 'Smith', 'login' => 'jsmith'}, User.find(1))
+ p.send(:safe_attributes=, {'firstname' => 'John', 'lastname' => 'Smith', 'login' => 'jsmith'}, User.find(1))
assert_equal 'John', p.firstname
assert_equal 'Smith', p.lastname
assert_equal 'jsmith', p.login
q = IssueQuery.new(:name => '_', :column_names => [:subject, :spent_hours])
assert q.has_column?(:spent_hours)
issues = q.issues
- assert_not_nil issues.first.instance_variable_get("@spent_hours")
+ assert_not_nil issues.first.instance_variable_get(:@spent_hours)
end
def test_query_should_preload_last_updated_by
assert q.has_column?(:last_updated_by)
issues = q.issues.sort_by(&:id)
- assert issues.all? {|issue| !issue.instance_variable_get("@last_updated_by").nil?}
+ assert issues.all? {|issue| !issue.instance_variable_get(:@last_updated_by).nil?}
assert_equal ["User", "User", "NilClass"], issues.map {|i| i.last_updated_by.class.name}
assert_equal ["John Smith", "John Smith", ""], issues.map {|i| i.last_updated_by.to_s}
end
q = IssueQuery.new(:name => '_', :column_names => [:subject, :last_notes])
assert q.has_column?(:last_notes)
issues = q.issues
- assert_not_nil issues.first.instance_variable_get("@last_notes")
+ assert_not_nil issues.first.instance_variable_get(:@last_notes)
end
def test_groupable_columns_should_include_custom_fields