public async Task SendAsyncFind_Record_ThatDoesNotExist_ShouldReturnEmpty() { // arrange var mockHttp = new MockHttpMessageHandler(); var layout = FileMakerRestClient.GetLayoutName(new User()); mockHttp.When(HttpMethod.Post, $"{FindTestsHelpers.server}/fmi/data/v1/databases/{FindTestsHelpers.file}/sessions") .Respond("application/json", DataApiResponses.SuccessfulAuthentication()); mockHttp.When(HttpMethod.Post, $"{FindTestsHelpers.server}/fmi/data/v1/databases/{FindTestsHelpers.file}/layouts/{layout}/_find") .Respond(HttpStatusCode.InternalServerError, "application/json", DataApiResponses.FindNotFound()); var fdc = new FileMakerRestClient(mockHttp.ToHttpClient(), FindTestsHelpers.server, FindTestsHelpers.file, FindTestsHelpers.user, FindTestsHelpers.pass); // act var toFind = new User() { Id = 35 }; var req = new FindRequest <User>() { Layout = layout }; req.AddQuery(toFind, false); var response = await fdc.SendAsync(req); // assert Assert.Empty(response); }
public async Task SendAsyncFind_WithoutLayout_ShouldThrow() { // arrange var mockHttp = new MockHttpMessageHandler(); var layout = FileMakerRestClient.GetLayoutName(new User()); mockHttp.When(HttpMethod.Post, $"{FindTestsHelpers.Server}/fmi/data/v1/databases/{FindTestsHelpers.File}/sessions") .Respond("application/json", DataApiResponses.SuccessfulAuthentication()); mockHttp.When(HttpMethod.Post, $"{FindTestsHelpers.Server}/fmi/data/v1/databases/{FindTestsHelpers.File}/layouts/{layout}/_find") .Respond(HttpStatusCode.InternalServerError, "application/json", DataApiResponses.FindNotFound()); var fdc = new FileMakerRestClient(mockHttp.ToHttpClient(), FindTestsHelpers.Connection); // act var toFind = new User() { Id = 35 }; // assert var req = new FindRequest <User>() { }; req.AddQuery(toFind, false); await Assert.ThrowsAsync <ArgumentException>(async() => await fdc.SendAsync(req)); }
public async Task Find_NotFound_Should_ReturnEmpty() { // arrange var mockHttp = new MockHttpMessageHandler(); var layout = FileMakerRestClient.GetLayoutName(new User()); mockHttp.When(HttpMethod.Post, $"{FindTestsHelpers.Server}/fmi/data/v1/databases/{FindTestsHelpers.File}/sessions") .Respond("application/json", DataApiResponses.SuccessfulAuthentication()); mockHttp.When(HttpMethod.Post, $"{FindTestsHelpers.Server}/fmi/data/v1/databases/{FindTestsHelpers.File}/layouts/{layout}/_find") .Respond(HttpStatusCode.InternalServerError, "application/json", DataApiResponses.FindNotFound()); var fdc = new FileMakerRestClient(mockHttp.ToHttpClient(), FindTestsHelpers.Connection); // act var toFind = new User() { Id = 35 }; var response = await fdc.FindAsync(toFind); // assert Assert.Empty(response); }