move filter order tests from helper to model.

r11372 (#13154) moves filter order logic from helper to model.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@11848 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Toshi MARUYAMA 2013-05-16 10:55:27 +00:00
parent 559aa626cd
commit f2a609c358
2 changed files with 28 additions and 32 deletions

View File

@ -19,7 +19,6 @@ require File.expand_path('../../../test_helper', __FILE__)
class QueriesHelperTest < ActionView::TestCase class QueriesHelperTest < ActionView::TestCase
include QueriesHelper include QueriesHelper
include Redmine::I18n
fixtures :projects, :enabled_modules, :users, :members, fixtures :projects, :enabled_modules, :users, :members,
:member_roles, :roles, :trackers, :issue_statuses, :member_roles, :roles, :trackers, :issue_statuses,
@ -29,41 +28,11 @@ class QueriesHelperTest < ActionView::TestCase
:projects_trackers, :projects_trackers,
:custom_fields_trackers :custom_fields_trackers
def test_filters_options_should_be_ordered def test_filters_options_has_empty_item
set_language_if_valid 'en'
query = IssueQuery.new query = IssueQuery.new
filter_count = query.available_filters.size filter_count = query.available_filters.size
fo = filters_options(query) fo = filters_options(query)
assert_equal filter_count + 1, fo.size assert_equal filter_count + 1, fo.size
assert_equal [], fo[0] assert_equal [], fo[0]
expected_order = [
"Status",
"Project",
"Tracker",
"Priority"
]
assert_equal expected_order, (fo.map(&:first) & expected_order)
end
def test_filters_options_should_be_ordered_with_custom_fields
set_language_if_valid 'en'
UserCustomField.create!(
:name => 'order test', :field_format => 'string',
:is_for_all => true, :is_filter => true
)
query = IssueQuery.new
filter_count = query.available_filters.size
fo = filters_options(query)
assert_equal filter_count + 1, fo.size
expected_order = [
"Searchable field",
"Database",
"Project's Development status",
"Author's order test",
"Assignee's order test"
]
assert_equal expected_order, (fo.map(&:first) & expected_order)
end end
end end

View File

@ -29,8 +29,35 @@ class QueryTest < ActiveSupport::TestCase
:custom_fields_trackers :custom_fields_trackers
def test_available_filters_should_be_ordered def test_available_filters_should_be_ordered
set_language_if_valid 'en'
query = IssueQuery.new query = IssueQuery.new
assert_equal 0, query.available_filters.keys.index('status_id') assert_equal 0, query.available_filters.keys.index('status_id')
expected_order = [
"Status",
"Project",
"Tracker",
"Priority"
]
assert_equal expected_order,
(query.available_filters.values.map{|v| v[:name]} & expected_order)
end
def test_available_filters_with_custom_fields_should_be_ordered
set_language_if_valid 'en'
UserCustomField.create!(
:name => 'order test', :field_format => 'string',
:is_for_all => true, :is_filter => true
)
query = IssueQuery.new
expected_order = [
"Searchable field",
"Database",
"Project's Development status",
"Author's order test",
"Assignee's order test"
]
assert_equal expected_order,
(query.available_filters.values.map{|v| v[:name]} & expected_order)
end end
def test_custom_fields_for_all_projects_should_be_available_in_global_queries def test_custom_fields_for_all_projects_should_be_available_in_global_queries