From 031c40aa55db71a181dd10b8939dae08c504e123 Mon Sep 17 00:00:00 2001 From: Pierre de La Morinerie <kemenaran@gmail.com> Date: Tue, 2 Apr 2019 14:29:00 +0200 Subject: [PATCH] stats: display 12 weeks of feedbacks --- app/controllers/stats_controller.rb | 2 +- spec/controllers/stats_controller_spec.rb | 21 +++++++++------------ 2 files changed, 10 insertions(+), 13 deletions(-) diff --git a/app/controllers/stats_controller.rb b/app/controllers/stats_controller.rb index a2c1f0214..a6febb8e3 100644 --- a/app/controllers/stats_controller.rb +++ b/app/controllers/stats_controller.rb @@ -132,7 +132,7 @@ class StatsController < ApplicationController Feedback.ratings.fetch(:happy) => "Satisfaits" } - number_of_weeks = 6 + number_of_weeks = 12 totals = Feedback .group_by_week(:created_at, last: number_of_weeks, current: false) .count diff --git a/spec/controllers/stats_controller_spec.rb b/spec/controllers/stats_controller_spec.rb index 0744ba38c..b70d75fab 100644 --- a/spec/controllers/stats_controller_spec.rb +++ b/spec/controllers/stats_controller_spec.rb @@ -228,20 +228,17 @@ describe StatsController, type: :controller do it 'returns weekly ratios between a given feedback and all feedback' do happy_data = stats.find { |g| g[:name] == 'Satisfaits' }[:data] - expect(happy_data.values[0]).to eq 0 - expect(happy_data.values[1]).to eq 0 - expect(happy_data.values[2]).to eq 0 - expect(happy_data.values[3]).to eq 25.0 - expect(happy_data.values[4]).to eq 50.0 - expect(happy_data.values[5]).to eq 75.0 + + expect(happy_data.values[-4]).to eq 0 + expect(happy_data.values[-3]).to eq 25.0 + expect(happy_data.values[-2]).to eq 50.0 + expect(happy_data.values[-1]).to eq 75.0 unhappy_data = stats.find { |g| g[:name] == 'Mécontents' }[:data] - expect(unhappy_data.values[0]).to eq 0 - expect(unhappy_data.values[1]).to eq 0 - expect(unhappy_data.values[2]).to eq 0 - expect(unhappy_data.values[3]).to eq 75.0 - expect(unhappy_data.values[4]).to eq 50.0 - expect(unhappy_data.values[5]).to eq 25.0 + expect(unhappy_data.values[-4]).to eq 0 + expect(unhappy_data.values[-3]).to eq 75.0 + expect(unhappy_data.values[-2]).to eq 50.0 + expect(unhappy_data.values[-1]).to eq 25.0 end it 'excludes values still in the current week' do