Commit 67896ea9a258eee8bb8ecca849d59f48e16ac77a
1 parent
6a9e7dc5
Exists in
master
and in
4 other branches
Fixed missing current user for issue observer
Showing
3 changed files
with
25 additions
and
25 deletions
Show diff stats
lib/api/issues.rb
| @@ -78,6 +78,7 @@ module Gitlab | @@ -78,6 +78,7 @@ module Gitlab | ||
| 78 | 78 | ||
| 79 | attrs = attributes_for_keys [:title, :description, :assignee_id, :milestone_id, :closed] | 79 | attrs = attributes_for_keys [:title, :description, :assignee_id, :milestone_id, :closed] |
| 80 | attrs[:label_list] = params[:labels] if params[:labels].present? | 80 | attrs[:label_list] = params[:labels] if params[:labels].present? |
| 81 | + IssueObserver.current_user = current_user | ||
| 81 | if @issue.update_attributes attrs | 82 | if @issue.update_attributes attrs |
| 82 | present @issue, with: Entities::Issue | 83 | present @issue, with: Entities::Issue |
| 83 | else | 84 | else |
spec/observers/users_project_observer_spec.rb
| @@ -3,63 +3,62 @@ require 'spec_helper' | @@ -3,63 +3,62 @@ require 'spec_helper' | ||
| 3 | describe UsersProjectObserver do | 3 | describe UsersProjectObserver do |
| 4 | let(:user) { create(:user) } | 4 | let(:user) { create(:user) } |
| 5 | let(:project) { create(:project) } | 5 | let(:project) { create(:project) } |
| 6 | - let(:users_project) { create(:users_project, | ||
| 7 | - project: project, | ||
| 8 | - user: user )} | ||
| 9 | subject { UsersProjectObserver.instance } | 6 | subject { UsersProjectObserver.instance } |
| 10 | 7 | ||
| 11 | describe "#after_commit" do | 8 | describe "#after_commit" do |
| 12 | it "should called when UsersProject created" do | 9 | it "should called when UsersProject created" do |
| 13 | - subject.should_receive(:after_commit).once | 10 | + subject.should_receive(:after_commit) |
| 14 | create(:users_project) | 11 | create(:users_project) |
| 15 | end | 12 | end |
| 16 | 13 | ||
| 17 | it "should send email to user" do | 14 | it "should send email to user" do |
| 18 | - Notify.should_receive(:project_access_granted_email).with(users_project.id).and_return(double(deliver: true)) | ||
| 19 | - subject.after_commit(users_project) | 15 | + Notify.should_receive(:project_access_granted_email).and_return(double(deliver: true)) |
| 20 | Event.stub(:create => true) | 16 | Event.stub(:create => true) |
| 17 | + | ||
| 18 | + create(:users_project) | ||
| 21 | end | 19 | end |
| 22 | 20 | ||
| 23 | it "should create new event" do | 21 | it "should create new event" do |
| 24 | - Event.should_receive(:create).with( | ||
| 25 | - project_id: users_project.project.id, | ||
| 26 | - action: Event::Joined, | ||
| 27 | - author_id: users_project.user.id | ||
| 28 | - ) | 22 | + Event.should_receive(:create) |
| 29 | 23 | ||
| 30 | - subject.after_create(users_project) | 24 | + create(:users_project) |
| 31 | end | 25 | end |
| 32 | end | 26 | end |
| 33 | 27 | ||
| 34 | describe "#after_update" do | 28 | describe "#after_update" do |
| 29 | + before do | ||
| 30 | + @users_project = create :users_project | ||
| 31 | + end | ||
| 32 | + | ||
| 35 | it "should called when UsersProject updated" do | 33 | it "should called when UsersProject updated" do |
| 36 | - subject.should_receive(:after_commit).once | ||
| 37 | - create(:users_project).update_attribute(:project_access, UsersProject::MASTER) | 34 | + subject.should_receive(:after_commit) |
| 35 | + @users_project.update_attribute(:project_access, UsersProject::MASTER) | ||
| 38 | end | 36 | end |
| 39 | 37 | ||
| 40 | it "should send email to user" do | 38 | it "should send email to user" do |
| 41 | - Notify.should_receive(:project_access_granted_email).with(users_project.id).and_return(double(deliver: true)) | ||
| 42 | - subject.after_commit(users_project) | 39 | + Notify.should_receive(:project_access_granted_email) |
| 40 | + @users_project.update_attribute(:project_access, UsersProject::MASTER) | ||
| 43 | end | 41 | end |
| 42 | + | ||
| 44 | it "should not called after UsersProject destroyed" do | 43 | it "should not called after UsersProject destroyed" do |
| 45 | subject.should_not_receive(:after_commit) | 44 | subject.should_not_receive(:after_commit) |
| 46 | - users_project.destroy | 45 | + @users_project.destroy |
| 47 | end | 46 | end |
| 48 | end | 47 | end |
| 49 | 48 | ||
| 50 | describe "#after_destroy" do | 49 | describe "#after_destroy" do |
| 50 | + before do | ||
| 51 | + @users_project = create :users_project | ||
| 52 | + end | ||
| 53 | + | ||
| 51 | it "should called when UsersProject destroyed" do | 54 | it "should called when UsersProject destroyed" do |
| 52 | subject.should_receive(:after_destroy) | 55 | subject.should_receive(:after_destroy) |
| 53 | - create(:users_project).destroy | 56 | + @users_project.destroy |
| 54 | end | 57 | end |
| 55 | 58 | ||
| 56 | it "should create new event" do | 59 | it "should create new event" do |
| 57 | - Event.should_receive(:create).with( | ||
| 58 | - project_id: users_project.project.id, | ||
| 59 | - action: Event::Left, | ||
| 60 | - author_id: users_project.user.id | ||
| 61 | - ) | ||
| 62 | - subject.after_destroy(users_project) | 60 | + Event.should_receive(:create) |
| 61 | + @users_project.destroy | ||
| 63 | end | 62 | end |
| 64 | end | 63 | end |
| 65 | end | 64 | end |
spec/requests/atom/issues_spec.rb
| @@ -3,7 +3,7 @@ require 'spec_helper' | @@ -3,7 +3,7 @@ require 'spec_helper' | ||
| 3 | describe "Issues Feed" do | 3 | describe "Issues Feed" do |
| 4 | describe "GET /issues" do | 4 | describe "GET /issues" do |
| 5 | let!(:user) { create(:user) } | 5 | let!(:user) { create(:user) } |
| 6 | - let!(:project) { create(:project, owner: user) } | 6 | + let!(:project) { create(:project, namespace: user.namespace) } |
| 7 | let!(:issue) { create(:issue, author: user, project: project) } | 7 | let!(:issue) { create(:issue, author: user, project: project) } |
| 8 | 8 | ||
| 9 | before { project.add_access(user, :read, :write) } | 9 | before { project.add_access(user, :read, :write) } |