* Add unit tests for `FlowFork` activity and enhance test utilities - Introduce `FlowForkTests` to validate activity behavior with various branch configurations. - Extend `ActivityExecutionContextExtensions` with methods to retrieve and check outcomes. - Modify `ActivityTestFixture` to ensure activities transition to `Running` status before execution. * Add unit tests for `FlowSwitch` activity and extend test utilities - Implement `FlowSwitchTests` to verify behavior based on switch cases, modes, and literal expressions. - Enhance `ActivityExecutionContextExtensions` with methods to retrieve and check outcomes in execution context. * Update test guidelines to include examples for checking activity outcomes - Add unit test examples for validating multiple and default outcomes. - Extend documentation to describe new `ActivityExecutionContextExtensions` methods: `GetOutcomes` and `HasOutcome`. * Apply suggestion from @Copilot Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Simplify `GetOutcomes` method in `ActivityExecutionContextExtensions`. * Add unit tests for `FlowSendHttpRequest` activity and refactor helper utilities - Introduce `FlowSendHttpRequestTests` to validate activity behavior across various scenarios. - Add utility methods in `SendHttpRequestTestHelpers` for creating mock responses and exceptions. - Refactor `Helpers` namespace to `Http.Helpers` for better organization. - Update project file to reflect namespace adjustments. * Update test/unit/Elsa.Activities.UnitTests/Elsa.Activities.UnitTests.csproj Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Add integration tests for WorkflowDefinitionActivity scenarios - Introduce integration tests covering inputs, outputs, version fallback, and outcome handling. - Add JSON workflow definitions to validate parent-child workflow execution. - Update project files to include new test scenarios. - Enhance error handling in `RunWorkflowExtensions` for missing workflow definitions. - Adjust JavaScript expression handler to support PascalCase activity names. * Refactor WorkflowDefinitionActivity tests to use Theory with dynamic test cases - Consolidate multiple Fact-based tests into a single parameterized Theory. - Introduce `WorkflowDefinitionActivityTestCases` for reusable test scenarios. - Simplify assertions and improve test structure for better maintainability. --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
67 lines
3.7 KiB
XML
67 lines
3.7 KiB
XML
<Project Sdk="Microsoft.NET.Sdk">
|
|
|
|
<PropertyGroup>
|
|
<ProjectGuid>{ca65b7d5-57e8-4932-b8b8-732d040c9b3a}</ProjectGuid>
|
|
</PropertyGroup>
|
|
|
|
<ItemGroup>
|
|
<ProjectReference Include="..\..\..\src\common\Elsa.Testing.Shared.Integration\Elsa.Testing.Shared.Integration.csproj" />
|
|
<ProjectReference Include="..\..\..\src\modules\Elsa.Expressions.JavaScript\Elsa.Expressions.JavaScript.csproj" />
|
|
<ProjectReference Include="..\..\..\src\modules\Elsa.Http\Elsa.Http.csproj" />
|
|
<ProjectReference Include="..\..\..\src\modules\Elsa.Scheduling\Elsa.Scheduling.csproj" />
|
|
<ProjectReference Include="..\..\..\src\modules\Elsa.Workflows.Api\Elsa.Workflows.Api.csproj" />
|
|
<ProjectReference Include="..\..\..\src\modules\Elsa.Workflows.Runtime.Distributed\Elsa.Workflows.Runtime.Distributed.csproj" />
|
|
<ProjectReference Include="..\..\..\src\modules\Elsa.Workflows.Runtime\Elsa.Workflows.Runtime.csproj" />
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<None Update="Serialization\**\*.json" CopyToOutputDirectory="PreserveNewest" />
|
|
<None Update="Scenarios\**\Workflows\*.json" CopyToOutputDirectory="PreserveNewest" />
|
|
<None Update="Scenarios\DependencyWorkflowsPublishing\Workflows\child.json">
|
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
|
</None>
|
|
<None Update="Scenarios\DependencyWorkflowsPublishing\Workflows\parent.json">
|
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
|
</None>
|
|
<None Update="Scenarios\ImplicitJoins\Workflows\fork-decision-join-converge.json">
|
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
|
</None>
|
|
<None Update="Scenarios\ImplicitJoins\Workflows\fork-decision-join-none.json">
|
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
|
</None>
|
|
<None Update="Scenarios\JoinBehaviors\Workflows\fork-decision-join-waitall.json">
|
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
|
</None>
|
|
<None Update="Scenarios\JoinBehaviors\Workflows\decision-merge-join-none.json">
|
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
|
</None>
|
|
<None Update="Scenarios\WorkflowDefinitionActivities\Workflows\parent-with-input.json">
|
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
|
</None>
|
|
<None Update="Scenarios\WorkflowDefinitionActivities\Workflows\child-with-input.json">
|
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
|
</None>
|
|
<None Update="Scenarios\WorkflowDefinitionActivities\Workflows\child-with-outcomes.json">
|
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
|
</None>
|
|
<None Update="Scenarios\WorkflowDefinitionActivities\Workflows\child-with-output.json">
|
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
|
</None>
|
|
<None Update="Scenarios\WorkflowDefinitionActivities\Workflows\parent-version-fallback.json">
|
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
|
</None>
|
|
<None Update="Scenarios\WorkflowDefinitionActivities\Workflows\parent-with-io.json">
|
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
|
</None>
|
|
<None Update="Scenarios\WorkflowDefinitionActivities\Workflows\parent-with-outcomes.json">
|
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
|
</None>
|
|
<None Update="Scenarios\WorkflowDefinitionActivities\Workflows\parent-with-output.json">
|
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
|
</None>
|
|
<None Update="Scenarios\WorkflowDefinitionActivities\Workflows\child-published-version.json">
|
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
|
</None>
|
|
</ItemGroup>
|
|
</Project>
|