Commit 9a0329016b010d2882534309e96ead8b84418c3c

Authored by Dmitriy Zaporozhets
1 parent 3d51147d

Mention SystemHook user_id in sample. Extend tests

app/views/admin/hooks/_data_ex.html.erb
... ... @@ -52,7 +52,8 @@
52 52 "created_at": "2012-07-21T07:44:07Z",
53 53 "email": "js@gitlabhq.com",
54 54 "event_name": "user_create",
55   - "name": "John Smith"
  55 + "name": "John Smith",
  56 + "user_id": 41
56 57 }
57 58  
58 59 6. User removed:
... ... @@ -60,7 +61,8 @@
60 61 "created_at": "2012-07-21T07:44:07Z",
61 62 "email": "js@gitlabhq.com",
62 63 "event_name": "user_destroy",
63   - "name": "John Smith"
  64 + "name": "John Smith",
  65 + "user_id": 41
64 66 }
65 67  
66 68 eos
... ...
spec/services/system_hooks_service_spec.rb
... ... @@ -5,37 +5,29 @@ describe SystemHooksService do
5 5 let (:project) { create :project }
6 6 let (:users_project) { create :users_project }
7 7  
8   - context 'it should build event data' do
9   - it 'should build event data for user' do
10   - SystemHooksService.build_event_data(user, :create).should include(:event_name, :name, :created_at, :email, :user_id)
11   - end
12   -
13   - it 'should build event data for project' do
14   - SystemHooksService.build_event_data(project, :create).should include(:event_name, :name, :created_at, :path, :project_id, :owner_name, :owner_email)
15   - end
16   -
17   - it 'should build event data for users project' do
18   - SystemHooksService.build_event_data(users_project, :create).should include(:event_name, :created_at, :project_name, :project_path, :project_id, :user_name, :user_email, :project_access)
19   - end
  8 + context 'event data' do
  9 + it { event_data(user, :create).should include(:event_name, :name, :created_at, :email, :user_id) }
  10 + it { event_data(user, :destroy).should include(:event_name, :name, :created_at, :email, :user_id) }
  11 + it { event_data(project, :create).should include(:event_name, :name, :created_at, :path, :project_id, :owner_name, :owner_email) }
  12 + it { event_data(project, :destroy).should include(:event_name, :name, :created_at, :path, :project_id, :owner_name, :owner_email) }
  13 + it { event_data(users_project, :create).should include(:event_name, :created_at, :project_name, :project_path, :project_id, :user_name, :user_email, :project_access) }
  14 + it { event_data(users_project, :destroy).should include(:event_name, :created_at, :project_name, :project_path, :project_id, :user_name, :user_email, :project_access) }
20 15 end
21 16  
22   - context 'it should build event names' do
23   - it 'should build event names for user' do
24   - SystemHooksService.build_event_name(user, :create).should eq "user_create"
25   -
26   - SystemHooksService.build_event_name(user, :destroy).should eq "user_destroy"
27   - end
28   -
29   - it 'should build event names for project' do
30   - SystemHooksService.build_event_name(project, :create).should eq "project_create"
31   -
32   - SystemHooksService.build_event_name(project, :destroy).should eq "project_destroy"
33   - end
  17 + context 'event names' do
  18 + it { event_name(user, :create).should eq "user_create" }
  19 + it { event_name(user, :destroy).should eq "user_destroy" }
  20 + it { event_name(project, :create).should eq "project_create" }
  21 + it { event_name(project, :destroy).should eq "project_destroy" }
  22 + it { event_name(users_project, :create).should eq "user_add_to_team" }
  23 + it { event_name(users_project, :destroy).should eq "user_remove_from_team" }
  24 + end
34 25  
35   - it 'should build event names for users project' do
36   - SystemHooksService.build_event_name(users_project, :create).should eq "user_add_to_team"
  26 + def event_data(*args)
  27 + SystemHooksService.build_event_data(*args)
  28 + end
37 29  
38   - SystemHooksService.build_event_name(users_project, :destroy).should eq "user_remove_from_team"
39   - end
  30 + def event_name(*args)
  31 + SystemHooksService.build_event_name(*args)
40 32 end
41 33 end
... ...