DotnetStandardStreams/source/DotnetStreamsTests/ConsoleOutputTargetTests.cs
2025-05-15 13:27:49 -06:00

39 lines
867 B
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Xunit;
using Shouldly;
using DotnetStreams;
using System.IO;
using DotnetStreamsTests.Testables;
namespace DotnetStreamsTests
{
public class ConsoleOutputTargetTests
{
private IOutputTarget outputTarget;
[Fact]
public void WritesToOutputStream()
{
ListWriter writer = new();
outputTarget = new TestableConsoleOutputTarget(writer);
outputTarget.Open();
outputTarget.Output("1");
outputTarget.Output("2");
outputTarget.Output("");
outputTarget.Output("3");
outputTarget.Close();
writer.Lines.Count.ShouldBe(4);
writer.Lines[0].ShouldBe("1");
writer.Lines[1].ShouldBe("2");
writer.Lines[2].ShouldBe(string.Empty);
writer.Lines[3].ShouldBe("3");
}
}
}