mirror of
https://github.com/discourse/discourse.git
synced 2024-11-25 18:33:40 +08:00
d10fd36319
Adds a new statistics (hidden from the UI, but available via the API) that tracks daily participating users. A user is considered as "participating" if they have - Reacted to a post - Replied to a topic - Created a new topic - Created a new PM - Sent a chat message - Reacted to a chat message Internal ref - t/131013
33 lines
1.1 KiB
Ruby
33 lines
1.1 KiB
Ruby
# frozen_string_literal: true
|
|
|
|
RSpec.describe Statistics do
|
|
describe "#participating_users" do
|
|
it "returns no participating users by default" do
|
|
pu = described_class.participating_users
|
|
expect(pu[:last_day]).to eq(0)
|
|
expect(pu[:"7_days"]).to eq(0)
|
|
expect(pu[:"30_days"]).to eq(0)
|
|
end
|
|
|
|
it "returns users who have reacted to a post" do
|
|
Fabricate(:user_action, action_type: UserAction::LIKE)
|
|
expect(described_class.participating_users[:last_day]).to eq(1)
|
|
end
|
|
|
|
it "returns users who have created a new topic" do
|
|
Fabricate(:user_action, action_type: UserAction::NEW_TOPIC)
|
|
expect(described_class.participating_users[:last_day]).to eq(1)
|
|
end
|
|
|
|
it "returns users who have replied to a post" do
|
|
Fabricate(:user_action, action_type: UserAction::REPLY)
|
|
expect(described_class.participating_users[:last_day]).to eq(1)
|
|
end
|
|
|
|
it "returns users who have created a new PM" do
|
|
Fabricate(:user_action, action_type: UserAction::NEW_PRIVATE_MESSAGE)
|
|
expect(described_class.participating_users[:last_day]).to eq(1)
|
|
end
|
|
end
|
|
end
|