소스 검색

Merged r21686 and r21687 to 4.2-stable (#36940).


git-svn-id: https://svn.redmine.org/redmine/branches/4.2-stable@21691 e93f8b46-1217-0410-a6f0-8f06a7374b81
tags/4.2.8
Marius Balteanu 1 년 전
부모
커밋
94f3510036
2개의 변경된 파일19개의 추가작업 그리고 1개의 파일을 삭제
  1. 1
    1
      app/models/query.rb
  2. 18
    0
      test/unit/query_test.rb

+ 1
- 1
app/models/query.rb 파일 보기

@@ -1168,7 +1168,7 @@ class Query < ActiveRecord::Base
end

filter = available_filters[field]
target_class = filter[:through].format.target_class
target_class = filter[:through].format.target_class.base_class

"#{queried_table_name}.id #{not_in} IN (" +
"SELECT customized_id FROM #{CustomValue.table_name}" +

+ 18
- 0
test/unit/query_test.rb 파일 보기

@@ -907,6 +907,24 @@ class QueryTest < ActiveSupport::TestCase
assert_equal issue1, result.first
end

def test_filter_on_chained_user_custom_field
user = User.find(2)
User.current = user

user_cf = UserCustomField.find(4)
user_cf.update! is_filter: true

issue_cf = IssueCustomField.create!(:field_format => 'user', :is_for_all => true, :is_filter => true, :name => 'User custom field', :tracker_ids => [1])
issue1 = Issue.create!(:project_id => 1, :tracker_id => 1, :custom_field_values => {issue_cf.id.to_s => '2'}, :subject => 'Test', :author_id => 1)

query = IssueQuery.new(:name => '_', :project => Project.find(1))
query.filters = {"cf_#{issue_cf.id}.cf_#{user_cf.id}" => {:operator => '~', :values => ['01 42']}}
result = query.issues

assert_equal 1, result.size
assert_equal issue1, result.first
end

def test_filter_on_chained_user_custom_field_of_type_float
user_cf = UserCustomField.find(5)
user_cf.update! is_filter: true

Loading…
취소
저장