diff --git a/app/controllers/admin/groups_controller.rb b/app/controllers/admin/groups_controller.rb index 77ec8a27d..ee6594bee 100644 --- a/app/controllers/admin/groups_controller.rb +++ b/app/controllers/admin/groups_controller.rb @@ -31,7 +31,7 @@ class Admin::GroupsController < Admin::AdminController def create group = Group.new - group.name = params[:group][:name] + group.name = params[:group][:name].strip group.usernames = params[:group][:usernames] if params[:group][:usernames] group.save! render_serialized(group, BasicGroupSerializer) diff --git a/spec/controllers/admin/groups_controller_spec.rb b/spec/controllers/admin/groups_controller_spec.rb index 056d12f75..ec79c472e 100644 --- a/spec/controllers/admin/groups_controller_spec.rb +++ b/spec/controllers/admin/groups_controller_spec.rb @@ -48,19 +48,33 @@ describe Admin::GroupsController do end end - it "is able to create a group" do - xhr :post, :create, group: { - usernames: @admin.username, - name: "bob" - } + context '.create' do + let(:usernames) { @admin.username } - response.status.should == 200 + it "is able to create a group" do + xhr :post, :create, group: { + usernames: usernames, + name: "bob" + } - groups = Group.where(name: "bob").to_a + response.status.should == 200 - groups.count.should == 1 - groups[0].usernames.should == @admin.username - groups[0].name.should == "bob" + groups = Group.where(name: "bob").to_a + + groups.count.should == 1 + groups[0].usernames.should == usernames + groups[0].name.should == "bob" + end + + it "strips spaces from group name" do + lambda { + xhr :post, :create, group: { + usernames: usernames, + name: " bob " + } + }.should_not raise_error(ActiveRecord::RecordInvalid) + Group.where(name: "bob").count.should == 1 + end end it "is able to update group members" do