@@ -1025,81 +1025,50 class QueryTest < ActiveSupport::TestCase | |||
|
1025 | 1025 | assert !query_ids.include?(7), 'public query on private project was visible' |
|
1026 | 1026 | end |
|
1027 | 1027 | |
|
1028 | context "#available_filters" do | |
|
1029 | setup do | |
|
1030 | @query = IssueQuery.new(:name => "_") | |
|
1031 | end | |
|
1032 | ||
|
1033 | should "include users of visible projects in cross-project view" do | |
|
1034 | users = @query.available_filters["assigned_to_id"] | |
|
1035 | assert_not_nil users | |
|
1036 | assert users[:values].map{|u|u[1]}.include?("3") | |
|
1037 | end | |
|
1038 | ||
|
1039 | should "include users of subprojects" do | |
|
1040 | user1 = User.generate! | |
|
1041 | user2 = User.generate! | |
|
1042 | project = Project.find(1) | |
|
1043 | Member.create!(:principal => user1, :project => project.children.visible.first, :role_ids => [1]) | |
|
1044 | @query.project = project | |
|
1045 | ||
|
1046 | users = @query.available_filters["assigned_to_id"] | |
|
1047 | assert_not_nil users | |
|
1048 | assert users[:values].map{|u|u[1]}.include?(user1.id.to_s) | |
|
1049 | assert !users[:values].map{|u|u[1]}.include?(user2.id.to_s) | |
|
1050 | end | |
|
1051 | ||
|
1052 | should "include visible projects in cross-project view" do | |
|
1053 | projects = @query.available_filters["project_id"] | |
|
1054 | assert_not_nil projects | |
|
1055 | assert projects[:values].map{|u|u[1]}.include?("1") | |
|
1056 | end | |
|
1057 | ||
|
1058 | context "'member_of_group' filter" do | |
|
1059 | should "be present" do | |
|
1060 | assert @query.available_filters.keys.include?("member_of_group") | |
|
1061 | end | |
|
1062 | ||
|
1063 | should "be an optional list" do | |
|
1064 | assert_equal :list_optional, @query.available_filters["member_of_group"][:type] | |
|
1065 | end | |
|
1066 | ||
|
1067 | should "have a list of the groups as values" do | |
|
1068 | Group.destroy_all # No fixtures | |
|
1069 | group1 = Group.generate!.reload | |
|
1070 | group2 = Group.generate!.reload | |
|
1071 | ||
|
1072 | expected_group_list = [ | |
|
1073 | [group1.name, group1.id.to_s], | |
|
1074 | [group2.name, group2.id.to_s] | |
|
1075 | ] | |
|
1076 | assert_equal expected_group_list.sort, @query.available_filters["member_of_group"][:values].sort | |
|
1077 | end | |
|
1028 | test "#available_filters should include users of visible projects in cross-project view" do | |
|
1029 | users = IssueQuery.new.available_filters["assigned_to_id"] | |
|
1030 | assert_not_nil users | |
|
1031 | assert users[:values].map{|u|u[1]}.include?("3") | |
|
1032 | end | |
|
1078 | 1033 | |
|
1079 | end | |
|
1034 | test "#available_filters should include users of subprojects" do | |
|
1035 | user1 = User.generate! | |
|
1036 | user2 = User.generate! | |
|
1037 | project = Project.find(1) | |
|
1038 | Member.create!(:principal => user1, :project => project.children.visible.first, :role_ids => [1]) | |
|
1080 | 1039 | |
|
1081 | context "'assigned_to_role' filter" do | |
|
1082 | should "be present" do | |
|
1083 | assert @query.available_filters.keys.include?("assigned_to_role") | |
|
1084 | end | |
|
1040 | users = IssueQuery.new(:project => project).available_filters["assigned_to_id"] | |
|
1041 | assert_not_nil users | |
|
1042 | assert users[:values].map{|u|u[1]}.include?(user1.id.to_s) | |
|
1043 | assert !users[:values].map{|u|u[1]}.include?(user2.id.to_s) | |
|
1044 | end | |
|
1085 | 1045 | |
|
1086 | should "be an optional list" do | |
|
1087 | assert_equal :list_optional, @query.available_filters["assigned_to_role"][:type] | |
|
1088 | end | |
|
1046 | test "#available_filters should include visible projects in cross-project view" do | |
|
1047 | projects = IssueQuery.new.available_filters["project_id"] | |
|
1048 | assert_not_nil projects | |
|
1049 | assert projects[:values].map{|u|u[1]}.include?("1") | |
|
1050 | end | |
|
1089 | 1051 | |
|
1090 | should "have a list of the Roles as values" do | |
|
1091 | assert @query.available_filters["assigned_to_role"][:values].include?(['Manager','1']) | |
|
1092 |
|
|
|
1093 | assert @query.available_filters["assigned_to_role"][:values].include?(['Reporter','3']) | |
|
1094 | end | |
|
1052 | test "#available_filters should include 'member_of_group' filter" do | |
|
1053 | query = IssueQuery.new | |
|
1054 | assert query.available_filters.keys.include?("member_of_group") | |
|
1055 | assert_equal :list_optional, query.available_filters["member_of_group"][:type] | |
|
1056 | assert query.available_filters["member_of_group"][:values].present? | |
|
1057 | assert_equal Group.all.sort.map {|g| [g.name, g.id.to_s]}, | |
|
1058 | query.available_filters["member_of_group"][:values].sort | |
|
1059 | end | |
|
1095 | 1060 | |
|
1096 | should "not include the built in Roles as values" do | |
|
1097 | assert ! @query.available_filters["assigned_to_role"][:values].include?(['Non member','4']) | |
|
1098 |
|
|
|
1099 | end | |
|
1061 | test "#available_filters should include 'assigned_to_role' filter" do | |
|
1062 | query = IssueQuery.new | |
|
1063 | assert query.available_filters.keys.include?("assigned_to_role") | |
|
1064 | assert_equal :list_optional, query.available_filters["assigned_to_role"][:type] | |
|
1100 | 1065 | |
|
1101 | end | |
|
1066 | assert query.available_filters["assigned_to_role"][:values].include?(['Manager','1']) | |
|
1067 | assert query.available_filters["assigned_to_role"][:values].include?(['Developer','2']) | |
|
1068 | assert query.available_filters["assigned_to_role"][:values].include?(['Reporter','3']) | |
|
1102 | 1069 | |
|
1070 | assert ! query.available_filters["assigned_to_role"][:values].include?(['Non member','4']) | |
|
1071 | assert ! query.available_filters["assigned_to_role"][:values].include?(['Anonymous','5']) | |
|
1103 | 1072 | end |
|
1104 | 1073 | |
|
1105 | 1074 | context "#statement" do |
General Comments 0
You need to be logged in to leave comments.
Login now