ЕСОЗ - публічна документація

Assign merge candidate tests

n/n
description
inputs
expected result GraphQlactual result GraphQl
ASM1Assign merge candidate without scopes
  • token
missing allowance merge_candidate:assign"code": "FORBIDDEN",
"exception": {
"missingAllowances": [
"merge_candidate:assign"
]
}
ASM2Assign merge candidate without role 
  • doctor token
403, FORBIDDEN200, role is not checked
ASM3Assign merge candidate with client not NHS
  • token
  • invalid client id 
403, FORBIDDEN"extensions": {
"code": "FORBIDDEN"
},
"message": "Current client is not allowed to access this resource",
ASM4Assign MR already have one in status NEW
  • token
CONFLICT
Assignee is not allowed to ask for new merge request

{"errors": [{
"$.assignee_id": {
"description": "new request is already present",
"rule": ""
}}],
"extensions": {
"code": "UNPROCESSABLE_ENTITY"
}

ASM5Assign MR to User which already has POSTPONE >=postponed_requests_limit
  • token
CONFLICT
Assignee reached limit in postponed merge_requests

{
"errors": [
{
"$.assignee_id": {
"description": "postponed requests limit exceeded",
}}],
"extensions": {
"code": "UNPROCESSABLE_ENTITY"
},

we should check that assignee_id is non-null 

ASM6Assign MR in case there is no left one NEW and not viewed by User merge candidate in DB
  • token
204, No content

{
"extensions": {
"code": "NOT_FOUND"
}],
"message": "Eligible manual merge candidate not found"

ASM7Assign new MR to User
  • token

Merge Request is assigned

  • manual_merge_candidates. assignee_id=user_id
  • there is a row in merge_requests with user_id+merge_candidate_id and status=NEW
  • there is a row in audit_log with status=NEW

Merge request is assigned

  • manual_merge_candidates. assignee_id=user_id. - done
  • there is a row in merge_requests with   user_id+merge_candidate_id and status=NEW. - done 
  • there is a row in audit_log with status=NEW - not done

ЕСОЗ - публічна документація