private async Task Querying_Tags_Works(string?search, int expectedRecordsCount, int?expectedCountOnFirstTag) { // GIVEN backlog items with various combination of 3 tags await CreateBacklogItem(); await CreateBacklogItem("t1ag"); await CreateBacklogItem("t2ag"); await CreateBacklogItem("t1ag", "t2ag"); await CreateBacklogItem("t2ag", "t1ag", "t3ag"); // WHEN querying tags applying search (optional) var items = await _queryService.GetTags(new BacklogItemTagListGetRequest { Search = search }); // THEN check // the number of returned tags Assert.Equal(expectedRecordsCount, items.Length); // number of tickets where the 1st tag is used if (expectedCountOnFirstTag != null) { Assert.Equal(expectedCountOnFirstTag, items.First().Count); } }
public Task <BacklogItemTagListGetResponse[]> GetTags([FromServices] IBacklogItemListQueryService service, [FromQuery] BacklogItemTagListGetRequest dto) => service.GetTags(dto);