7937266262
- Implemented the --project flag in the pcli status command to filter boards based on the specified project name. - Updated the command to resolve project names to IDs using case-insensitive matching. - Adjusted the totalBoards count in the output to reflect the number of boards matching the project filter. - Enhanced command help text and README documentation to include usage examples for the new flag. - Verified functionality through manual testing and ensured default behavior remains unchanged when the flag is omitted. feat(board): expand GetBoard response to include labels and card associations - Modified the Board struct to include Labels, CardLabels, and CardMemberships fields. - Updated the GetBoard method to parse additional fields from the API response. - Enhanced ListCardsByBoard to include label names for each card based on the enriched board data. - Ensured backward compatibility by making new fields optional and preserving existing output structure.
1.6 KiB
1.6 KiB
MODIFIED Requirements
Requirement: Board operations
The client SHALL provide a method to get a single board by ID (GET /boards/{id}), list board actions (GET /boards/{boardId}/actions) with pagination support, create a board (POST /projects/{projectId}/boards), and delete a board (DELETE /boards/{id}). GetBoard SHALL parse the included object from the response and populate the Board model with lists, cards, labels, cardLabels, and cardMemberships.
Scenario: Get board
- WHEN
GetBoardis called with a board ID - THEN the client SHALL send
GET /boards/{id}and return a Board model including its included lists, cards, labels, cardLabels, and cardMemberships
Scenario: Get board includes labels
- WHEN
GetBoardis called and the board has labels defined - THEN the returned Board SHALL contain a
Labelsslice with all board labels
Scenario: Get board includes card-label associations
- WHEN
GetBoardis called and cards on the board have labels attached - THEN the returned Board SHALL contain a
CardLabelsslice with all card-label associations - AND each
CardLabelentry SHALL containcardIdandlabelIdfields
Scenario: Get board includes card memberships
- WHEN
GetBoardis called and cards on the board have members assigned - THEN the returned Board SHALL contain a
CardMembershipsslice with all card-membership associations
Scenario: List board actions
- WHEN
ListBoardActionsis called with a board ID and limit - THEN the client SHALL paginate through
GET /boards/{boardId}/actionsand return action items