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 ...@@ -948,7 +948,7 @@ class User < ActiveRecord::Base
end end
def record_activity def record_activity
Gitlab::User::ActivitySet.record(self) Gitlab::UserActivities::ActivitySet.record(self)
end end
private private
......
...@@ -467,9 +467,9 @@ module API ...@@ -467,9 +467,9 @@ module API
get ":activities" do get ":activities" do
authenticated_as_admin! authenticated_as_admin!
activity_set = Gitlab::User::ActivitySet.new(from: params[:from], activity_set = Gitlab::UserActivities::ActivitySet.new(from: params[:from],
page: params[:page], page: params[:page],
per_page: params[:per_page]) per_page: params[:per_page])
add_pagination_headers(activity_set) add_pagination_headers(activity_set)
......
module Gitlab module Gitlab
module User module UserActivities
class Activity class Activity
attr_reader :username attr_reader :username
......
module Gitlab module Gitlab
module User module UserActivities
class ActivitySet class ActivitySet
include Gitlab::PaginationUtil include Gitlab::PaginationUtil
...@@ -12,7 +12,7 @@ module Gitlab ...@@ -12,7 +12,7 @@ module Gitlab
end end
end end
def initialize(from:, page:, per_page:) def initialize(from: nil, page: nil, per_page: nil)
@from = sanitize_date(from) @from = sanitize_date(from)
@to = Time.now.to_i @to = Time.now.to_i
@page = page @page = page
......
require 'spec_helper' require 'spec_helper'
describe Gitlab::User::ActivitySet, :redis, lib: true do describe Gitlab::UserActivities::ActivitySet, :redis, lib: true do
let(:user) { create(:user) } let(:user) { create(:user) }
it 'shows the last user activities' do it 'shows the last user activity' do
Timecop.freeze do Timecop.freeze do
user.record_activity user.record_activity
expect(described_class.query).to eq({ username: user.username, expect(described_class.new.activities.first).to be_an_instance_of(Gitlab::UserActivities::Activity)
last_activity: DateTime.now })
end end
end end
...@@ -26,34 +25,35 @@ describe Gitlab::User::ActivitySet, :redis, lib: true do ...@@ -26,34 +25,35 @@ describe Gitlab::User::ActivitySet, :redis, lib: true do
end end
it 'shows the 5 oldest user activities paginated' do 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 end
it 'shows the 2 reamining user activities paginated' do 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 end
it 'shows the oldest first' do it 'shows the oldest first' do
# FIXME activities = described_class.new.activities
expect(described_class.query.first.second).to be < described_class.query.last.second
expect(activities.first.last_activity_at).to be < activities.last.last_activity_at
end end
end end
context 'filter by date' do context 'filter by date' do
before do before do
Timecop.freeze(Date.yesterday) create(:user).record_activity
end
after do
Timecop.return
end end
it 'shows activities from yesterday' do 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 end
it 'filter activities from today' do 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 end
end end
require 'spec_helper' require 'spec_helper'
describe Gitlab::User::Activity, :redis, lib: true do describe Gitlab::UserActivities::Activity, :redis, lib: true do
let(:username) { 'user' } let(:username) { 'user' }
let(:activity) { described_class.new('user', Time.new(2016, 12, 12).to_i) } 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