Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'features/steps/admin/groups.rb')
-rw-r--r--features/steps/admin/groups.rb66
1 files changed, 66 insertions, 0 deletions
diff --git a/features/steps/admin/groups.rb b/features/steps/admin/groups.rb
new file mode 100644
index 00000000000..9c1bcfefb9c
--- /dev/null
+++ b/features/steps/admin/groups.rb
@@ -0,0 +1,66 @@
+class AdminGroups < Spinach::FeatureSteps
+ include SharedAuthentication
+ include SharedPaths
+ include SharedUser
+ include SharedActiveTab
+ include Select2Helper
+
+ When 'I visit admin group page' do
+ visit admin_group_path(current_group)
+ end
+
+ When 'I click new group link' do
+ click_link "New Group"
+ end
+
+ And 'I have group with projects' do
+ @group = create(:group)
+ @project = create(:project, group: @group)
+ @event = create(:closed_issue_event, project: @project)
+
+ @project.team << [current_user, :master]
+ end
+
+ And 'submit form with new group info' do
+ fill_in 'group_name', with: 'gitlab'
+ fill_in 'group_description', with: 'Group description'
+ click_button "Create group"
+ end
+
+ Then 'I should see newly created group' do
+ page.should have_content "Group: gitlab"
+ page.should have_content "Group description"
+ end
+
+ Then 'I should be redirected to group page' do
+ current_path.should == admin_group_path(Group.last)
+ end
+
+ When 'I select user "John Doe" from user list as "Reporter"' do
+ user = User.find_by(name: "John Doe")
+ select2(user.id, from: "#user_ids", multiple: true)
+ within "#new_team_member" do
+ select "Reporter", from: "group_access"
+ end
+ click_button "Add users into group"
+ end
+
+ Then 'I should see "John Doe" in team list in every project as "Reporter"' do
+ within ".group-users-list" do
+ page.should have_content "John Doe"
+ page.should have_content "Reporter"
+ end
+ end
+
+ step 'I should be all groups' do
+ Group.all.each do |group|
+ page.should have_content group.name
+ end
+ end
+
+ protected
+
+ def current_group
+ @group ||= Group.first
+ end
+end