elsa-core/test/integration/Elsa.IntegrationTests/Activities/WriteLine/WriteLineTests.cs

32 lines
1.1 KiB
C#
Raw Normal View History

2022-04-12 13:55:35 +00:00
using System.Linq;
using System.Threading.Tasks;
using Elsa.Testing.Shared;
using Elsa.Workflows.Core.Activities;
using Elsa.Workflows.Core.Contracts;
2022-04-12 13:55:35 +00:00
using Microsoft.Extensions.DependencyInjection;
using Xunit;
using Xunit.Abstractions;
2022-04-20 13:52:51 +00:00
namespace Elsa.IntegrationTests.Activities;
2022-04-12 13:55:35 +00:00
2022-04-20 13:52:51 +00:00
public class WriteLineTests
2022-04-12 13:55:35 +00:00
{
private readonly IWorkflowRunner _workflowRunner;
private readonly CapturingTextWriter _capturingTextWriter = new();
2022-04-20 13:52:51 +00:00
public WriteLineTests(ITestOutputHelper testOutputHelper)
2022-04-12 13:55:35 +00:00
{
2022-04-18 13:48:21 +00:00
var services = new TestApplicationBuilder(testOutputHelper).WithCapturingTextWriter(_capturingTextWriter).Build();
2022-04-12 13:55:35 +00:00
_workflowRunner = services.GetRequiredService<IWorkflowRunner>();
}
2022-04-12 13:55:35 +00:00
[Fact(DisplayName = "Run a simple workflow")]
public async Task Test1()
{
var expectedOutput = "Hello World!";
var workflow = Workflow.FromActivity(new WriteLine(expectedOutput));
await _workflowRunner.RunAsync(workflow);
var line = _capturingTextWriter.Lines.FirstOrDefault();
Assert.Equal(expectedOutput, line);
}
}