diff options
author | ZJ van de Weg <zegerjan@gitlab.com> | 2016-05-25 14:41:25 +0200 |
---|---|---|
committer | ZJ van de Weg <zegerjan@gitlab.com> | 2016-05-25 14:41:25 +0200 |
commit | 7ae536002ac981b3d18aae8851d8d70731db29dc (patch) | |
tree | 5d0c660df87be8d8d7ac4c50bab9ce1c27cbd876 /spec/services/todo_service_spec.rb | |
parent | 20e6e0dbe609f7b0fdd480281223a1a98d645f34 (diff) | |
parent | 318b22459bfff1cecfb1f38e381faaca3bc29bbb (diff) | |
download | gitlab-ce-7ae536002ac981b3d18aae8851d8d70731db29dc.tar.gz |
Merge branch 'master' into awardables
Diffstat (limited to 'spec/services/todo_service_spec.rb')
-rw-r--r-- | spec/services/todo_service_spec.rb | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/spec/services/todo_service_spec.rb b/spec/services/todo_service_spec.rb index 0d88b77ad74..6e7ecbd39ba 100644 --- a/spec/services/todo_service_spec.rb +++ b/spec/services/todo_service_spec.rb @@ -306,6 +306,25 @@ describe TodoService, services: true do expect(todo.reload).to be_done end end + + describe '#merge_request_build_failed' do + it 'creates a pending todo for the merge request author' do + service.merge_request_build_failed(mr_unassigned) + + should_create_todo(user: author, target: mr_unassigned, action: Todo::BUILD_FAILED) + end + end + + describe '#merge_request_push' do + it 'marks related pending todos to the target for the user as done' do + first_todo = create(:todo, :build_failed, user: author, project: project, target: mr_assigned, author: john_doe) + second_todo = create(:todo, :build_failed, user: john_doe, project: project, target: mr_assigned, author: john_doe) + service.merge_request_push(mr_assigned, author) + + expect(first_todo.reload).to be_done + expect(second_todo.reload).not_to be_done + end + end end def should_create_todo(attributes = {}) |