Commit 67896ea9a258eee8bb8ecca849d59f48e16ac77a

Authored by Dmitriy Zaporozhets
1 parent 6a9e7dc5

Fixed missing current user for issue observer

lib/api/issues.rb
... ... @@ -78,6 +78,7 @@ module Gitlab
78 78  
79 79 attrs = attributes_for_keys [:title, :description, :assignee_id, :milestone_id, :closed]
80 80 attrs[:label_list] = params[:labels] if params[:labels].present?
  81 + IssueObserver.current_user = current_user
81 82 if @issue.update_attributes attrs
82 83 present @issue, with: Entities::Issue
83 84 else
... ...
spec/observers/users_project_observer_spec.rb
... ... @@ -3,63 +3,62 @@ require 'spec_helper'
3 3 describe UsersProjectObserver do
4 4 let(:user) { create(:user) }
5 5 let(:project) { create(:project) }
6   - let(:users_project) { create(:users_project,
7   - project: project,
8   - user: user )}
9 6 subject { UsersProjectObserver.instance }
10 7  
11 8 describe "#after_commit" do
12 9 it "should called when UsersProject created" do
13   - subject.should_receive(:after_commit).once
  10 + subject.should_receive(:after_commit)
14 11 create(:users_project)
15 12 end
16 13  
17 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 16 Event.stub(:create => true)
  17 +
  18 + create(:users_project)
21 19 end
22 20  
23 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 25 end
32 26 end
33 27  
34 28 describe "#after_update" do
  29 + before do
  30 + @users_project = create :users_project
  31 + end
  32 +
35 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 36 end
39 37  
40 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 41 end
  42 +
44 43 it "should not called after UsersProject destroyed" do
45 44 subject.should_not_receive(:after_commit)
46   - users_project.destroy
  45 + @users_project.destroy
47 46 end
48 47 end
49 48  
50 49 describe "#after_destroy" do
  50 + before do
  51 + @users_project = create :users_project
  52 + end
  53 +
51 54 it "should called when UsersProject destroyed" do
52 55 subject.should_receive(:after_destroy)
53   - create(:users_project).destroy
  56 + @users_project.destroy
54 57 end
55 58  
56 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 62 end
64 63 end
65 64 end
... ...
spec/requests/atom/issues_spec.rb
... ... @@ -3,7 +3,7 @@ require 'spec_helper'
3 3 describe "Issues Feed" do
4 4 describe "GET /issues" do
5 5 let!(:user) { create(:user) }
6   - let!(:project) { create(:project, owner: user) }
  6 + let!(:project) { create(:project, namespace: user.namespace) }
7 7 let!(:issue) { create(:issue, author: user, project: project) }
8 8  
9 9 before { project.add_access(user, :read, :write) }
... ...