public async Task NotFoundId_Null()
		{
			var service = TestUtility.CreateService(m_category);
			(await service.GetWidgetBatchAsync(new[] { "xyzzy" })).Should().BeSuccess(
				new GetWidgetBatchResponseDto
				{
					Results = new[] { ServiceResult.Failure(ExampleApiErrors.CreateNotFoundWidget("xyzzy")).Cast<WidgetDto>() }
				});
		}
		public async Task BlankId_Null()
		{
			var service = TestUtility.CreateService(m_category);
			(await service.GetWidgetBatchAsync(new[] { "" })).Should().BeSuccess(
				new GetWidgetBatchResponseDto
				{
					Results = new[] { ServiceResult.Failure(ExampleApiErrors.CreateInvalidRequestMissingWidgetId()).Cast<WidgetDto>() }
				});
		}
		public async Task MixedFoundAndNotFoundWidgets_WidgetsInOrder()
		{
			var service = TestUtility.CreateService(m_category);
			var widget1 = InMemoryExampleApiRepository.SampleWidgets[0];
			var widget2 = InMemoryExampleApiRepository.SampleWidgets[1];
			(await service.GetWidgetBatchAsync(new[] { widget2.Id, "xyzzy", widget1.Id })).Should().BeSuccess(
				new GetWidgetBatchResponseDto
				{
					Results = new[]
					{
						ServiceResult.Success(widget2),
						ServiceResult.Failure(ExampleApiErrors.CreateNotFoundWidget("xyzzy")).Cast<WidgetDto>(),
						ServiceResult.Success(widget1)
					}
				});
		}
		public async Task EmptyIds_InvalidRequest()
		{
			var service = TestUtility.CreateService(m_category);
			(await service.GetWidgetBatchAsync(ids: new string[0])).Should().BeFailure(ExampleApiErrors.CreateInvalidRequestMissingWidgetIds());
		}
        public async Task NotFoundId_NotFound()
        {
            var service = TestUtility.CreateService(m_category);

            (await service.GetWidgetAsync(id: "xyzzy")).Should().BeFailure(ExampleApiErrors.CreateNotFoundWidget("xyzzy"));
        }