public async Task CreateWithScript_RequiresScriptSet() { var mockHttp = new MockHttpMessageHandler(); mockHttp.When(HttpMethod.Post, $"{server}/fmi/data/v1/databases/{file}/layouts/{layout}/records*") .WithPartialContent("fieldData") .WithPartialContent("script") // ensure the body contains the script parameter we're sending .WithPartialContent("run_this_script") .Respond("application/json", DataApiResponses.SuccessfulCreate()); IFileMakerApiClient fdc = GetDataClientWithMockedHandler(mockHttp); var req = new CreateRequest <User>() { Layout = "layout", Data = new User { Name = "test name" }, Script = "run_this_script" }; var response = await fdc.SendAsync(req); Assert.NotNull(response); Assert.Contains(response.Messages, r => r.Message == "OK"); }
public async Task CreateFromDictionaryStringString_ShouldReturnOK_FromSendAsync() { IFileMakerApiClient fdc = GetDataClientWithMockedHandler(); var response = await fdc.SendAsync(reqWithLayout); Assert.NotNull(response); Assert.Contains(response.Messages, r => r.Message == "OK"); }
public async Task Create_WithoutLayout_ThrowsArgumentException_SendAsync() { IFileMakerApiClient fdc = GetDataClientWithMockedHandler(); await Assert.ThrowsAsync <ArgumentException>(async() => await fdc.SendAsync(reqWithoutLayout)); }