Initial commit
This commit is contained in:
49
spec/api/v2/admin/metrics_spec.rb
Normal file
49
spec/api/v2/admin/metrics_spec.rb
Normal file
@@ -0,0 +1,49 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe API::V2::Admin::Metrics do
|
||||
include_context 'bearer authentication'
|
||||
let!(:create_admin_permission) do
|
||||
create :permission,
|
||||
role: 'admin'
|
||||
end
|
||||
let!(:create_member_permission) do
|
||||
create :permission,
|
||||
role: 'member'
|
||||
end
|
||||
describe 'GET /api/v2/admin/users' do
|
||||
let(:do_request) { get '/api/v2/admin/metrics', headers: auth_header }
|
||||
|
||||
context 'admin user' do
|
||||
let(:test_user) { create(:user, role: 'admin') }
|
||||
|
||||
it 'returns empty hashes if no activity in database' do
|
||||
do_request
|
||||
|
||||
expect(response.status).to eq(200)
|
||||
expect(response.body).to eq("{\"signups\":{},\"sucessful_logins\":{},\"failed_logins\":{},\"pending_applications\":0}")
|
||||
|
||||
result = JSON.parse(response.body)
|
||||
expect(result['signups']).to eq({})
|
||||
expect(result['sucessful_logins']).to eq({})
|
||||
expect(result['failed_logins']).to eq({})
|
||||
end
|
||||
|
||||
context 'with data' do
|
||||
let!(:login_activity) { create(:activity, action: 'login', result: 'succeed', topic: 'session', user: test_user) }
|
||||
let!(:signup_activity) { create(:activity, action: 'signup', result: 'succeed', topic: 'account', user: test_user) }
|
||||
let!(:failed_login_activity) { create(:activity, topic: 'session', action: 'login', result: 'failed', user: test_user) }
|
||||
|
||||
it 'returns data as expected' do
|
||||
do_request
|
||||
|
||||
expect(response.status).to eq(200)
|
||||
expect(JSON.parse(response.body)['failed_logins']).not_to eq({})
|
||||
expect(JSON.parse(response.body)['sucessful_logins']).not_to eq({})
|
||||
expect(JSON.parse(response.body)['signups']).not_to eq({})
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user