twilio-csharp icon indicating copy to clipboard operation
twilio-csharp copied to clipboard

Incomplete model definition in WorkersRealTimeStatisticsResource causes deserialization to fail

Open jassent opened this issue 1 year ago • 2 comments

This file WorkersRealTimeStatisticsResource.cs has an incomplete model definition:

[JsonProperty("activity_statistics")]
public List<object> ActivityStatistics { get; private set; }

The ActivityStatistics are defined as a list of objects. This causes the system.text.json deserializer to skip and always return empty Activity Statistics.

This is an issue with Azure Functions under Net6 which wants to use system.text.json as the default instead of Newtonsoft JsonCovert.

Could you define the actual statistics model instead of listing as "object"?

This issue also effects:

WorkersCumulativeStatisticsResource.cs:

[JsonProperty("activity_durations")]
public List<object> ActivityDurations { get; private set; }

WorkerStatisticsResource.cs

[JsonProperty("cumulative")]
public List<object> Cumulative { get; private set; }

On a related note, you have a number of tests that test these resources but the test should not pass as the result is returning empty instead of the correct values.

jassent avatar Jul 28 '22 21:07 jassent

Hi @jassent! Thanks for opening an issue and creating a PR. The work included in the PR makes changes to some of our generated files. I've added DI-2274 to our team's backlog to get these changes implemented within the generator.

JenniferMah avatar Aug 01 '22 20:08 JenniferMah

Understood. Thank you for reviewing and the explanation. Up to you whether to close or keep open.

jassent avatar Aug 03 '22 14:08 jassent