Commit d1a7ecf6 authored by James Lopez's avatar James Lopez

fixing failing spec and renamed user namespace to avoid conflicts

parent 62000466
......@@ -948,7 +948,7 @@ class User < ActiveRecord::Base
end
def record_activity
Gitlab::User::ActivitySet.record(self)
Gitlab::UserActivities::ActivitySet.record(self)
end
private
......
......@@ -467,9 +467,9 @@ module API
get ":activities" do
authenticated_as_admin!
activity_set = Gitlab::User::ActivitySet.new(from: params[:from],
page: params[:page],
per_page: params[:per_page])
activity_set = Gitlab::UserActivities::ActivitySet.new(from: params[:from],
page: params[:page],
per_page: params[:per_page])
add_pagination_headers(activity_set)
......
module Gitlab
module User
module UserActivities
class Activity
attr_reader :username
......
module Gitlab
module User
module UserActivities
class ActivitySet
include Gitlab::PaginationUtil
......@@ -12,7 +12,7 @@ module Gitlab
end
end
def initialize(from:, page:, per_page:)
def initialize(from: nil, page: nil, per_page: nil)
@from = sanitize_date(from)
@to = Time.now.to_i
@page = page
......
require 'spec_helper'
describe Gitlab::User::ActivitySet, :redis, lib: true do
describe Gitlab::UserActivities::ActivitySet, :redis, lib: true do
let(:user) { create(:user) }
it 'shows the last user activities' do
it 'shows the last user activity' do
Timecop.freeze do
user.record_activity
expect(described_class.query).to eq({ username: user.username,
last_activity: DateTime.now })
expect(described_class.new.activities.first).to be_an_instance_of(Gitlab::UserActivities::Activity)
end
end
......@@ -26,34 +25,35 @@ describe Gitlab::User::ActivitySet, :redis, lib: true do
end
it 'shows the 5 oldest user activities paginated' do
expect(described_class.query(per_page: 5).count).to eq(5)
expect(described_class.new(per_page: 5).activities.count).to eq(5)
end
it 'shows the 2 reamining user activities paginated' do
expect(described_class.query(per_page: 5, page: 1).count).to eq(2)
expect(described_class.new(per_page: 5, page: 2).activities.count).to eq(2)
end
it 'shows the oldest first' do
# FIXME
expect(described_class.query.first.second).to be < described_class.query.last.second
activities = described_class.new.activities
expect(activities.first.last_activity_at).to be < activities.last.last_activity_at
end
end
context 'filter by date' do
before do
Timecop.freeze(Date.yesterday)
end
after do
Timecop.return
create(:user).record_activity
end
it 'shows activities from yesterday' do
expect(described_class.query(from: Date.yesterday).count).to eq(1)
today = Date.today.to_s("%Y-%m-%d")
expect(described_class.new(from: today).activities.count).to eq(1)
end
it 'filter activities from today' do
expect(described_class.query(from: Date.today).count).to eq(0)
tomorrow = Date.tomorrow.to_s("%Y-%m-%d")
expect(described_class.new(from: tomorrow).activities.count).to eq(0)
end
end
end
require 'spec_helper'
describe Gitlab::User::Activity, :redis, lib: true do
describe Gitlab::UserActivities::Activity, :redis, lib: true do
let(:username) { 'user' }
let(:activity) { described_class.new('user', Time.new(2016, 12, 12).to_i) }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment