public async Task FoundId_Widget() { var service = TestUtility.CreateService(m_category); var widget = InMemoryExampleApiRepository.SampleWidgets[0]; (await service.DeleteWidgetAsync(id: widget.Id)).Should().BeSuccess(new DeleteWidgetResponseDto()); }
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 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 EmptyWidget_Success() { var service = TestUtility.CreateService(m_category); var widget = new WidgetDto(); var newWidget = (await service.CreateWidgetAsync(widget)).Value.Widget; newWidget.Id.Should().NotBeNull(); widget = new WidgetDto(id: newWidget.Id, name: widget.Name); newWidget.Should().BeDto(widget); }
public async Task FoundId_Widget() { var service = TestUtility.CreateService(m_category); var widget = InMemoryExampleApiRepository.SampleWidgets[0]; (await service.GetWidgetBatchAsync(new[] { widget.Id })).Should().BeSuccess( new GetWidgetBatchResponseDto { Results = new[] { ServiceResult.Success(widget) } }); }
public async Task ReverseSortByName() { var service = TestUtility.CreateService(m_category); (await service.GetWidgetsAsync(limit: 2, sort: WidgetField.Name, desc: true)).Should().BeSuccess( new GetWidgetsResponseDto { Widgets = InMemoryExampleApiRepository.SampleWidgets.OrderByDescending(x => x.Name).Take(2).ToList(), Total = InMemoryExampleApiRepository.SampleWidgets.Count, }); }
public async Task NotFoundQuery_NoWidgets() { var service = TestUtility.CreateService(m_category); (await service.GetWidgetsAsync(query: "xyzzy")).Should().BeSuccess( new GetWidgetsResponseDto { Widgets = new WidgetDto[0], Total = 0, }); }
public async Task NullQuery_AllWidgets() { var service = TestUtility.CreateService(m_category); (await service.GetWidgetsAsync(query: null)).Should().BeSuccess( new GetWidgetsResponseDto { Widgets = InMemoryExampleApiRepository.SampleWidgets.OrderBy(x => x.Id).ToList(), Total = InMemoryExampleApiRepository.SampleWidgets.Count, }); }
public async Task FoundId_Widget() { var service = TestUtility.CreateService(m_category); var widget = InMemoryExampleApiRepository.SampleWidgets[0]; string eTag = ExampleApiService.CreateWidgetETag(widget); (await service.GetWidgetAsync(id: widget.Id)) .Should().BeSuccess(new GetWidgetResponseDto { Widget = widget, ETag = eTag }); }
public async Task FoundQuery_Widgets() { var service = TestUtility.CreateService(m_category); var widgets = InMemoryExampleApiRepository.SampleWidgets.Where(x => x.Name.Contains("ey")).OrderBy(x => x.Id).ToList(); (await service.GetWidgetsAsync(query: "ey")).Should().BeSuccess( new GetWidgetsResponseDto { Widgets = widgets, Total = widgets.Count, }); }
public async Task NoOp_Widget() { var service = TestUtility.CreateService(m_category); var widget = InMemoryExampleApiRepository.SampleWidgets[0]; (await service.EditWidgetAsync(new EditWidgetRequestDto { Id = widget.Id }, CancellationToken.None)) .Should().BeSuccess(new EditWidgetResponseDto { Widget = widget }); }
public async Task Modified_Widget() { var service = TestUtility.CreateService(m_category); var widget = InMemoryExampleApiRepository.SampleWidgets[0]; string eTag = ExampleApiService.CreateWidgetETag(widget); (await service.GetWidgetAsync(new GetWidgetRequestDto { Id = widget.Id, IfNoneMatch = "\"xyzzy\"" }, CancellationToken.None)) .Should().BeSuccess(new GetWidgetResponseDto { Widget = widget, ETag = eTag }); }
public async Task Op_Job() { var service = TestUtility.CreateService(m_category); var widget = InMemoryExampleApiRepository.SampleWidgets[0]; (await service.EditWidgetAsync(new EditWidgetRequestDto { Id = widget.Id, Ops = new[] { new JObject() } }, CancellationToken.None)) .Should().BeSuccess(new EditWidgetResponseDto { Job = new WidgetJobDto { Id = "TODO" } }); }
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 BadIfNoneMatch() { var service = TestUtility.CreateService(m_category); var widget = InMemoryExampleApiRepository.SampleWidgets[0]; string eTag = ExampleApiService.CreateWidgetETag(widget); var result = await service.GetWidgetAsync(new GetWidgetRequestDto { Id = widget.Id, IfNoneMatch = "xyzzy" }, CancellationToken.None); if (m_category == "InMemory") { result.Should().BeSuccess(new GetWidgetResponseDto { Widget = widget, ETag = eTag }); } else { result.Should().BeFailure(HttpServiceErrors.CreateHeaderInvalidFormat("If-None-Match")); } }
public async Task NotAdminErrorCode() { var service = TestUtility.CreateService(m_category); (await service.KitchenAsync(new KitchenRequestDto(), CancellationToken.None)).Should().BeFailure(ExampleApiErrors.NotAdmin); }
public async Task NullId_InvalidRequest() { var service = TestUtility.CreateService(m_category); (await service.GetWidgetAsync(id: null)).Should().BeFailure(ServiceErrors.InvalidRequest); }
public async Task BlankId_NotFound() { var service = TestUtility.CreateService(m_category); (await service.GetWidgetAsync(id: "")).Should().BeFailure(ServiceErrors.InvalidRequest); }
public async Task NotFoundId_NotFound() { var service = TestUtility.CreateService(m_category); (await service.GetWidgetAsync(id: "xyzzy")).Should().BeFailure(ExampleApiErrors.CreateNotFoundWidget("xyzzy")); }
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 MissingIds_InvalidRequest() { var service = TestUtility.CreateService(m_category); (await service.GetWidgetBatchAsync(ids: null)).Should().BeFailure(ServiceErrors.CreateRequestFieldRequired("ids")); }
public void NullRequest_ThrowsArgumentNullException() { var service = TestUtility.CreateService(m_category); Assert.ThrowsAsync<ArgumentNullException>(async () => await service.GetWidgetBatchAsync(default(GetWidgetBatchRequestDto), CancellationToken.None)); }
public async Task NullId_InvalidRequest() { var service = TestUtility.CreateService(m_category); (await service.NotRestfulAsync(new NotRestfulRequestDto(), CancellationToken.None)).Should().BeFailure(ServiceErrors.NotFound); }
public async Task MissingWidget_BadRequest() { var service = TestUtility.CreateService(m_category); (await service.CreateWidgetAsync(widget: null)).Should().BeFailure(ServiceErrors.CreateRequestFieldRequired("widget")); }