public async Task FlushAsync_CallsUnderlyingFlushAsync() { var indicator = new IndicatingTextWriter(); var itw = new IndentedTextWriter(indicator); await itw.FlushAsync(); Assert.Equal(nameof(IndentedTextWriter.FlushAsync), indicator.LastCalledMethod); }
public void Flush_CallsUnderlyingFlush() { var indicator = new IndicatingTextWriter(); var itw = new IndentedTextWriter(indicator); itw.Flush(); Assert.Equal(nameof(IndentedTextWriter.Flush), indicator.LastCalledMethod); }
public async Task WriteLineAsync_WithoutIndents_CallsInnerWriteLineAsync(Func <IndentedTextWriter, Task> callWriteLineAsync, string expected) { var indicator = new IndicatingTextWriter(); var itw = new IndentedTextWriter(indicator, TabString); itw.NewLine = NewLine; await callWriteLineAsync(itw); Assert.Equal(nameof(TextWriter.WriteLineAsync), indicator.LastCalledMethod); Assert.Equal(expected, indicator.GetStringBuilder().ToString()); }
public void WriteLine_CallsInnerWriteLine(Action <IndentedTextWriter> callWriteLine, string expected) { var indicator = new IndicatingTextWriter(); var itw = new IndentedTextWriter(indicator, TabString); itw.NewLine = NewLine; callWriteLine(itw); Assert.Equal(nameof(IndentedTextWriter.WriteLine), indicator.LastCalledMethod); Assert.Equal(expected, indicator.GetStringBuilder().ToString()); }
public void Write_WithIndents_FirstLine_IsNotIndented(Action <IndentedTextWriter> callWrite, string expected) { var indicator = new IndicatingTextWriter(); var itw = new IndentedTextWriter(indicator, TabString); itw.NewLine = NewLine; itw.Indent = 1; callWrite(itw); Assert.Equal(nameof(IndentedTextWriter.Write), indicator.LastCalledMethod); Assert.Equal(expected, indicator.GetStringBuilder().ToString()); }
public void WriteLine_IsIndented_AfterWriteLine(Action <IndentedTextWriter> callWriteLine, string expected) { var indicator = new IndicatingTextWriter(); var itw = new IndentedTextWriter(indicator, TabString); itw.NewLine = NewLine; itw.Indent = 1; var prefix = "prefix"; itw.WriteLine(prefix); callWriteLine(itw); Assert.Equal(nameof(IndentedTextWriter.WriteLine), indicator.LastCalledMethod); Assert.Equal($"{prefix}{NewLine}{TabString}{expected}", indicator.GetStringBuilder().ToString()); }
public async Task WriteLineAsync_WithIndents_SubsequentLines_AreIndented(Func <IndentedTextWriter, Task> callWriteLineAsync, string expected) { var indicator = new IndicatingTextWriter(); var itw = new IndentedTextWriter(indicator, TabString); itw.NewLine = NewLine; itw.Indent = 1; const string prefix = "prefix"; await itw.WriteLineAsync(prefix); await callWriteLineAsync(itw); Assert.Equal(nameof(IndentedTextWriter.WriteLineAsync), indicator.LastCalledMethod); Assert.Equal($"{prefix}{NewLine}{TabString}{expected}", indicator.GetStringBuilder().ToString()); }