Skip to content

Commit 6e121ee

Browse files
authored
Merge pull request #252 from alphagov/Remove-early-access/waiting-list-users-from-metrics
Remove Early Access/Waiting List Users from Metrics
2 parents 64735ed + fcdce74 commit 6e121ee

5 files changed

Lines changed: 0 additions & 123 deletions

File tree

app/controllers/admin/metrics_controller.rb

Lines changed: 0 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -6,26 +6,6 @@ class Admin::MetricsController < Admin::BaseController
66
policy.style_src(*policy.style_src, :unsafe_inline)
77
end
88

9-
def early_access_users
10-
active_scope = EarlyAccessUser.where(created_at: start_time..).group(:source)
11-
active_count = count_by_period(active_scope, :created_at)
12-
13-
deleted_scope = DeletedEarlyAccessUser.where(user_created_at: start_time..).group(:user_source)
14-
deleted_count = count_by_period(deleted_scope, :user_created_at)
15-
16-
render json: combine_data(active_count, deleted_count).chart_json
17-
end
18-
19-
def waiting_list_users
20-
active_scope = WaitingListUser.where(created_at: start_time..).group(:source)
21-
active_count = count_by_period(active_scope, :created_at)
22-
23-
deleted_scope = DeletedWaitingListUser.where(user_created_at: start_time..).group(:user_source)
24-
deleted_count = count_by_period(deleted_scope, :user_created_at)
25-
26-
render json: combine_data(active_count, deleted_count).chart_json
27-
end
28-
299
def conversations
3010
scope = Conversation.where(created_at: start_time..)
3111

@@ -157,8 +137,4 @@ def remove_empty_count_data(count_data)
157137
# so we reset any that
158138
count_data.values.all?(&:zero?) ? {} : count_data
159139
end
160-
161-
def combine_data(hash_a, hash_b)
162-
hash_a.merge(hash_b) { |_, a_value, b_value| a_value + b_value }
163-
end
164140
end

app/views/admin/metrics/index.html.erb

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -21,19 +21,6 @@ common_chart_options = { refresh: 30 }
2121
],
2222
} %>
2323

24-
<div class="govuk-grid-row govuk-!-margin-bottom-8">
25-
<div class="govuk-grid-column-one-half" id="early-access-users">
26-
<h2 class="govuk-heading-l">Early access users</h2>
27-
<%= column_chart admin_metrics_early_access_users_path(period: @period),
28-
**(common_chart_options.merge(stacked: true, legend: legend_position)) %>
29-
</div>
30-
<div class="govuk-grid-column-one-half" id="waiting-list-users">
31-
<h2 class="govuk-heading-l">Waiting list users</h2>
32-
<%= column_chart admin_metrics_waiting_list_users_path(period: @period),
33-
**(common_chart_options.merge(stacked: true, legend: legend_position)) %>
34-
</div>
35-
</div>
36-
3724
<div class="govuk-grid-row govuk-!-margin-bottom-8">
3825
<div class="govuk-grid-column-one-half" id="conversations">
3926
<h2 class="govuk-heading-l">New conversations</h2>

config/routes.rb

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,8 +60,6 @@
6060
scope :metrics do
6161
get "", to: "metrics#index", as: :metrics
6262
scope defaults: { format: "json" }, constraints: html_json_constraint do
63-
get "early-access-users", to: "metrics#early_access_users", as: :metrics_early_access_users
64-
get "waiting-list-users", to: "metrics#waiting_list_users", as: :metrics_waiting_list_users
6563
get "conversations", to: "metrics#conversations", as: :metrics_conversations
6664
get "questions", to: "metrics#questions", as: :metrics_questions
6765
get "answer-feedback", to: "metrics#answer_feedback", as: :metrics_answer_feedback

spec/requests/admin/metrics_spec.rb

Lines changed: 0 additions & 80 deletions
Original file line numberDiff line numberDiff line change
@@ -20,86 +20,6 @@
2020
end
2121
end
2222

23-
describe "GET :early_access_users" do
24-
it "renders a successful JSON response" do
25-
get admin_metrics_early_access_users_path
26-
expect(response).to have_http_status(:ok)
27-
expect(response.headers["Content-Type"]).to match("application/json")
28-
expect(JSON.parse(response.body)).to eq([])
29-
end
30-
31-
it "returns data of the combined current and deleted early access users by source and hour" do
32-
create_list(:early_access_user, 5, created_at: 4.hours.ago, source: :admin_added)
33-
create_list(:early_access_user, 2, created_at: 1.hour.ago, source: :admin_added)
34-
create_list(:early_access_user, 3, created_at: 1.hour.ago, source: :instant_signup)
35-
create_list(:deleted_early_access_user, 2, user_created_at: 1.hour.ago, user_source: :instant_signup)
36-
create(:early_access_user, created_at: 25.hours.ago)
37-
create(:deleted_early_access_user, user_created_at: 25.hours.ago)
38-
39-
get admin_metrics_early_access_users_path
40-
41-
expect(JSON.parse(response.body)).to contain_exactly(
42-
{ "name" => "admin_added", "data" => counts_for_last_24_hours(hours_ago_4: 5, hours_ago_1: 2) },
43-
{ "name" => "instant_signup", "data" => counts_for_last_24_hours(hours_ago_1: 5) },
44-
)
45-
end
46-
47-
context "when period is last_7_days" do
48-
it "returns data of the combined current and deleted early access users by source and date" do
49-
create_list(:early_access_user, 5, created_at: 4.days.ago, source: :admin_added)
50-
create_list(:early_access_user, 2, created_at: 1.day.ago, source: :admin_added)
51-
create_list(:early_access_user, 3, created_at: 1.day.ago, source: :instant_signup)
52-
create_list(:deleted_early_access_user, 2, user_created_at: 1.day.ago, user_source: :instant_signup)
53-
54-
get admin_metrics_early_access_users_path(period: "last_7_days")
55-
56-
expect(JSON.parse(response.body)).to contain_exactly(
57-
{ "name" => "admin_added", "data" => counts_for_last_7_days(days_ago_4: 5, days_ago_1: 2) },
58-
{ "name" => "instant_signup", "data" => counts_for_last_7_days(days_ago_1: 5) },
59-
)
60-
end
61-
end
62-
end
63-
64-
describe "GET :waiting_list_users" do
65-
it "renders a successful JSON response" do
66-
get admin_metrics_waiting_list_users_path
67-
expect(response).to have_http_status(:ok)
68-
expect(response.headers["Content-Type"]).to match("application/json")
69-
expect(JSON.parse(response.body)).to eq([])
70-
end
71-
72-
it "returns data of the combined current and deleted waiting list users by source and hour" do
73-
create_list(:waiting_list_user, 2, created_at: 5.hours.ago, source: :admin_added)
74-
create(:deleted_waiting_list_user, user_created_at: 5.hours.ago, user_source: :admin_added)
75-
create_list(:deleted_waiting_list_user, 4, user_source: :insufficient_instant_places)
76-
create(:waiting_list_user, created_at: 25.hours.ago)
77-
create(:deleted_waiting_list_user, user_created_at: 25.hours.ago)
78-
79-
get admin_metrics_waiting_list_users_path
80-
81-
expect(JSON.parse(response.body)).to contain_exactly(
82-
{ "name" => "admin_added", "data" => counts_for_last_24_hours(hours_ago_5: 3) },
83-
{ "name" => "insufficient_instant_places", "data" => counts_for_last_24_hours(hours_ago_0: 4) },
84-
)
85-
end
86-
87-
context "when period is last_7_days" do
88-
it "returns data of the combined current and deleted waiting list users by source and date" do
89-
create_list(:waiting_list_user, 2, created_at: 5.days.ago, source: :admin_added)
90-
create(:deleted_waiting_list_user, user_created_at: 5.days.ago, user_source: :admin_added)
91-
create_list(:deleted_waiting_list_user, 4, user_source: :insufficient_instant_places)
92-
93-
get admin_metrics_waiting_list_users_path(period: "last_7_days")
94-
95-
expect(JSON.parse(response.body)).to contain_exactly(
96-
{ "name" => "admin_added", "data" => counts_for_last_7_days(days_ago_5: 3) },
97-
{ "name" => "insufficient_instant_places", "data" => counts_for_last_7_days(days_ago_0: 4) },
98-
)
99-
end
100-
end
101-
end
102-
10323
describe "GET :conversations" do
10424
it "renders a successful JSON response" do
10525
get admin_metrics_conversations_path

spec/system/admin/user_views_metrics_spec.rb

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,6 @@
1313
end
1414

1515
def and_there_has_been_activity
16-
create_list(:early_access_user, 2, created_at: 2.hours.ago)
17-
create_list(:waiting_list_user, 2)
1816
create_list(:question, 2)
1917
create_list(:answer_feedback, 1, created_at: 1.hour.ago)
2018
create_list(:answer, 2, created_at: 6.hours.ago, status: :unanswerable_llm_cannot_answer)
@@ -43,8 +41,6 @@ def and_i_browse_to_the_metrics_section
4341
def then_i_can_see_activity
4442
# We're relying on the rendering of a successful chart results in a canvas
4543
# element, unclear how to assert correct chart
46-
expect(page).to have_selector("#early-access-users canvas")
47-
expect(page).to have_selector("#waiting-list-users canvas")
4844
expect(page).to have_selector("#conversations canvas")
4945
expect(page).to have_selector("#questions canvas")
5046
expect(page).to have_selector("#answer-feedback canvas")

0 commit comments

Comments
 (0)