chore: clean up the code
This commit is contained in:
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user