Open ceciliaavila opened 7 months ago
Files with Coverage Reduction | New Missed Lines | % | ||
---|---|---|---|---|
/libraries/Microsoft.Bot.Builder.Dialogs/Memory/TurnPath.cs | 1 | 0.0% | ||
/libraries/Microsoft.Bot.Streaming/Payloads/StreamManager.cs | 1 | 90.0% | ||
/libraries/Microsoft.Bot.Builder.Dialogs/DialogExtensions.cs | 4 | 95.29% | ||
<!-- | Total: | 6 | --> |
Totals | |
---|---|
Change from base Build 387708: | 0.005% |
Covered Lines: | 26198 |
Relevant Lines: | 33511 |
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.Dialogs.dll
minor
Description
This PR adds a counter in the loop that executes the onError trigger to detect and break possible infinite loops when there's an error inside the onError handler. It also includes a new property to the onError, to make the limit of executions configurable for the users (default value: 10).
Specific Changes
ExecutionLimit
property to the onError trigger and read it in the override of the ExecuteAsync method.DialogExtensions
to evaluate the execution limit property and break the loop in case of detecting one.TurnPath
to be able to store the value in memory.Microsoft.OnError.schema
andMicrosoft.OnError.uischema
to include the new property.ConditionalTests
to cover the new functionality.Testing
These images show the scenarios we tested with the new implementation.