diff --git a/app/models/user.rb b/app/models/user.rb
index 692788b4e70157f5217145429effa8b494acf371..42aa5ebb3ff2ab3eb192bfdf0ac3f74fb41311d3 100644
--- a/app/models/user.rb
+++ b/app/models/user.rb
@@ -948,7 +948,7 @@ class User < ActiveRecord::Base
   end
 
   def record_activity
-    Gitlab::User::ActivitySet.record(self)
+    Gitlab::UserActivities::ActivitySet.record(self)
   end
 
   private
diff --git a/lib/api/users.rb b/lib/api/users.rb
index 87d27e1d15f003a1b3ba6a1986c43ccdd150e888..8d85c8730fbb2d8cf66e7da25c70e701a9119b38 100644
--- a/lib/api/users.rb
+++ b/lib/api/users.rb
@@ -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)
 
diff --git a/lib/gitlab/user/activity.rb b/lib/gitlab/user_activities/activity.rb
similarity index 91%
rename from lib/gitlab/user/activity.rb
rename to lib/gitlab/user_activities/activity.rb
index 8ebdc030e77b9cc2f78a295409b00679f7617672..0909c441538b2b174d2145f3ed2838a73b45117d 100644
--- a/lib/gitlab/user/activity.rb
+++ b/lib/gitlab/user_activities/activity.rb
@@ -1,5 +1,5 @@
 module Gitlab
-  module User
+  module UserActivities
     class Activity
       attr_reader :username
 
diff --git a/lib/gitlab/user/activity_set.rb b/lib/gitlab/user_activities/activity_set.rb
similarity index 94%
rename from lib/gitlab/user/activity_set.rb
rename to lib/gitlab/user_activities/activity_set.rb
index 6020ba20686d92615e161bc09e820e6037220c5e..ba9d51f6861c2146359e6b4a8811c4d61b2da30d 100644
--- a/lib/gitlab/user/activity_set.rb
+++ b/lib/gitlab/user_activities/activity_set.rb
@@ -1,5 +1,5 @@
 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
diff --git a/spec/lib/gitlab/user/activity_set_spec.rb b/spec/lib/gitlab/user/activity_set_spec.rb
deleted file mode 100644
index 22d42a8035031122f569976f7e858a422ced3566..0000000000000000000000000000000000000000
--- a/spec/lib/gitlab/user/activity_set_spec.rb
+++ /dev/null
@@ -1,59 +0,0 @@
-require 'spec_helper'
-
-describe Gitlab::User::ActivitySet, :redis, lib: true do
-  let(:user) { create(:user) }
-
-  it 'shows the last user activities' do
-    Timecop.freeze do
-      user.record_activity
-
-      expect(described_class.query).to eq({ username: user.username,
-                                            last_activity: DateTime.now })
-    end
-  end
-
-  context 'paginated activities' do
-    before do
-      Timecop.scale(3600)
-
-      7.times do
-        create(:user).record_activity
-      end
-    end
-
-    after do
-      Timecop.return
-    end
-
-    it 'shows the 5 oldest user activities paginated' do
-      expect(described_class.query(per_page: 5).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)
-    end
-
-    it 'shows the oldest first' do
-      # FIXME
-      expect(described_class.query.first.second).to be < described_class.query.last.second
-    end
-  end
-
-  context 'filter by date' do
-    before do
-      Timecop.freeze(Date.yesterday)
-    end
-
-    after do
-      Timecop.return
-    end
-
-    it 'shows activities from yesterday' do
-      expect(described_class.query(from: Date.yesterday).count).to eq(1)
-    end
-
-    it 'filter activities from today' do
-      expect(described_class.query(from: Date.today).count).to eq(0)
-    end
-  end
-end
diff --git a/spec/lib/gitlab/user_activities/activity_set_spec.rb b/spec/lib/gitlab/user_activities/activity_set_spec.rb
new file mode 100644
index 0000000000000000000000000000000000000000..7b3e3248b946d3b09e6139d9e42196e7af6a4f2e
--- /dev/null
+++ b/spec/lib/gitlab/user_activities/activity_set_spec.rb
@@ -0,0 +1,59 @@
+require 'spec_helper'
+
+describe Gitlab::UserActivities::ActivitySet, :redis, lib: true do
+  let(:user) { create(:user) }
+
+  it 'shows the last user activity' do
+    Timecop.freeze do
+      user.record_activity
+
+      expect(described_class.new.activities.first).to be_an_instance_of(Gitlab::UserActivities::Activity)
+    end
+  end
+
+  context 'paginated activities' do
+    before do
+      Timecop.scale(3600)
+
+      7.times do
+        create(:user).record_activity
+      end
+    end
+
+    after do
+      Timecop.return
+    end
+
+    it 'shows the 5 oldest user activities paginated' do
+      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.new(per_page: 5, page: 2).activities.count).to eq(2)
+    end
+
+    it 'shows the oldest first' do
+      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
+      create(:user).record_activity
+    end
+
+    it 'shows activities from yesterday' do
+      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
+      tomorrow = Date.tomorrow.to_s("%Y-%m-%d")
+
+      expect(described_class.new(from: tomorrow).activities.count).to eq(0)
+    end
+  end
+end
diff --git a/spec/lib/gitlab/user/activity_spec.rb b/spec/lib/gitlab/user_activities/activity_spec.rb
similarity index 83%
rename from spec/lib/gitlab/user/activity_spec.rb
rename to spec/lib/gitlab/user_activities/activity_spec.rb
index ed91c5ad279dbc09649df02666638a0e41934c09..6a1150f50c1b2744340f5e074779160fc28fe8b1 100644
--- a/spec/lib/gitlab/user/activity_spec.rb
+++ b/spec/lib/gitlab/user_activities/activity_spec.rb
@@ -1,6 +1,6 @@
 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) }