public virtual Response <PetAPObject> CreateAPObject(PetAPObject createParameters, CancellationToken cancellationToken = default) { using var scope = _clientDiagnostics.CreateScope("PetsClient.CreateAPObject"); scope.Start(); try { return(RestClient.CreateAPObject(createParameters, cancellationToken)); } catch (Exception e) { scope.Failed(e); throw; } }
public virtual async Task <Response <PetAPObject> > CreateAPObjectAsync(PetAPObject createParameters, CancellationToken cancellationToken = default) { using var scope = _clientDiagnostics.CreateScope("PetsClient.CreateAPObject"); scope.Start(); try { return(await RestClient.CreateAPObjectAsync(createParameters, cancellationToken).ConfigureAwait(false)); } catch (Exception e) { scope.Failed(e); throw; } }
public Task AdditionalPropertiesTypeObject() => Test(async(host, pipeline) => { PetAPObject petAPObject = new PetAPObject(1) { Name = "Puppy", }; petAPObject["birthdate"] = DateTimeOffset.Parse("2017-12-13T02:29:51Z"); petAPObject["complexProperty"] = new Dictionary <string, object>() { { "color", "Red" } }; PetAPObject outerAPObject = new PetAPObject(2) { Name = "Hira" }; outerAPObject["siblings"] = new object[] { petAPObject }; outerAPObject["picture"] = new byte[] { 255, 255, 255, 255, 254 }; var response = await new PetsClient(ClientDiagnostics, pipeline, host).CreateAPObjectAsync(outerAPObject); var value = response.Value; Assert.AreEqual(2, value.Id); Assert.AreEqual("Hira", value.Name); Assert.AreEqual(true, value.Status); var siblings = (IEnumerable <object>)value["siblings"]; var sibling = (IDictionary <string, object>)siblings.Single(); Assert.AreEqual(1, sibling["id"]); Assert.AreEqual("Puppy", sibling["name"]); Assert.AreEqual("2017-12-13T02:29:51Z", sibling["birthdate"]); Assert.AreEqual("Red", ((Dictionary <string, object>)sibling["complexProperty"])["color"]); });