(#1188) Rows measure greedy

This commit is contained in:
Nils Andresen 2023-10-02 23:30:26 +02:00
parent e2a674815d
commit bbf58ee814
No known key found for this signature in database
GPG Key ID: 0EAFED177E6A41E9
3 changed files with 30 additions and 2 deletions

View File

@ -41,8 +41,8 @@ public sealed class Rows : Renderable, IExpandable
if (measurements.Length > 0)
{
return new Measurement(
measurements.Min(c => c.Min),
measurements.Min(c => c.Max));
measurements.Max(c => c.Min),
measurements.Max(c => c.Max));
}
return new Measurement(0, 0);

View File

@ -0,0 +1,5 @@
┌─────┐
│ 1 │
│ 22 │
│ 333 │
└─────┘

View File

@ -4,6 +4,29 @@ namespace Spectre.Console.Tests.Unit;
[ExpectationPath("Widgets/Rows")]
public sealed class RowsTests
{
[Fact]
[Expectation("GH-1188-Rows")]
[GitHubIssue("https://github.com/spectreconsole/spectre.console/issues/1188")]
public Task Should_Render_Rows_In_Panel_Without_Breaking_Lines()
{
// Given
var console = new TestConsole().Width(60);
var rows = new Rows(
new IRenderable[]
{
new Text("1"),
new Text("22"),
new Text("333"),
});
var panel = new Panel(rows);
// When
console.Write(panel);
// Then
return Verifier.Verify(console.Output);
}
[Fact]
[Expectation("Render")]
public Task Should_Render_Rows()