mirror of
https://github.com/discourse/discourse.git
synced 2025-05-24 14:12:10 +08:00
FEATURE: Category Reviewable by Group
Allow a group to review content in a particular category.
This commit is contained in:
@ -148,8 +148,11 @@ describe CategoriesController do
|
||||
|
||||
describe "success" do
|
||||
it "works" do
|
||||
SiteSetting.enable_category_group_review = true
|
||||
|
||||
readonly = CategoryGroup.permission_types[:readonly]
|
||||
create_post = CategoryGroup.permission_types[:create_post]
|
||||
group = Fabricate(:group)
|
||||
|
||||
post "/categories.json", params: {
|
||||
name: "hello",
|
||||
@ -158,6 +161,7 @@ describe CategoriesController do
|
||||
slug: "hello-cat",
|
||||
auto_close_hours: 72,
|
||||
search_priority: Searchable::PRIORITIES[:ignore],
|
||||
reviewable_by_group_name: group.name,
|
||||
permissions: {
|
||||
"everyone" => readonly,
|
||||
"staff" => create_post
|
||||
@ -165,15 +169,19 @@ describe CategoriesController do
|
||||
}
|
||||
|
||||
expect(response.status).to eq(200)
|
||||
category = Category.find_by(name: "hello")
|
||||
cat_json = ::JSON.parse(response.body)['category']
|
||||
expect(cat_json).to be_present
|
||||
expect(cat_json['reviewable_by_group_name']).to eq(group.name)
|
||||
expect(cat_json['name']).to eq('hello')
|
||||
expect(cat_json['slug']).to eq('hello-cat')
|
||||
expect(cat_json['color']).to eq('ff0')
|
||||
expect(cat_json['auto_close_hours']).to eq(72)
|
||||
expect(cat_json['search_priority']).to eq(Searchable::PRIORITIES[:ignore])
|
||||
|
||||
category = Category.find(cat_json['id'])
|
||||
expect(category.category_groups.map { |g| [g.group_id, g.permission_type] }.sort).to eq([
|
||||
[Group[:everyone].id, readonly], [Group[:staff].id, create_post]
|
||||
])
|
||||
expect(category.name).to eq("hello")
|
||||
expect(category.slug).to eq("hello-cat")
|
||||
expect(category.color).to eq("ff0")
|
||||
expect(category.auto_close_hours).to eq(72)
|
||||
expect(category.search_priority).to eq(Searchable::PRIORITIES[:ignore])
|
||||
expect(UserHistory.count).to eq(4) # 1 + 3 (bootstrap mode)
|
||||
end
|
||||
end
|
||||
|
Reference in New Issue
Block a user