From c107b608c5fda2f0e56518692fd5a8288b5c4d38 Mon Sep 17 00:00:00 2001 From: Rhian Date: Mon, 15 Feb 2021 09:38:57 -0300 Subject: [PATCH] Added changes to CHANGELOG.md --- CHANGELOG.md | 4 ++++ lib/sidekiq/statistic/statistic/workers.rb | 12 +++++------- test/test_sidekiq/statistic_test.rb | 11 ----------- 3 files changed, 9 insertions(+), 18 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 884dbe2..f5a00c8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ ## HEAD +## v2.1.0 +* 31.05.2023: Add a new endpoint (/sidekiq/api/statistic_by_last_job_status.json) *Rhian Moraes* +* 31.05.2023: /sidekiq/statistic: add two checkboxes to show/hide workers based on their last job status (#113) *Rhian Moraes* + ## v2.0.0 #### BREAK diff --git a/lib/sidekiq/statistic/statistic/workers.rb b/lib/sidekiq/statistic/statistic/workers.rb index ce7301a..5ea94b6 100644 --- a/lib/sidekiq/statistic/statistic/workers.rb +++ b/lib/sidekiq/statistic/statistic/workers.rb @@ -18,14 +18,12 @@ def display end def display_by_last_status - { - passed: filter_last_job_status('passed'), - failed: filter_last_job_status('failed') - } - end + filtered_workers = display.group_by {|worker| worker[:last_job_status] } + + filtered_workers['passed'] ||= [] + filtered_workers['failed'] ||= [] - def filter_last_job_status(status) - display.select { |worker| worker[:last_job_status] == status } + filtered_workers.transform_keys(&:to_sym) end def display_per_day(worker_name) diff --git a/test/test_sidekiq/statistic_test.rb b/test/test_sidekiq/statistic_test.rb index 6855cb9..df7d072 100644 --- a/test/test_sidekiq/statistic_test.rb +++ b/test/test_sidekiq/statistic_test.rb @@ -123,17 +123,6 @@ module Statistic end end - describe "#filter_last_job_status" do - it 'return array with worker when filtering by passed workers' do - middlewared {} - - subject = statistic.filter_last_job_status('passed') - - _(subject).must_be_instance_of Array - assert_equal subject[0][:name], worker - end - end - describe '#display_per_day' do it 'return workers job per day' do middlewared {}