Add homepage configuration for user recomendations

This commit is contained in:
rgarcia
2018-05-22 20:01:31 +02:00
committed by decabeza
parent 0e097973cc
commit 5fe0dd46b9
2 changed files with 25 additions and 0 deletions

View File

@@ -2,6 +2,7 @@ class Admin::HomepageController < Admin::BaseController
def show def show
load_header load_header
load_settings
load_cards load_cards
end end
@@ -14,6 +15,7 @@ class Admin::HomepageController < Admin::BaseController
def load_settings def load_settings
settings = /feature.homepage.widgets/ settings = /feature.homepage.widgets/
@settings = Setting.select {|setting| setting.key =~ /#{settings}/ } @settings = Setting.select {|setting| setting.key =~ /#{settings}/ }
@settings << Setting.where(key: 'feature.user.recommendations').first
end end
def load_cards def load_cards

View File

@@ -15,6 +15,9 @@ feature 'Homepage' do
let(:proposals_setting) { Setting.where(key: 'feature.homepage.widgets.feeds.proposals').first } let(:proposals_setting) { Setting.where(key: 'feature.homepage.widgets.feeds.proposals').first }
let(:debates_setting) { Setting.where(key: 'feature.homepage.widgets.feeds.debates').first } let(:debates_setting) { Setting.where(key: 'feature.homepage.widgets.feeds.debates').first }
let(:processes_setting) { Setting.where(key: 'feature.homepage.widgets.feeds.processes').first } let(:processes_setting) { Setting.where(key: 'feature.homepage.widgets.feeds.processes').first }
let(:user_recommendations) { Setting.where(key: 'feature.user.recommendations').first }
let(:user) { create(:user) }
scenario "Header" do scenario "Header" do
end end
@@ -101,3 +104,23 @@ feature 'Homepage' do
expect(page).to have_css("img[alt='#{card2.image.title}']") expect(page).to have_css("img[alt='#{card2.image.title}']")
end end
end end
scenario "Recomendations" do
proposal1 = create(:proposal, tag_list: "Sport")
proposal2 = create(:proposal, tag_list: "Sport")
create(:follow, followable: proposal1, user: user)
visit admin_homepage_path
within("#setting_#{user_recommendations.id}") do
click_button "Enable"
end
expect(page).to have_content "Value updated"
login_as(user)
visit root_path
expect(page).to have_content("Recommendations that may interest you")
end
end