chore: clean up the code

This commit is contained in:
Muhsin Keloth
2024-03-20 21:57:08 +05:30
parent 0d71b2923d
commit 3fc7f93ac1
3 changed files with 14 additions and 18 deletions
@@ -5,13 +5,9 @@ class Api::V1::Accounts::AppliedSlasController < Api::V1::Accounts::EnterpriseAc
before_action :set_sla_responses, only: [:metrics]
before_action :check_admin_authorization?
sort_on :created_at, type: :datetime
def metrics
total_applied_slas = @sla_responses.count
missed_applied_slas = @sla_responses.where(sla_status: :missed).count
@hit_percentage = total_applied_slas.zero? ? 0 : ((total_applied_slas - missed_applied_slas) / total_applied_slas.to_f) * 100
@number_of_breaches = missed_applied_slas
@total_applied_slas = @sla_responses.count
@number_of_sla_breaches = @sla_responses.where(sla_status: :missed).count
end
private
@@ -1,2 +1,2 @@
json.hit_percentage @hit_percentage
json.number_of_breaches @number_of_breaches
json.total_applied_slas @total_applied_slas
json.number_of_sla_breaches @number_of_sla_breaches
@@ -27,8 +27,8 @@ RSpec.describe 'Applied SLAs API', type: :request do
expect(response).to have_http_status(:success)
body = JSON.parse(response.body)
expect(body).to include('hit_percentage' => 100.0)
expect(body).to include('number_of_breaches' => 0)
expect(body).to include('total_applied_slas' => 1)
expect(body).to include('number_of_sla_breaches' => 0)
end
it 'filters sla metrics based on a date range' do
@@ -42,8 +42,8 @@ RSpec.describe 'Applied SLAs API', type: :request do
expect(response).to have_http_status(:success)
body = JSON.parse(response.body)
expect(body).to include('hit_percentage' => 100.0)
expect(body).to include('number_of_breaches' => 0)
expect(body).to include('total_applied_slas' => 1)
expect(body).to include('number_of_sla_breaches' => 0)
end
it 'filters sla metrics based on a date range and agent ids' do
@@ -58,8 +58,8 @@ RSpec.describe 'Applied SLAs API', type: :request do
expect(response).to have_http_status(:success)
body = JSON.parse(response.body)
expect(body).to include('hit_percentage' => 66.66666666666666)
expect(body).to include('number_of_breaches' => 1)
expect(body).to include('total_applied_slas' => 3)
expect(body).to include('number_of_sla_breaches' => 1)
end
it 'filters sla metrics based on sla policy ids' do
@@ -74,8 +74,8 @@ RSpec.describe 'Applied SLAs API', type: :request do
expect(response).to have_http_status(:success)
body = JSON.parse(response.body)
expect(body).to include('hit_percentage' => 50.0)
expect(body).to include('number_of_breaches' => 1)
expect(body).to include('total_applied_slas' => 2)
expect(body).to include('number_of_sla_breaches' => 1)
end
it 'filters sla metrics based on labels' do
@@ -92,8 +92,8 @@ RSpec.describe 'Applied SLAs API', type: :request do
expect(response).to have_http_status(:success)
body = JSON.parse(response.body)
expect(body).to include('hit_percentage' => 50.0)
expect(body).to include('number_of_breaches' => 1)
expect(body).to include('total_applied_slas' => 2)
expect(body).to include('number_of_sla_breaches' => 1)
end
end
end