Adds a way to filter issues with or without start date (#9607).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@7841 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
parent
9ac86d4f4e
commit
12d05431c2
|
@ -120,8 +120,8 @@ class Query < ActiveRecord::Base
|
||||||
:list_status => [ "o", "=", "!", "c", "*" ],
|
:list_status => [ "o", "=", "!", "c", "*" ],
|
||||||
:list_optional => [ "=", "!", "!*", "*" ],
|
:list_optional => [ "=", "!", "!*", "*" ],
|
||||||
:list_subprojects => [ "*", "!*", "=" ],
|
:list_subprojects => [ "*", "!*", "=" ],
|
||||||
:date => [ "=", ">=", "<=", "><", "<t+", ">t+", "t+", "t", "w", ">t-", "<t-", "t-" ],
|
:date => [ "=", ">=", "<=", "><", "<t+", ">t+", "t+", "t", "w", ">t-", "<t-", "t-", "!*", "*" ],
|
||||||
:date_past => [ "=", ">=", "<=", "><", ">t-", "<t-", "t-", "t", "w" ],
|
:date_past => [ "=", ">=", "<=", "><", ">t-", "<t-", "t-", "t", "w", "!*", "*" ],
|
||||||
:string => [ "=", "~", "!", "!~" ],
|
:string => [ "=", "~", "!", "!~" ],
|
||||||
:text => [ "~", "!~" ],
|
:text => [ "~", "!~" ],
|
||||||
:integer => [ "=", ">=", "<=", "><", "!*", "*" ],
|
:integer => [ "=", ">=", "<=", "><", "!*", "*" ],
|
||||||
|
|
|
@ -97,6 +97,14 @@ class QueryTest < ActiveSupport::TestCase
|
||||||
assert issues.all? {|i| !i.estimated_hours}
|
assert issues.all? {|i| !i.estimated_hours}
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_operator_none_for_date
|
||||||
|
query = Query.new(:project => Project.find(1), :name => '_')
|
||||||
|
query.add_filter('start_date', '!*', [''])
|
||||||
|
issues = find_issues_with_query(query)
|
||||||
|
assert !issues.empty?
|
||||||
|
assert issues.all? {|i| i.start_date.nil?}
|
||||||
|
end
|
||||||
|
|
||||||
def test_operator_all
|
def test_operator_all
|
||||||
query = Query.new(:project => Project.find(1), :name => '_')
|
query = Query.new(:project => Project.find(1), :name => '_')
|
||||||
query.add_filter('fixed_version_id', '*', [''])
|
query.add_filter('fixed_version_id', '*', [''])
|
||||||
|
@ -106,6 +114,14 @@ class QueryTest < ActiveSupport::TestCase
|
||||||
find_issues_with_query(query)
|
find_issues_with_query(query)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_operator_all_for_date
|
||||||
|
query = Query.new(:project => Project.find(1), :name => '_')
|
||||||
|
query.add_filter('start_date', '*', [''])
|
||||||
|
issues = find_issues_with_query(query)
|
||||||
|
assert !issues.empty?
|
||||||
|
assert issues.all? {|i| i.start_date.present?}
|
||||||
|
end
|
||||||
|
|
||||||
def test_numeric_filter_should_not_accept_non_numeric_values
|
def test_numeric_filter_should_not_accept_non_numeric_values
|
||||||
query = Query.new(:name => '_')
|
query = Query.new(:name => '_')
|
||||||
query.add_filter('estimated_hours', '=', ['a'])
|
query.add_filter('estimated_hours', '=', ['a'])
|
||||||
|
|
Loading…
Reference in New Issue