Makes hot_score the default order in proposals & debates

This commit is contained in:
kikito
2015-09-15 09:27:55 +02:00
parent c5052ff270
commit 79a99ce595
4 changed files with 26 additions and 26 deletions

View File

@@ -2,7 +2,7 @@ class DebatesController < ApplicationController
before_action :parse_tag_filter, only: :index
before_action :parse_search_terms, only: :index
before_action :authenticate_user!, except: [:index, :show]
has_orders %w{confidence_score hot_score created_at most_commented random}, only: :index
has_orders %w{hot_score confidence_score created_at most_commented random}, only: :index
load_and_authorize_resource

View File

@@ -2,7 +2,7 @@ class ProposalsController < ApplicationController
before_action :parse_tag_filter, only: :index
before_action :parse_search_terms, only: :index
before_action :authenticate_user!, except: [:index, :show]
has_orders %w{confidence_score hot_score created_at most_commented random}, only: :index
has_orders %w{hot_score confidence_score created_at most_commented random}, only: :index
load_and_authorize_resource
respond_to :html, :js

View File

@@ -389,10 +389,10 @@ feature 'Debates' do
feature 'Debate index order filters' do
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)
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)
visit debates_path
@@ -400,22 +400,22 @@ feature 'Debates' do
expect('Medium').to appear_before('Worst')
end
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)
scenario 'Debates are ordered by 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
select 'most active', from: 'order-selector'
select 'best rated', from: 'order-selector'
expect(page).to have_selector('.js-order-selector[data-order="hot_score"]')
expect(page).to have_selector('.js-order-selector[data-order="confidence_score"]')
within '#debates' do
expect('Best').to appear_before('Medium')
expect('Medium').to appear_before('Worst')
end
expect(current_url).to include('order=hot_score')
expect(current_url).to include('order=confidence_score')
expect(current_url).to include('page=1')
end

View File

@@ -3,12 +3,12 @@ require 'rails_helper'
feature 'Proposals' do
scenario 'Index' do
proposal = [create(:proposal), create(:proposal), create(:proposal)]
proposals = [create(:proposal), create(:proposal), create(:proposal)]
visit proposals_path
expect(page).to have_selector('#proposals .proposal', count: 3)
proposal.each do |proposal|
proposals.each do |proposal|
within('#proposals') do
expect(page).to have_content proposal.title
expect(page).to have_css("a[href='#{proposal_path(proposal)}']", text: proposal.summary)
@@ -440,10 +440,10 @@ feature 'Proposals' do
feature 'Proposal index order filters' do
scenario 'Default order is confidence_score', :js do
create(:proposal, title: 'Best proposal').update_column(:confidence_score, 10)
create(:proposal, title: 'Worst proposal').update_column(:confidence_score, 2)
create(:proposal, title: 'Medium proposal').update_column(:confidence_score, 5)
scenario 'Default order is hot_score', :js do
create(:proposal, title: 'Best proposal').update_column(:hot_score, 10)
create(:proposal, title: 'Worst proposal').update_column(:hot_score, 2)
create(:proposal, title: 'Medium proposal').update_column(:hot_score, 5)
visit proposals_path
@@ -451,22 +451,22 @@ feature 'Proposals' do
expect('Medium proposal').to appear_before('Worst proposal')
end
scenario 'Proposals are ordered by hot_score', :js do
create(:proposal, title: 'Best proposal').update_column(:hot_score, 10)
create(:proposal, title: 'Worst proposal').update_column(:hot_score, 2)
create(:proposal, title: 'Medium proposal').update_column(:hot_score, 5)
scenario 'Proposals are ordered by confidence_score', :js do
create(:proposal, title: 'Best proposal').update_column(:confidence_score, 10)
create(:proposal, title: 'Worst proposal').update_column(:confidence_score, 2)
create(:proposal, title: 'Medium proposal').update_column(:confidence_score, 5)
visit proposals_path
select 'most active', from: 'order-selector'
select 'best rated', from: 'order-selector'
expect(page).to have_selector('.js-order-selector[data-order="hot_score"]')
expect(page).to have_selector('.js-order-selector[data-order="confidence_score"]')
within '#proposals' do
expect('Best proposal').to appear_before('Medium proposal')
expect('Medium proposal').to appear_before('Worst proposal')
end
expect(current_url).to include('order=hot_score')
expect(current_url).to include('order=confidence_score')
expect(current_url).to include('page=1')
end