public async Task ShouldUpdateAsyncFromModelRequestHaveCorrectMeshNameFromClassAndUrl() { var requestService = new Mock <IRequestService>(); var passedUrl = string.Empty; var passedModel = default(TestMeshNameFromClass); var expectedModel = new TestMeshNameFromClass(); requestService.Setup(x => x.PutRequest <TestMeshNameFromClass>(It.IsAny <string>(), It.IsAny <object>())).Callback((string url, object model) => { passedUrl = url; passedModel = model as TestMeshNameFromClass; }).Returns(() => { return(Task.FromResult(It.IsAny <TestMeshNameFromClass>())); }).Verifiable(); var service = new MeshesService(requestService.Object); var id = Generator.RandomString(25); expectedModel.Id = id; await service.UpdateAsync(expectedModel).ConfigureAwait(false); Assert.Equal($"meshes/testmeshnamefromclass/{id}", passedUrl); Assert.Equal(expectedModel, passedModel); requestService.VerifyAll(); }
public async Task ShouldCreateAsyncRequestHaveCorrectMeshNameFromClassAndUrl() { var requestService = new Mock <IRequestService>(); var passedUrl = string.Empty; var passedModel = default(TestMeshNameFromClass); var passedFormat = default(RequestDataFormat); var expectedModel = new TestMeshNameFromClass(); requestService.Setup(x => x.PostRequest <TestMeshNameFromClass>(It.IsAny <string>(), It.IsAny <object>(), It.IsAny <RequestDataFormat>())).Callback((string url, object model, RequestDataFormat format) => { passedUrl = url; passedModel = model as TestMeshNameFromClass; passedFormat = format; }).Returns(() => { return(Task.FromResult(It.IsAny <TestMeshNameFromClass>())); }).Verifiable(); var service = new MeshesService(requestService.Object); await service.CreateAsync(expectedModel).ConfigureAwait(false); Assert.Equal($"meshes/testmeshnamefromclass", passedUrl); Assert.Equal(expectedModel, passedModel); Assert.Equal(RequestDataFormat.Json, passedFormat); requestService.VerifyAll(); }