public void A_row_is_written_for_each_item_and_a_header_for_each_column_in_file_mode() { var options = new[] { new Option("-s", "a short option"), new Option("--very-long", "a long option") }; var view = new OptionsHelpView(options); view.Render( new ConsoleRenderer(_terminal, OutputMode.PlainText), new Region(0, 0, 30, 3) ); _terminal.Out .ToString() .Should() .Be( "Option " + NewLine + "-s a short option" + NewLine + "--very-long a long option " ); }
public void A_row_is_written_for_each_item_and_a_header_for_each_column( OutputMode outputMode ) { var options = new[] { new Option("-s", "a short option"), new Option("--very-long", "a long option") }; var view = new OptionsHelpView(options); view.Render(new ConsoleRenderer(_terminal, outputMode), new Region(0, 0, 30, 3)); var lines = _terminal.RenderOperations(); lines .Should() .BeEquivalentSequenceTo( Cell("Option ", 0, 0), Cell(" ", 13, 0), Cell("-s ", 0, 1), Cell("a short option", 13, 1), Cell("--very-long ", 0, 2), Cell("a long option ", 13, 2) ); }
public void Column_widths_are_aligned_to_the_longest_cell(OutputMode outputMode) { var options = new[] { new Option("-s", "an option"), new Option("--very-long", "an option") }; var view = new OptionsHelpView(options); view.Render(new ConsoleRenderer(_terminal, outputMode), new Region(0, 0, 30, 3)); var lines = _terminal.RenderOperations().Select(l => l.Text).ToArray(); lines[1].IndexOf("an option").Should().Be(lines[2].IndexOf("an option")); }
public void Column_widths_are_aligned_to_the_longest_cell_in_file_mode() { var options = new[] { new Option("-s", "an option"), new Option("--very-long", "an option") }; var view = new OptionsHelpView(options); view.Render(new ConsoleRenderer(_terminal, OutputMode.PlainText), new Region(0, 0, 30, 3)); var lines = _terminal.Out.ToString() .Split(NewLine) .ToArray(); lines[1].IndexOf("an option") .Should() .Be(lines[2].IndexOf("an option")); }