summaryrefslogtreecommitdiff
path: root/features
diff options
context:
space:
mode:
authorAlex Denisov <1101.debian@gmail.com>2012-12-02 22:18:03 +0200
committerAlex Denisov <1101.debian@gmail.com>2013-01-09 19:30:19 +0000
commit2b93201533d0d5c7fdcb9b6e74f0eec944ed0ea9 (patch)
tree39fa765efea7b5baf7846f64f7bb7be9994ad117 /features
parentd27cc91ee92f4bd16e007984a7d131a218d2d5dc (diff)
downloadgitlab-ce-2b93201533d0d5c7fdcb9b6e74f0eec944ed0ea9.tar.gz
Tests on EventFilters added
Diffstat (limited to 'features')
-rw-r--r--features/dashboard/event_filters.feature14
-rw-r--r--features/steps/dashboard/dashboard_event_filters.rb63
2 files changed, 77 insertions, 0 deletions
diff --git a/features/dashboard/event_filters.feature b/features/dashboard/event_filters.feature
new file mode 100644
index 00000000000..e3e6eced8fb
--- /dev/null
+++ b/features/dashboard/event_filters.feature
@@ -0,0 +1,14 @@
+Feature: Event filters
+ Background:
+ Given I sign in as a user
+ And I own a project
+ And this project has push event
+ And this project has new member event
+ And this project has merge request event
+ And I visit dashboard page
+
+ Scenario: I should see all events
+ Then I should see push event
+ Then I should see new member event
+ Then I should see merge request event
+
diff --git a/features/steps/dashboard/dashboard_event_filters.rb b/features/steps/dashboard/dashboard_event_filters.rb
new file mode 100644
index 00000000000..cb821ca327a
--- /dev/null
+++ b/features/steps/dashboard/dashboard_event_filters.rb
@@ -0,0 +1,63 @@
+class EventFilters < Spinach::FeatureSteps
+ include SharedAuthentication
+ include SharedPaths
+ include SharedProject
+
+ Then 'I should see push event' do
+ page.find('span.pushed').should have_content('pushed')
+ end
+
+ Then 'I should see new member event' do
+ page.find('span.joined').should have_content('joined')
+ end
+
+ Then 'I should see merge request event' do
+ page.find('span.merged').should have_content('merged')
+ end
+
+ And 'this project has push event' do
+ data = {
+ before: "0000000000000000000000000000000000000000",
+ after: "0220c11b9a3e6c69dc8fd35321254ca9a7b98f7e",
+ ref: "refs/heads/new_design",
+ user_id: @user.id,
+ user_name: @user.name,
+ repository: {
+ name: @project.name,
+ url: "localhost/rubinius",
+ description: "",
+ homepage: "localhost/rubinius",
+ private: true
+ }
+ }
+
+ @event = Event.create(
+ project: @project,
+ action: Event::Pushed,
+ data: data,
+ author_id: @user.id
+ )
+ end
+
+ And 'this project has new member event' do
+ user = create(:user, {name: "John Doe"})
+ Event.create(
+ project: @project,
+ author_id: user.id,
+ action: Event::Joined
+ )
+ end
+
+ And 'this project has merge request event' do
+ merge_request = create :merge_request, author: @user, project: @project
+ Event.create(
+ project: @project,
+ action: Event::Merged,
+ target_id: merge_request.id,
+ target_type: "MergeRequest",
+ author_id: @user.id
+ )
+ end
+
+end
+