default order confidence_score for home and debate index
This commit is contained in:
@@ -83,7 +83,7 @@ class DebatesController < ApplicationController
|
||||
end
|
||||
|
||||
def parse_order
|
||||
@valid_orders = ['hot_score', 'created_at', 'score', 'most_commented', 'random']
|
||||
@valid_orders = ['confidence_score', 'hot_score', 'created_at', 'most_commented', 'random']
|
||||
@order = @valid_orders.include?(params[:order]) ? params[:order] : @valid_orders.first
|
||||
end
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@ class WelcomeController < ApplicationController
|
||||
skip_authorization_check
|
||||
|
||||
def index
|
||||
@featured_debates = Debate.sort_by_hot_score.limit(3).for_render
|
||||
@featured_debates = Debate.sort_by_confidence_score.limit(3).for_render
|
||||
set_debate_votes(@featured_debates)
|
||||
end
|
||||
|
||||
|
||||
@@ -71,9 +71,9 @@ en:
|
||||
select_order: Order by
|
||||
select_order_long: Order debates by
|
||||
orders:
|
||||
confidence_score: best rated
|
||||
hot_score: most active
|
||||
created_at: newest
|
||||
score: best rated
|
||||
most_commented: most commented
|
||||
random: random
|
||||
filter_topic:
|
||||
|
||||
@@ -71,9 +71,9 @@ es:
|
||||
select_order: Ordenar por
|
||||
select_order_long: Estás viendo los debates
|
||||
orders:
|
||||
confidence_score: "mejor valorados"
|
||||
hot_score: "más activos"
|
||||
created_at: "más nuevos"
|
||||
score: "mejor valorados"
|
||||
most_commented: "más comentados"
|
||||
random: "aleatorio"
|
||||
filter_topic:
|
||||
|
||||
@@ -359,10 +359,10 @@ feature 'Debates' do
|
||||
|
||||
feature 'Debate index order filters' do
|
||||
|
||||
scenario 'Default order is hot_score', :js do
|
||||
create(:debate, title: 'best').update_column(:hot_score, 10)
|
||||
create(:debate, title: 'worst').update_column(:hot_score, 2)
|
||||
create(:debate, title: 'medium').update_column(:hot_score, 5)
|
||||
scenario 'Default order is confidence_score', :js do
|
||||
create(:debate, title: 'best').update_column(:confidence_score, 10)
|
||||
create(:debate, title: 'worst').update_column(:confidence_score, 2)
|
||||
create(:debate, title: 'medium').update_column(:confidence_score, 5)
|
||||
|
||||
visit debates_path
|
||||
|
||||
@@ -370,20 +370,20 @@ feature 'Debates' do
|
||||
expect('medium').to appear_before('worst')
|
||||
end
|
||||
|
||||
scenario 'Debates are ordered by best rated', :js do
|
||||
create(:debate, title: 'best', cached_votes_score: 10)
|
||||
create(:debate, title: 'medium', cached_votes_score: 5)
|
||||
create(:debate, title: 'worst', cached_votes_score: 2)
|
||||
scenario 'Debates are ordered by hot_score', :js do
|
||||
create(:debate, title: 'best').update_column(:hot_score, 10)
|
||||
create(:debate, title: 'worst').update_column(:hot_score, 2)
|
||||
create(:debate, title: 'medium').update_column(:hot_score, 5)
|
||||
|
||||
visit debates_path
|
||||
select 'best rated', from: 'order-selector'
|
||||
select 'most active', from: 'order-selector'
|
||||
|
||||
within '#debates.js-order-score' do
|
||||
within '#debates.js-order-hot-score' do
|
||||
expect('best').to appear_before('medium')
|
||||
expect('medium').to appear_before('worst')
|
||||
end
|
||||
|
||||
expect(current_url).to include('order=score')
|
||||
expect(current_url).to include('order=hot_score')
|
||||
end
|
||||
|
||||
scenario 'Debates are ordered by most commented', :js do
|
||||
|
||||
@@ -17,4 +17,15 @@ feature "Home" do
|
||||
|
||||
end
|
||||
|
||||
scenario "Order by confidence score" do
|
||||
create(:debate, confidence_score: 100, title: 'best')
|
||||
create(:debate, confidence_score: -20, title: 'worst')
|
||||
create(:debate, confidence_score: 50, title: 'medium')
|
||||
|
||||
visit root_path
|
||||
|
||||
expect('best').to appear_before('medium')
|
||||
expect('medium').to appear_before('worst')
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user