iotedge-lorawan-starterkit
iotedge-lorawan-starterkit copied to clipboard
`WaitableLoRaRequest` properties `ProcessingSucceeded`, `ProcessingFailed` and `ProcessingFailedReason` can be out of sync
Expected Behavior
On a WaitableLoRaRequest
we ProcessingSucceeded
should always be false if ProcessingFailed
is true
, and/or if a ProcessingFailedReason
is present.
Current Behavior
ProcessingFailed
and ProcessingSucceeded
are set separately in NotifySucceeded
and NotifyFailed
respectively. Depending on which property one uses for assertions in tests, one might get ambiguous responses based on which property one queries. Also, we should consider whether we want to have a LoRaDeviceRequestFailedReason.None
to indicate that no error happened (otherwise we have states where ProcessingSucceeded
is true
and LoRaDeviceRequestFailedReason
is ApplicationError
).
we should look at this, and exclude the fact that the callback could happen twice.