Skip to content

Allow filtering requirements by work_item IID

charlie ablett requested to merge 382138-cablett-work-item-iid-requirement into master

What does this MR do and why?

Allow filtering Requirements by work_item_iid.

This is part of Requirements legacy IID being deprecated.

to reproduce locally

Requirements require an Ultimate license.

  1. Create some requirements via the UI 👉 http://localhost:3000/flightjs/Flight/-/requirements_management/requirements

image

  1. Find the work_item_iid of each via GraphQL
query { 
  project(fullPath: "Flightjs/Flight") {
    requirements {
      nodes {
        id
        title
        workItemIid
      }
    }
  }
}

image

  1. Do some filtering using those values

Filter for a single work_item_iid:

query { 
  project(fullPath: "Flightjs/Flight") {
    requirements(workItemIid: 45) {
      nodes {
        id
      }
    }
  }
}

or multiple

query { 
  project(fullPath: "Flightjs/Flight") {
    requirements(workItemIids: [45, 47]) {
      nodes {
        id
      }
    }
  }
}

and you can use together with iid which is for legacy requirement object IIDs (the query is an intersection so this query will only return records matching both iid arguments)

query { 
  project(fullPath: "Flightjs/Flight") {
    requirements(workItemIid: 45, iid: 1) {
      nodes {
        id
      }
    }
  }
}

Screenshots or screen recordings

Screenshots are required for UI changes, and strongly recommended for all other merge requests.

How to set up and validate locally

Numbered steps to set up and validate the change are strongly suggested.

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Related to #382138 (closed)

Edited by charlie ablett

Merge request reports

Loading