DotnetStandardStreams/source/DotnetStandardStreamsTests/ConsoleOutputTargetTests.cs

39 lines
853 B
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Xunit;
using Shouldly;
using DotnetStandardStreams;
using System.IO;
using DotnetStandardStreamsTests.Testables;
namespace DotnetStandardStreamsTests
{
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");
}
}
}