Commit 00290b9214e4dc4688e93c04489a7551da697ee6
1 parent
72d15cc7
Exists in
master
and in
4 other branches
test cov
Showing
2 changed files
with
29 additions
and
25 deletions
Show diff stats
app/controllers/team_members_controller.rb
... | ... | @@ -8,35 +8,16 @@ class TeamMembersController < ApplicationController |
8 | 8 | |
9 | 9 | def show |
10 | 10 | @team_member = project.users_projects.find(params[:id]) |
11 | - | |
12 | - respond_to do |format| | |
13 | - format.html # show.html.erb | |
14 | - format.js | |
15 | - end | |
16 | 11 | end |
17 | 12 | |
18 | 13 | def new |
19 | 14 | @team_member = project.users_projects.new |
20 | - | |
21 | - respond_to do |format| | |
22 | - format.html # new.html.erb | |
23 | - format.js | |
24 | - end | |
25 | 15 | end |
26 | 16 | |
27 | 17 | def create |
28 | 18 | @team_member = UsersProject.new(params[:team_member]) |
29 | 19 | @team_member.project = project |
30 | - | |
31 | - respond_to do |format| | |
32 | - if @team_member.save | |
33 | - format.html { redirect_to @team_member, notice: 'Team member was successfully created.' } | |
34 | - format.js | |
35 | - else | |
36 | - format.html { render action: "new" } | |
37 | - format.js | |
38 | - end | |
39 | - end | |
20 | + @team_member.save | |
40 | 21 | end |
41 | 22 | |
42 | 23 | def update |
... | ... | @@ -45,7 +26,12 @@ class TeamMembersController < ApplicationController |
45 | 26 | |
46 | 27 | respond_to do |format| |
47 | 28 | format.js |
48 | - format.html { redirect_to team_project_path(@project)} | |
29 | + format.html do | |
30 | + unless @team_member.valid? | |
31 | + flash[:alert] = "User should have at least one role" | |
32 | + end | |
33 | + redirect_to team_project_path(@project) | |
34 | + end | |
49 | 35 | end |
50 | 36 | end |
51 | 37 | ... | ... |
spec/requests/team_members_spec.rb
... | ... | @@ -29,19 +29,37 @@ describe "TeamMembers" do |
29 | 29 | |
30 | 30 | describe "fill in" do |
31 | 31 | before do |
32 | - check "team_member_read" | |
33 | 32 | click_link "Select user" |
34 | 33 | click_link @user_1.name |
35 | - #select @user_1.name, :from => "team_member_user_id" | |
34 | + | |
35 | + within "#team_member_new" do | |
36 | + check "team_member_read" | |
37 | + check "team_member_write" | |
38 | + end | |
36 | 39 | end |
37 | 40 | |
38 | - it { expect { click_button "Save" }.to change {UsersProject.count}.by(1) } | |
41 | + it { expect { click_button "Save";sleep(1) }.to change {UsersProject.count}.by(1) } | |
39 | 42 | |
40 | 43 | it "should add new member to table" do |
41 | 44 | click_button "Save" |
45 | + @member = UsersProject.last | |
42 | 46 | |
43 | - page.should_not have_content("Add new member") | |
44 | 47 | page.should have_content @user_1.name |
48 | + | |
49 | + @member.read.should be_true | |
50 | + @member.write.should be_true | |
51 | + @member.admin.should be_false | |
52 | + end | |
53 | + | |
54 | + it "should not allow creation without access selected" do | |
55 | + within "#team_member_new" do | |
56 | + uncheck "team_member_read" | |
57 | + uncheck "team_member_write" | |
58 | + uncheck "team_member_admin" | |
59 | + end | |
60 | + | |
61 | + expect { click_button "Save" }.to_not change {UsersProject.count} | |
62 | + page.should have_content("Please choose at least one Role in the Access list") | |
45 | 63 | end |
46 | 64 | end |
47 | 65 | end | ... | ... |