Add SDG::RelatedListSelectorComponent to Debates

This commit is contained in:
taitus
2021-01-21 16:40:23 +01:00
parent 189c299a6e
commit e6bfeef58d
3 changed files with 41 additions and 1 deletions

View File

@@ -55,7 +55,7 @@ class DebatesController < ApplicationController
private private
def debate_params def debate_params
attributes = [:tag_list, :terms_of_service] attributes = [:tag_list, :terms_of_service, :sdg_related_list]
params.require(:debate).permit(attributes, translation_params(Debate)) params.require(:debate).permit(attributes, translation_params(Debate))
end end

View File

@@ -32,6 +32,9 @@
data: { js_url: suggest_tags_path }, data: { js_url: suggest_tags_path },
class: "tag-autocomplete" %> class: "tag-autocomplete" %>
</div> </div>
<%= render SDG::RelatedListSelectorComponent.new(f) %>
<div class="small-12 column"> <div class="small-12 column">
<% if @debate.new_record? %> <% if @debate.new_record? %>
<%= f.check_box :terms_of_service, <%= f.check_box :terms_of_service,

View File

@@ -1115,4 +1115,41 @@ describe "Debates" do
expect(page).not_to have_content("Featured") expect(page).not_to have_content("Featured")
end end
end end
describe "SDG related list" do
let(:user) { create(:user) }
before do
Setting["feature.sdg"] = true
Setting["sdg.process.debates"] = true
end
scenario "create debate with sdg related list", :js do
login_as(user)
visit new_debate_path
fill_in "Debate title", with: "A title for a debate related with SDG related content"
fill_in_ckeditor "Initial debate text", with: "This is very important because..."
click_sdg_goal(1)
check "debate_terms_of_service"
click_button "Start a debate"
within(".sdg-goal-tag-list") { expect(page).to have_link "1. No Poverty" }
end
scenario "edit debate with sdg related list", :js do
debate = create(:debate, author: user)
debate.sdg_goals = [SDG::Goal[1], SDG::Goal[2]]
login_as(user)
visit edit_debate_path(debate)
remove_sdg_goal_or_target_tag(1)
click_button "Save changes"
within(".sdg-goal-tag-list") do
expect(page).not_to have_link "1. No Poverty"
expect(page).to have_link "2. Zero Hunger"
end
end
end
end end