From 1bb0b9ccc65219e2f5705a31dd7f3d4a09d38e11 Mon Sep 17 00:00:00 2001 From: Patrik Svensson Date: Mon, 4 Jan 2021 18:21:00 +0100 Subject: [PATCH] Fix expectation structure --- .../Box/AsciiBorder.Output.verified.txt} | 0 .../Box/DoubleBorder.Output.verified.txt} | 0 .../Box/HeavyBorder.Output.verified.txt} | 0 .../Box/NoBorder.Output.verified.txt} | 0 .../Box/RoundedBorder.Output.verified.txt} | 0 .../Box/SquareBorder.Output.verified.txt} | 0 .../Table/Ascii2Border.Output.verified.txt} | 0 .../Table/AsciiBorder.Output.verified.txt} | 0 ...AsciiDoubleHeadBorder.Output.verified.txt} | 0 .../Table/DoubleBorder.Output.verified.txt} | 0 .../DoubleEdgeBorder.Output.verified.txt} | 0 .../Table/HeavyBorder.Output.verified.txt} | 0 .../HeavyEdgeBorder.Output.verified.txt} | 0 .../HeavyHeadBorder.Output.verified.txt} | 0 .../HorizontalBorder.Output.verified.txt} | 0 .../Table/MarkdownBorder.Output.verified.txt} | 0 ...rkdownBorder_Centered.Output.verified.txt} | 0 ...ownBorder_LeftAligned.Output.verified.txt} | 0 ...wnBorder_RightAligned.Output.verified.txt} | 0 .../Table/MinimalBorder.Output.verified.txt} | 0 ...nimalDoubleHeadBorder.Output.verified.txt} | 0 ...inimalHeavyHeadBorder.Output.verified.txt} | 0 .../Table/NoBorder.Output.verified.txt} | 0 .../Table/RoundedBorder.Output.verified.txt} | 0 .../Table/SimpleBorder.Output.verified.txt} | 0 .../SimpleHeavyBorder.Output.verified.txt} | 0 .../Table/SquareBorder.Output.verified.txt} | 0 ...tCannotContainOptions.Output.verified.txt} | 0 ...CharacterInOptionName.Output.verified.txt} | 0 ...dCharacterInValueName.Output.verified.txt} | 0 ...eMoreThanOneCharacter.Output.verified.txt} | 0 ...ssingLongAndShortName.Output.verified.txt} | 0 ...ValuesAreNotSupported.Output.verified.txt} | 0 ...ValuesAreNotSupported.Output.verified.txt} | 0 ...sCannotStartWithDigit.Output.verified.txt} | 0 .../OptionsMustHaveName.Output.verified.txt} | 0 ...ustOnlyBeOneCharacter.Output.verified.txt} | 0 .../UnexpectedCharacter.Output.verified.txt} | 0 ...UnterminatedValueName.Output.verified.txt} | 0 .../ValuesMustHaveName.Output.verified.txt} | 0 .../Help/ArgumentOrder.Output.verified.txt} | 0 .../Help/Command.Output.verified.txt} | 0 .../Help/CommandExamples.Output.verified.txt} | 0 .../Help/Default.Output.verified.txt} | 0 .../Help/DefaultExamples.Output.verified.txt} | 0 .../Help/Hidden_Commands.Output.verified.txt} | 0 .../Help/Leaf.Output.verified.txt} | 0 .../Help/NoDescription.Output.verified.txt} | 0 .../Help/Root.Output.verified.txt} | 0 .../Help/RootExamples.Output.verified.txt} | 0 ...RootExamples_Children.Output.verified.txt} | 0 .../RootExamples_Leafs.Output.verified.txt} | 0 .../Test_1.Output.verified.txt} | 0 .../Test_2.Output.verified.txt} | 0 .../Test_1.Output.verified.txt} | 0 .../Test_1.Output.verified.txt} | 0 .../Test_1.Output.verified.txt} | 0 .../Test_1.Output.verified.txt} | 0 .../Test_1.Output.verified.txt} | 0 .../Test_1.Output.verified.txt} | 0 .../Test_1.Output.verified.txt} | 0 .../Test_2.Output.verified.txt} | 0 .../Test_1.Output.verified.txt} | 0 .../Test_2.Output.verified.txt} | 0 .../Test_3.Output.verified.txt} | 0 .../Test_4.Output.verified.txt} | 0 .../Test_5.Output.verified.txt} | 0 .../Quoted_Strings.Output.verified.txt} | 0 .../Test_1.Output.verified.txt} | 0 .../Test_2.Output.verified.txt} | 0 .../Test_1.Output.verified.txt} | 0 .../Test_2.Output.verified.txt} | 0 .../Test_3.Output.verified.txt} | 0 .../Test_4.Output.verified.txt} | 0 .../Test_5.Output.verified.txt} | 0 .../Test_6.Output.verified.txt} | 0 .../Test_7.Output.verified.txt} | 0 .../Test_8.Output.verified.txt} | 0 .../UnknownOption/Test_1.Output.verified.txt} | 0 .../UnknownOption/Test_2.Output.verified.txt} | 0 .../Test_1.Output.verified.txt} | 0 .../Xml/Test_1.Output.verified.txt} | 0 .../Xml/Test_2.Output.verified.txt} | 0 .../Xml/Test_3.Output.verified.txt} | 0 .../Xml/Test_4.Output.verified.txt} | 0 .../Xml/Test_5.Output.verified.txt} | 0 .../Xml/Test_6.Output.verified.txt} | 0 .../CallSite.Output.verified.txt} | 0 .../Default.Output.verified.txt} | 0 .../InnerException.Output.verified.txt} | 0 .../ShortenedMethods.Output.verified.txt} | 0 .../ShortenedTypes.Output.verified.txt} | 0 ...owMethod.Should_Add_Empty_Row.verified.txt | 3 - ...ts.Should_Render_Progress_Bar.verified.txt | 1 - ...erified.txt => Segment.Split.verified.txt} | 0 ...t => Segment.Split_Linebreak.verified.txt} | 0 ...hould_Split_Segment_Correctly.verified.txt | 26 ------ ...able_With_No_Border_Correctly.verified.txt | 3 - .../BarChart/Render.Output.verified.txt} | 0 .../Calendar/Centered.Output.verified.txt} | 0 .../Calendar/Culture.Output.verified.txt} | 0 .../Calendar/LeftAligned.Output.verified.txt} | 0 .../Calendar/Render.Output.verified.txt} | 0 .../RightAligned.Output.verified.txt} | 0 .../Columns/Render.Output.verified.txt} | 0 .../Figlet/Load_Stream.Output.verified.txt} | 0 .../Figlet/Render.Output.verified.txt} | 0 .../Render_Centered.Output.verified.txt} | 0 .../Render_LeftAligned.Output.verified.txt} | 0 .../Render_RightAligned.Output.verified.txt} | 0 .../Render_Wrapped.Output.verified.txt} | 0 .../AddEmptyRow/Render.Output.verified.txt} | 0 .../Grid/Render.Output.verified.txt} | 0 .../Grid/Render_2.Output.verified.txt} | 0 .../Render_Alignment.Output.verified.txt} | 0 ...ender_ExplicitPadding.Output.verified.txt} | 0 .../Grid/Render_Padding.Output.verified.txt} | 0 .../Padder/Render.Output.verified.txt} | 0 .../Render_Expanded.Output.verified.txt} | 0 .../Padder/Render_Nested.Output.verified.txt} | 0 .../Panel/Render.Output.verified.txt} | 0 .../Panel/Render_CJK.Output.verified.txt} | 0 ...Render_Child_Centered.Output.verified.txt} | 0 .../Render_Child_Panel.Output.verified.txt} | 0 ...er_Child_RightAligned.Output.verified.txt} | 0 .../Panel/Render_Expand.Output.verified.txt} | 0 .../Panel/Render_Header.Output.verified.txt} | 0 ...ender_Header_Centered.Output.verified.txt} | 0 ...ender_Header_Collapse.Output.verified.txt} | 0 ...er_Header_LeftAligned.Output.verified.txt} | 0 ...r_Header_RightAligned.Output.verified.txt} | 0 .../Render_LineEndings.Output.verified.txt} | 0 .../Render_Multiline.Output.verified.txt} | 0 .../Panel/Render_Padding.Output.verified.txt} | 0 .../Panel/Render_Unicode.Output.verified.txt} | 0 .../Panel/Render_Wrap.Output.verified.txt} | 0 .../Render_ZeroPadding.Output.verified.txt} | 0 .../Render_ReduceWidth.Output.verified.txt} | 0 .../Prompt/AcceptChoice.Output.verified.txt} | 0 ...utoComplete_BestMatch.Output.verified.txt} | 0 .../AutoComplete_Empty.Output.verified.txt} | 0 ...toComplete_NextChoice.Output.verified.txt} | 0 .../ConversionError.Output.verified.txt} | 0 .../CustomConverter.Output.verified.txt} | 0 .../CustomValidation.Output.verified.txt} | 0 .../Prompt/DefaultValue.Output.verified.txt} | 0 .../Prompt/InvalidChoice.Output.verified.txt} | 0 .../Recorder/Html.Output.verified.txt} | 0 .../Recorder/Text.Output.verified.txt} | 0 .../Rows/Render.Output.verified.txt} | 0 ...r_Expanded_And_Nested.Output.verified.txt} | 0 .../Rows/Render_Nested.Output.verified.txt} | 0 .../Rule/Render.Output.verified.txt} | 0 .../Render_Border_Header.Output.verified.txt} | 0 ...ender_Border_NoHeader.Output.verified.txt} | 0 ...ader_DefaultAlignment.Output.verified.txt} | 0 ...er_Header_LeftAligned.Output.verified.txt} | 0 ...r_Header_RightAligned.Output.verified.txt} | 0 .../Render_Linebreaks.Output.verified.txt} | 0 .../Rule/Render_Truncate.Output.verified.txt} | 0 .../Table/AddEmptyRow.Output.verified.txt} | 0 .../Table/Render.Output.verified.txt} | 0 .../Render_CellPadding.Output.verified.txt} | 0 .../Render_Centered.Output.verified.txt} | 0 ...r_ColumnJustification.Output.verified.txt} | 0 .../Table/Render_Expand.Output.verified.txt} | 0 .../Table/Render_Footers.Output.verified.txt} | 0 .../Render_Impossible.Output.verified.txt} | 0 .../Render_LeftAligned.Output.verified.txt} | 0 .../Render_Multiline.Output.verified.txt} | 0 .../Table/Render_Nested.Output.verified.txt} | 0 .../Table/Render_NoRows.Output.verified.txt} | 0 .../Render_RightAligned.Output.verified.txt} | 0 .../Render_Title_Caption.Output.verified.txt} | 0 ...itle_Caption_Centered.Output.verified.txt} | 0 ...e_Caption_LeftAligned.Output.verified.txt} | 0 ..._Caption_RightAligned.Output.verified.txt} | 0 .../Tree/MultipleRoots.Output.verified.txt} | 0 .../Tree/OnlyRoot.Output.verified.txt} | 0 .../Tree/SingleRoot.Output.verified.txt} | 0 .../Spectre.Console.Tests.csproj | 3 +- .../Unit/BarChartTests.cs | 3 + .../Unit/BoxBorderTests.cs | 8 ++ .../Unit/CalendarTests.cs | 7 ++ ...CommandArgumentAttributeTests.Rendering.cs | 11 ++- .../CommandOptionAttributeTests.Rendering.cs | 32 ++++--- .../Unit/Cli/CommandAppTests.Help.cs | 14 +++ .../Unit/Cli/CommandAppTests.Parsing.cs | 86 ++++++++++++++----- .../Unit/Cli/CommandAppTests.Xml.cs | 8 ++ .../Unit/ColumnsTests.cs | 3 + .../Unit/ExceptionTests.cs | 7 ++ src/Spectre.Console.Tests/Unit/FigletTests.cs | 8 ++ src/Spectre.Console.Tests/Unit/GridTests.cs | 63 ++++++-------- src/Spectre.Console.Tests/Unit/PadderTests.cs | 5 ++ src/Spectre.Console.Tests/Unit/PanelTests.cs | 19 ++++ .../Unit/ProgressTests.cs | 3 + src/Spectre.Console.Tests/Unit/PromptTests.cs | 11 +++ .../Unit/RecorderTests.cs | 4 + src/Spectre.Console.Tests/Unit/RowsTests.cs | 5 ++ src/Spectre.Console.Tests/Unit/RuleTests.cs | 12 ++- .../Unit/SegmentTests.cs | 13 +-- .../Unit/TableBorderTests.cs | 23 +++++ src/Spectre.Console.Tests/Unit/TableTests.cs | 36 ++++---- src/Spectre.Console.Tests/Unit/TreeTests.cs | 5 ++ .../VerifyConfiguration.cs | 14 +-- 205 files changed, 293 insertions(+), 143 deletions(-) rename src/Spectre.Console.Tests/Expectations/{BoxBorderTests.AsciiBorder.Should_Render_As_Expected.verified.txt => Borders/Box/AsciiBorder.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{BoxBorderTests.DoubleBorder.Should_Render_As_Expected.verified.txt => Borders/Box/DoubleBorder.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{BoxBorderTests.HeavyBorder.Should_Render_As_Expected.verified.txt => Borders/Box/HeavyBorder.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{BoxBorderTests.NoBorder.Should_Render_As_Expected.verified.txt => Borders/Box/NoBorder.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{BoxBorderTests.RoundedBorder.Should_Render_As_Expected.verified.txt => Borders/Box/RoundedBorder.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{BoxBorderTests.SquareBorder.Should_Render_As_Expected.verified.txt => Borders/Box/SquareBorder.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableBorderTests.Ascii2Border.Should_Render_As_Expected.verified.txt => Borders/Table/Ascii2Border.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableBorderTests.AsciiBorder.Should_Render_As_Expected.verified.txt => Borders/Table/AsciiBorder.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableBorderTests.AsciiDoubleHeadBorder.Should_Render_As_Expected.verified.txt => Borders/Table/AsciiDoubleHeadBorder.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableBorderTests.DoubleBorder.Should_Render_As_Expected.verified.txt => Borders/Table/DoubleBorder.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableBorderTests.DoubleEdgeBorder.Should_Render_As_Expected.verified.txt => Borders/Table/DoubleEdgeBorder.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableBorderTests.HeavyBorder.Should_Render_As_Expected.verified.txt => Borders/Table/HeavyBorder.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableBorderTests.HeavyEdgeBorder.Should_Render_As_Expected.verified.txt => Borders/Table/HeavyEdgeBorder.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableBorderTests.HeavyHeadBorder.Should_Render_As_Expected.verified.txt => Borders/Table/HeavyHeadBorder.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableBorderTests.HorizontalBorder.Should_Render_As_Expected.verified.txt => Borders/Table/HorizontalBorder.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableBorderTests.MarkdownBorder.Should_Render_As_Expected.verified.txt => Borders/Table/MarkdownBorder.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableBorderTests.MarkdownBorder.Should_Render_Center_Aligned_Table_Columns_As_Expected.verified.txt => Borders/Table/MarkdownBorder_Centered.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableBorderTests.MarkdownBorder.Should_Render_Left_Aligned_Table_Columns_As_Expected.verified.txt => Borders/Table/MarkdownBorder_LeftAligned.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableBorderTests.MarkdownBorder.Should_Render_Right_Aligned_Table_Columns_As_Expected.verified.txt => Borders/Table/MarkdownBorder_RightAligned.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableBorderTests.MinimalBorder.Should_Render_As_Expected.verified.txt => Borders/Table/MinimalBorder.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableBorderTests.MinimalDoubleHeadBorder.Should_Render_As_Expected.verified.txt => Borders/Table/MinimalDoubleHeadBorder.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableBorderTests.MinimalHeavyHeadBorder.Should_Render_As_Expected.verified.txt => Borders/Table/MinimalHeavyHeadBorder.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableBorderTests.NoBorder.Should_Render_As_Expected.verified.txt => Borders/Table/NoBorder.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableBorderTests.RoundedBorder.Should_Render_As_Expected.verified.txt => Borders/Table/RoundedBorder.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableBorderTests.SimpleBorder.Should_Render_As_Expected.verified.txt => Borders/Table/SimpleBorder.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableBorderTests.SimpleHeavyBorder.Should_Render_As_Expected.verified.txt => Borders/Table/SimpleHeavyBorder.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableBorderTests.SquareBorder.Should_Render_As_Expected.verified.txt => Borders/Table/SquareBorder.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandArgumentAttributeTests.Rendering.TheArgumentCannotContainOptionsMethod.Should_Return_Correct_Text.verified.txt => Cli/Arguments/ArgumentCannotContainOptions.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandOptionAttributeTests.Rendering.TheInvalidCharacterInOptionNameMethod.Should_Return_Correct_Text.verified.txt => Cli/Arguments/InvalidCharacterInOptionName.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandOptionAttributeTests.Rendering.TheInvalidCharacterInValueNameMethod.Should_Return_Correct_Text.verified.txt => Cli/Arguments/InvalidCharacterInValueName.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandOptionAttributeTests.Rendering.TheLongOptionMustHaveMoreThanOneCharacterMethod.Should_Return_Correct_Text.verified.txt => Cli/Arguments/LongOptionMustHaveMoreThanOneCharacter.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandOptionAttributeTests.Rendering.TheMissingLongAndShortNameMethod.Should_Return_Correct_Text.verified.txt => Cli/Arguments/MissingLongAndShortName.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandOptionAttributeTests.Rendering.TheMultipleOptionValuesAreNotSupportedMethod.Should_Return_Correct_Text.verified.txt => Cli/Arguments/MultipleOptionValuesAreNotSupported.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandArgumentAttributeTests.Rendering.TheMultipleValuesAreNotSupportedMethod.Should_Return_Correct_Text.verified.txt => Cli/Arguments/MultipleValuesAreNotSupported.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandOptionAttributeTests.Rendering.TheOptionNamesCannotStartWithDigitMethod.Should_Return_Correct_Text.verified.txt => Cli/Arguments/OptionNamesCannotStartWithDigit.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandOptionAttributeTests.Rendering.TheOptionsMustHaveNameMethod.Should_Return_Correct_Text.verified.txt => Cli/Arguments/OptionsMustHaveName.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandOptionAttributeTests.Rendering.TheShortOptionMustOnlyBeOneCharacterMethod.Should_Return_Correct_Text.verified.txt => Cli/Arguments/ShortOptionMustOnlyBeOneCharacter.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandOptionAttributeTests.Rendering.TheUnexpectedCharacterMethod.Should_Return_Correct_Text.verified.txt => Cli/Arguments/UnexpectedCharacter.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandOptionAttributeTests.Rendering.TheUnterminatedValueNameMethod.Should_Return_Correct_Text.verified.txt => Cli/Arguments/UnterminatedValueName.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandArgumentAttributeTests.Rendering.TheValuesMustHaveNameMethod.Should_Return_Correct_Text.verified.txt => Cli/Arguments/ValuesMustHaveName.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Help.Help.Should_List_Arguments_In_Correct_Order.verified.txt => Cli/Help/ArgumentOrder.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Help.Help.Should_Output_Command_Correctly.verified.txt => Cli/Help/Command.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Help.Help.Should_Only_Output_Command_Examples_Defined_On_Command.verified.txt => Cli/Help/CommandExamples.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Help.Help.Should_Output_Default_Command_Correctly.verified.txt => Cli/Help/Default.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Help.Help.Should_Output_Root_Examples_If_Default_Command_Is_Specified.verified.txt => Cli/Help/DefaultExamples.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Help.Help.Should_Skip_Hidden_Commands.verified.txt => Cli/Help/Hidden_Commands.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Help.Help.Should_Output_Leaf_Correctly.verified.txt => Cli/Help/Leaf.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Help.Help.Should_Not_Show_Truncated_Command_Table_If_Commands_Are_Missing_Description.verified.txt => Cli/Help/NoDescription.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Help.Help.Should_Output_Root_Correctly.verified.txt => Cli/Help/Root.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Help.Help.Should_Output_Root_Examples_Defined_On_Direct_Children_If_Root_Have_No_Examples.verified.txt => Cli/Help/RootExamples.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Help.Help.Should_Output_Root_Examples_Defined_On_Root.verified.txt => Cli/Help/RootExamples_Children.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Help.Help.Should_Output_Root_Examples_Defined_On_Leaves_If_No_Other_Examples_Are_Found.verified.txt => Cli/Help/RootExamples_Leafs.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.CannotAssignValueToFlag.Should_Return_Correct_Text_For_Long_Option.verified.txt => Cli/Parsing/CannotAssignValueToFlag/Test_1.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.CannotAssignValueToFlag.Should_Return_Correct_Text_For_Short_Option.verified.txt => Cli/Parsing/CannotAssignValueToFlag/Test_2.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.InvalidShortOptionName.Should_Return_Correct_Text.verified.txt => Cli/Parsing/InvalidShortOptionName/Test_1.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.LongOptionNameContainSymbol.Should_Return_Correct_Text.verified.txt => Cli/Parsing/LongOptionNameContainSymbol/Test_1.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.LongOptionNameIsMissing.Should_Return_Correct_Text.verified.txt => Cli/Parsing/LongOptionNameIsMissing/Test_1.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.LongOptionNameIsOneCharacter.Should_Return_Correct_Text.verified.txt => Cli/Parsing/LongOptionNameIsOneCharacter/Test_1.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.LongOptionNameStartWithDigit.Should_Return_Correct_Text.verified.txt => Cli/Parsing/LongOptionNameStartWithDigit/Test_1.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.NoMatchingArgument.Should_Return_Correct_Text.verified.txt => Cli/Parsing/NoMatchingArgument/Test_1.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.NoValueForOption.Should_Return_Correct_Text_For_Long_Option.verified.txt => Cli/Parsing/NoValueForOption/Test_1.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.NoValueForOption.Should_Return_Correct_Text_For_Short_Option.verified.txt => Cli/Parsing/NoValueForOption/Test_2.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.OptionWithoutName.Should_Return_Correct_Text_For_Short_Option.verified.txt => Cli/Parsing/OptionWithoutName/Test_1.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.OptionWithoutName.Should_Return_Correct_Text_For_Missing_Long_Option_Value_With_Equality_Separator.verified.txt => Cli/Parsing/OptionWithoutName/Test_2.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.OptionWithoutName.Should_Return_Correct_Text_For_Missing_Long_Option_Value_With_Colon_Separator.verified.txt => Cli/Parsing/OptionWithoutName/Test_3.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.OptionWithoutName.Should_Return_Correct_Text_For_Missing_Short_Option_Value_With_Equality_Separator.verified.txt => Cli/Parsing/OptionWithoutName/Test_4.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.OptionWithoutName.Should_Return_Correct_Text_For_Missing_Short_Option_Value_With_Colon_Separator.verified.txt => Cli/Parsing/OptionWithoutName/Test_5.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.Parsing.Should_Parse_Quoted_Strings_Correctly.verified.txt => Cli/Parsing/Quoted_Strings.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.UnexpectedOption.Should_Return_Correct_Text_For_Long_Option.verified.txt => Cli/Parsing/UnexpectedOption/Test_1.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.UnexpectedOption.Should_Return_Correct_Text_For_Short_Option.verified.txt => Cli/Parsing/UnexpectedOption/Test_2.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.UnknownCommand.Should_Return_Correct_Text_When_Command_Is_Unknown.verified.txt => Cli/Parsing/UnknownCommand/Test_1.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.UnknownCommand.Should_Return_Correct_Text_For_Unknown_Command_When_Current_Command_Has_No_Arguments.verified.txt => Cli/Parsing/UnknownCommand/Test_2.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.UnknownCommand.Should_Return_Correct_Text_With_Suggestion_When_Command_Followed_By_Argument_Is_Unknown_And_Distance_Is_Small.verified.txt => Cli/Parsing/UnknownCommand/Test_3.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.UnknownCommand.Should_Return_Correct_Text_With_Suggestion_When_Root_Command_Followed_By_Argument_Is_Unknown_And_Distance_Is_Small.verified.txt => Cli/Parsing/UnknownCommand/Test_4.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.UnknownCommand.Should_Return_Correct_Text_With_Suggestion_And_No_Arguments_When_Root_Command_Is_Unknown_And_Distance_Is_Small.verified.txt => Cli/Parsing/UnknownCommand/Test_5.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.UnknownCommand.Should_Return_Correct_Text_With_Suggestion_And_No_Arguments_When_Command_Is_Unknown_And_Distance_Is_Small.verified.txt => Cli/Parsing/UnknownCommand/Test_6.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.UnknownCommand.Should_Return_Correct_Text_With_Suggestion_When_Root_Command_After_Argument_Is_Unknown_And_Distance_Is_Small.verified.txt => Cli/Parsing/UnknownCommand/Test_7.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.UnknownCommand.Should_Return_Correct_Text_With_Suggestion_When_Command_After_Argument_Is_Unknown_And_Distance_Is_Small.verified.txt => Cli/Parsing/UnknownCommand/Test_8.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.UnknownOption.Should_Return_Correct_Text_For_Long_Option_If_Strict_Mode_Is_Enabled.verified.txt => Cli/Parsing/UnknownOption/Test_1.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.UnknownOption.Should_Return_Correct_Text_For_Short_Option_If_Strict_Mode_Is_Enabled.verified.txt => Cli/Parsing/UnknownOption/Test_2.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Parsing.UnterminatedQuote.Should_Return_Correct_Text.verified.txt => Cli/Parsing/UnterminatedQuote/Test_1.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Xml.Xml.Should_Dump_Correct_Model_For_Case_1.verified.txt => Cli/Xml/Test_1.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Xml.Xml.Should_Dump_Correct_Model_For_Case_2.verified.txt => Cli/Xml/Test_2.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Xml.Xml.Should_Dump_Correct_Model_For_Case_3.verified.txt => Cli/Xml/Test_3.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Xml.Xml.Should_Dump_Correct_Model_For_Case_4.verified.txt => Cli/Xml/Test_4.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Xml.Xml.Should_Dump_Correct_Model_For_Case_5.verified.txt => Cli/Xml/Test_5.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CommandAppTests.Xml.Xml.Should_Dump_Correct_Model_For_Model_With_Default_Command.verified.txt => Cli/Xml/Test_6.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{ExceptionTests.Should_Write_Exceptions_With_Generic_Type_Parameters_In_Callsite_As_Expected.verified.txt => Exception/CallSite.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{ExceptionTests.Should_Write_Exception.verified.txt => Exception/Default.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{ExceptionTests.Should_Write_Exception_With_Inner_Exception.verified.txt => Exception/InnerException.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{ExceptionTests.Should_Write_Exception_With_Shortened_Methods.verified.txt => Exception/ShortenedMethods.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{ExceptionTests.Should_Write_Exception_With_Shortened_Types.verified.txt => Exception/ShortenedTypes.Output.verified.txt} (100%) delete mode 100644 src/Spectre.Console.Tests/Expectations/GridTests.TheAddEmptyRowMethod.Should_Add_Empty_Row.verified.txt delete mode 100644 src/Spectre.Console.Tests/Expectations/ProgressBarTests.Should_Render_Progress_Bar.verified.txt rename src/Spectre.Console.Tests/Expectations/{SegmentTests.TheSplitLinesMethod.Should_Split_Segment.verified.txt => Segment.Split.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{SegmentTests.TheSplitLinesMethod.Should_Split_Segments_With_Linebreak_In_Text.verified.txt => Segment.Split_Linebreak.verified.txt} (100%) delete mode 100644 src/Spectre.Console.Tests/Expectations/SegmentTests.TheSplitMethod.Should_Split_Segment_Correctly.verified.txt delete mode 100644 src/Spectre.Console.Tests/Expectations/TableTests.Should_Render_Table_With_No_Border_Correctly.verified.txt rename src/Spectre.Console.Tests/Expectations/{BarChartTests.Should_Render_Correctly.verified.txt => Widgets/BarChart/Render.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CalendarTests.Should_Center_Calendar_Correctly.verified.txt => Widgets/Calendar/Centered.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CalendarTests.Should_Render_Calendar_Correctly_For_Specific_Culture.verified.txt => Widgets/Calendar/Culture.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CalendarTests.Should_Left_Align_Calendar_Correctly.verified.txt => Widgets/Calendar/LeftAligned.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CalendarTests.Should_Render_Calendar_Correctly.verified.txt => Widgets/Calendar/Render.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{CalendarTests.Should_Right_Align_Calendar_Correctly.verified.txt => Widgets/Calendar/RightAligned.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{ColumnsTests.Should_Render_Columns_Correctly.verified.txt => Widgets/Columns/Render.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{FigletTests.Should_Load_Font_From_Stream.verified.txt => Widgets/Figlet/Load_Stream.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{FigletTests.Should_Render_Text_Correctly.verified.txt => Widgets/Figlet/Render.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{FigletTests.Should_Render_Centered_Text_Correctly.verified.txt => Widgets/Figlet/Render_Centered.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{FigletTests.Should_Render_Left_Aligned_Text_Correctly.verified.txt => Widgets/Figlet/Render_LeftAligned.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{FigletTests.Should_Render_Right_Aligned_Text_Correctly.verified.txt => Widgets/Figlet/Render_RightAligned.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{FigletTests.Should_Render_Wrapped_Text_Correctly.verified.txt => Widgets/Figlet/Render_Wrapped.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{GridTests.TheAddEmptyRowMethod.Should_Add_Empty_Row_At_The_End.verified.txt => Widgets/Grid/AddEmptyRow/Render.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{GridTests.Should_Render_Grid_Correctly.verified.txt => Widgets/Grid/Render.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{GridTests.Should_Render_Grid.verified.txt => Widgets/Grid/Render_2.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{GridTests.Should_Render_Grid_Column_Alignment_Correctly.verified.txt => Widgets/Grid/Render_Alignment.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{GridTests.Should_Render_Explicit_Grid_Column_Padding_Correctly.verified.txt => Widgets/Grid/Render_ExplicitPadding.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{GridTests.Should_Use_Default_Padding.verified.txt => Widgets/Grid/Render_Padding.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PadderTests.Should_Render_Padded_Object_Correctly.verified.txt => Widgets/Padder/Render.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PadderTests.Should_Render_Expanded_Padded_Object_Correctly.verified.txt => Widgets/Padder/Render_Expanded.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PadderTests.Should_Render_Padded_Object_Correctly_When_Nested_Within_Other_Object.verified.txt => Widgets/Padder/Render_Nested.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PanelTests.Should_Render_Panel.verified.txt => Widgets/Panel/Render.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PanelTests.Should_Wrap_Table_With_CJK_Tables_In_Panel_Correctly.verified.txt => Widgets/Panel/Render_CJK.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PanelTests.Should_Center_Child_Correctly.verified.txt => Widgets/Panel/Render_Child_Centered.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PanelTests.Should_Render_Panel_Inside_Panel_Correctly.verified.txt => Widgets/Panel/Render_Child_Panel.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PanelTests.Should_Justify_Child_To_Right_Correctly.verified.txt => Widgets/Panel/Render_Child_RightAligned.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PanelTests.Should_Expand_Panel_If_Enabled.verified.txt => Widgets/Panel/Render_Expand.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PanelTests.Should_Render_Panel_With_Header.verified.txt => Widgets/Panel/Render_Header.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PanelTests.Should_Render_Panel_With_Centered_Header.verified.txt => Widgets/Panel/Render_Header_Centered.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PanelTests.Should_Collapse_Header_If_It_Will_Not_Fit.verified.txt => Widgets/Panel/Render_Header_Collapse.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PanelTests.Should_Render_Panel_With_Left_Aligned_Header.verified.txt => Widgets/Panel/Render_Header_LeftAligned.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PanelTests.Should_Render_Panel_With_Right_Aligned_Header.verified.txt => Widgets/Panel/Render_Header_RightAligned.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PanelTests.Should_Preserve_Explicit_Line_Ending.verified.txt => Widgets/Panel/Render_LineEndings.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PanelTests.Should_Render_Panel_With_Multiple_Lines.verified.txt => Widgets/Panel/Render_Multiline.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PanelTests.Should_Render_Panel_With_Padding.verified.txt => Widgets/Panel/Render_Padding.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PanelTests.Should_Render_Panel_With_Unicode_Correctly.verified.txt => Widgets/Panel/Render_Unicode.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PanelTests.Should_Wrap_Content_Correctly.verified.txt => Widgets/Panel/Render_Wrap.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PanelTests.Should_Render_Panel_With_Padding_Set_To_Zero.verified.txt => Widgets/Panel/Render_ZeroPadding.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{ProgressTests.Should_Reduce_Width_If_Needed.verified.txt => Widgets/Progress/Render_ReduceWidth.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PromptTests.Should_Accept_Choice_In_List.verified.txt => Widgets/Prompt/AcceptChoice.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PromptTests.Should_Auto_Complete_To_Best_Match.verified.txt => Widgets/Prompt/AutoComplete_BestMatch.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PromptTests.Should_Auto_Complete_To_First_Choice_If_Pressing_Tab_On_Empty_String.verified.txt => Widgets/Prompt/AutoComplete_Empty.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PromptTests.Should_Auto_Complete_To_Next_Choice_When_Pressing_Tab_On_A_Match.verified.txt => Widgets/Prompt/AutoComplete_NextChoice.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PromptTests.Should_Return_Validation_Error_If_Value_Cannot_Be_Converted.verified.txt => Widgets/Prompt/ConversionError.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PromptTests.Should_Use_Custom_Converter.verified.txt => Widgets/Prompt/CustomConverter.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PromptTests.Should_Return_Error_If_Custom_Validation_Fails.verified.txt => Widgets/Prompt/CustomValidation.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PromptTests.Should_Chose_Default_Value_If_Nothing_Is_Entered.verified.txt => Widgets/Prompt/DefaultValue.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{PromptTests.Should_Return_Error_If_An_Invalid_Choice_Is_Made.verified.txt => Widgets/Prompt/InvalidChoice.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{RecorderTests.Should_Export_Html_As_Expected.verified.txt => Widgets/Recorder/Html.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{RecorderTests.Should_Export_Text_As_Expected.verified.txt => Widgets/Recorder/Text.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{RowsTests.Should_Render_Rows.verified.txt => Widgets/Rows/Render.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{RowsTests.Should_Render_Rows_Correctly_Inside_Other_Widget_When_Expanded.verified.txt => Widgets/Rows/Render_Expanded_And_Nested.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{RowsTests.Should_Render_Rows_Correctly_Inside_Other_Widget.verified.txt => Widgets/Rows/Render_Nested.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{RuleTests.Should_Render_Default_Rule_Without_Title.verified.txt => Widgets/Rule/Render.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{RuleTests.Should_Render_With_Specified_Box.verified.txt => Widgets/Rule/Render_Border_Header.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{RuleTests.Should_Render_Default_Rule_With_Specified_Box.verified.txt => Widgets/Rule/Render_Border_NoHeader.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{RuleTests.Should_Render_Default_Rule_With_Title_Centered_By_Default.verified.txt => Widgets/Rule/Render_Header_DefaultAlignment.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{RuleTests.Should_Render_Default_Rule_With_Title_Left_Aligned.verified.txt => Widgets/Rule/Render_Header_LeftAligned.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{RuleTests.Should_Render_Default_Rule_With_Title_Right_Aligned.verified.txt => Widgets/Rule/Render_Header_RightAligned.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{RuleTests.Should_Convert_Line_Breaks_In_Title_To_Spaces.verified.txt => Widgets/Rule/Render_Linebreaks.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{RuleTests.Should_Truncate_Title.verified.txt => Widgets/Rule/Render_Truncate.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableTests.TheAddEmptyRowMethod.Should_Render_Table_Correctly.verified.txt => Widgets/Table/AddEmptyRow.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableTests.Should_Left_Align_Table_Correctly.verified.txt => Widgets/Table/Render.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableTests.Should_Render_Table_With_Cell_Padding_Correctly.verified.txt => Widgets/Table/Render_CellPadding.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableTests.Should_Center_Table_Correctly.verified.txt => Widgets/Table/Render_Centered.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableTests.Should_Render_Table_With_Column_Justification_Correctly.verified.txt => Widgets/Table/Render_ColumnJustification.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableTests.Should_Expand_Table_To_Available_Space_If_Specified.verified.txt => Widgets/Table/Render_Expand.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableTests.Should_Render_Table_With_Footers_Correctly.verified.txt => Widgets/Table/Render_Footers.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableTests.Should_Not_Draw_Tables_That_Are_Impossible_To_Draw.verified.txt => Widgets/Table/Render_Impossible.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableTests.Should_Render_Table_Correctly.verified.txt => Widgets/Table/Render_LeftAligned.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableTests.Should_Render_Table_With_Multiple_Rows_In_Cell_Correctly.verified.txt => Widgets/Table/Render_Multiline.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableTests.Should_Render_Table_Nested_In_Panels_Correctly.verified.txt => Widgets/Table/Render_Nested.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableTests.Should_Render_Table_Without_Rows.verified.txt => Widgets/Table/Render_NoRows.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableTests.Should_Right_Align_Table_Correctly.verified.txt => Widgets/Table/Render_RightAligned.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableTests.Should_Left_Align_Table_With_Title_And_Caption_Correctly.verified.txt => Widgets/Table/Render_Title_Caption.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableTests.Should_Center_Table_With_Title_And_Caption_Correctly.verified.txt => Widgets/Table/Render_Title_Caption_Centered.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableTests.Should_Render_Table_With_Title_And_Caption_Correctly.verified.txt => Widgets/Table/Render_Title_Caption_LeftAligned.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TableTests.Should_Right_Align_Table_With_Title_And_Caption_Correctly.verified.txt => Widgets/Table/Render_Title_Caption_RightAligned.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TreeTests.Should_Render_Tree_With_Multiple_Roots_Correctly.verified.txt => Widgets/Tree/MultipleRoots.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TreeTests.Should_Render_Tree_With_Only_Root_Node_Correctly.verified.txt => Widgets/Tree/OnlyRoot.Output.verified.txt} (100%) rename src/Spectre.Console.Tests/Expectations/{TreeTests.Should_Render_Tree_With_Single_Root_Correctly.verified.txt => Widgets/Tree/SingleRoot.Output.verified.txt} (100%) diff --git a/src/Spectre.Console.Tests/Expectations/BoxBorderTests.AsciiBorder.Should_Render_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Borders/Box/AsciiBorder.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/BoxBorderTests.AsciiBorder.Should_Render_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Borders/Box/AsciiBorder.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/BoxBorderTests.DoubleBorder.Should_Render_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Borders/Box/DoubleBorder.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/BoxBorderTests.DoubleBorder.Should_Render_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Borders/Box/DoubleBorder.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/BoxBorderTests.HeavyBorder.Should_Render_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Borders/Box/HeavyBorder.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/BoxBorderTests.HeavyBorder.Should_Render_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Borders/Box/HeavyBorder.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/BoxBorderTests.NoBorder.Should_Render_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Borders/Box/NoBorder.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/BoxBorderTests.NoBorder.Should_Render_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Borders/Box/NoBorder.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/BoxBorderTests.RoundedBorder.Should_Render_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Borders/Box/RoundedBorder.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/BoxBorderTests.RoundedBorder.Should_Render_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Borders/Box/RoundedBorder.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/BoxBorderTests.SquareBorder.Should_Render_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Borders/Box/SquareBorder.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/BoxBorderTests.SquareBorder.Should_Render_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Borders/Box/SquareBorder.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableBorderTests.Ascii2Border.Should_Render_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Borders/Table/Ascii2Border.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableBorderTests.Ascii2Border.Should_Render_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Borders/Table/Ascii2Border.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableBorderTests.AsciiBorder.Should_Render_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Borders/Table/AsciiBorder.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableBorderTests.AsciiBorder.Should_Render_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Borders/Table/AsciiBorder.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableBorderTests.AsciiDoubleHeadBorder.Should_Render_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Borders/Table/AsciiDoubleHeadBorder.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableBorderTests.AsciiDoubleHeadBorder.Should_Render_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Borders/Table/AsciiDoubleHeadBorder.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableBorderTests.DoubleBorder.Should_Render_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Borders/Table/DoubleBorder.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableBorderTests.DoubleBorder.Should_Render_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Borders/Table/DoubleBorder.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableBorderTests.DoubleEdgeBorder.Should_Render_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Borders/Table/DoubleEdgeBorder.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableBorderTests.DoubleEdgeBorder.Should_Render_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Borders/Table/DoubleEdgeBorder.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableBorderTests.HeavyBorder.Should_Render_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Borders/Table/HeavyBorder.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableBorderTests.HeavyBorder.Should_Render_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Borders/Table/HeavyBorder.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableBorderTests.HeavyEdgeBorder.Should_Render_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Borders/Table/HeavyEdgeBorder.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableBorderTests.HeavyEdgeBorder.Should_Render_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Borders/Table/HeavyEdgeBorder.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableBorderTests.HeavyHeadBorder.Should_Render_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Borders/Table/HeavyHeadBorder.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableBorderTests.HeavyHeadBorder.Should_Render_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Borders/Table/HeavyHeadBorder.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableBorderTests.HorizontalBorder.Should_Render_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Borders/Table/HorizontalBorder.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableBorderTests.HorizontalBorder.Should_Render_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Borders/Table/HorizontalBorder.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableBorderTests.MarkdownBorder.Should_Render_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Borders/Table/MarkdownBorder.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableBorderTests.MarkdownBorder.Should_Render_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Borders/Table/MarkdownBorder.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableBorderTests.MarkdownBorder.Should_Render_Center_Aligned_Table_Columns_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Borders/Table/MarkdownBorder_Centered.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableBorderTests.MarkdownBorder.Should_Render_Center_Aligned_Table_Columns_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Borders/Table/MarkdownBorder_Centered.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableBorderTests.MarkdownBorder.Should_Render_Left_Aligned_Table_Columns_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Borders/Table/MarkdownBorder_LeftAligned.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableBorderTests.MarkdownBorder.Should_Render_Left_Aligned_Table_Columns_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Borders/Table/MarkdownBorder_LeftAligned.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableBorderTests.MarkdownBorder.Should_Render_Right_Aligned_Table_Columns_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Borders/Table/MarkdownBorder_RightAligned.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableBorderTests.MarkdownBorder.Should_Render_Right_Aligned_Table_Columns_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Borders/Table/MarkdownBorder_RightAligned.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableBorderTests.MinimalBorder.Should_Render_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Borders/Table/MinimalBorder.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableBorderTests.MinimalBorder.Should_Render_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Borders/Table/MinimalBorder.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableBorderTests.MinimalDoubleHeadBorder.Should_Render_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Borders/Table/MinimalDoubleHeadBorder.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableBorderTests.MinimalDoubleHeadBorder.Should_Render_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Borders/Table/MinimalDoubleHeadBorder.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableBorderTests.MinimalHeavyHeadBorder.Should_Render_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Borders/Table/MinimalHeavyHeadBorder.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableBorderTests.MinimalHeavyHeadBorder.Should_Render_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Borders/Table/MinimalHeavyHeadBorder.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableBorderTests.NoBorder.Should_Render_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Borders/Table/NoBorder.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableBorderTests.NoBorder.Should_Render_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Borders/Table/NoBorder.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableBorderTests.RoundedBorder.Should_Render_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Borders/Table/RoundedBorder.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableBorderTests.RoundedBorder.Should_Render_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Borders/Table/RoundedBorder.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableBorderTests.SimpleBorder.Should_Render_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Borders/Table/SimpleBorder.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableBorderTests.SimpleBorder.Should_Render_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Borders/Table/SimpleBorder.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableBorderTests.SimpleHeavyBorder.Should_Render_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Borders/Table/SimpleHeavyBorder.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableBorderTests.SimpleHeavyBorder.Should_Render_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Borders/Table/SimpleHeavyBorder.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableBorderTests.SquareBorder.Should_Render_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Borders/Table/SquareBorder.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableBorderTests.SquareBorder.Should_Render_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Borders/Table/SquareBorder.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandArgumentAttributeTests.Rendering.TheArgumentCannotContainOptionsMethod.Should_Return_Correct_Text.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Arguments/ArgumentCannotContainOptions.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandArgumentAttributeTests.Rendering.TheArgumentCannotContainOptionsMethod.Should_Return_Correct_Text.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Arguments/ArgumentCannotContainOptions.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandOptionAttributeTests.Rendering.TheInvalidCharacterInOptionNameMethod.Should_Return_Correct_Text.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Arguments/InvalidCharacterInOptionName.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandOptionAttributeTests.Rendering.TheInvalidCharacterInOptionNameMethod.Should_Return_Correct_Text.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Arguments/InvalidCharacterInOptionName.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandOptionAttributeTests.Rendering.TheInvalidCharacterInValueNameMethod.Should_Return_Correct_Text.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Arguments/InvalidCharacterInValueName.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandOptionAttributeTests.Rendering.TheInvalidCharacterInValueNameMethod.Should_Return_Correct_Text.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Arguments/InvalidCharacterInValueName.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandOptionAttributeTests.Rendering.TheLongOptionMustHaveMoreThanOneCharacterMethod.Should_Return_Correct_Text.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Arguments/LongOptionMustHaveMoreThanOneCharacter.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandOptionAttributeTests.Rendering.TheLongOptionMustHaveMoreThanOneCharacterMethod.Should_Return_Correct_Text.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Arguments/LongOptionMustHaveMoreThanOneCharacter.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandOptionAttributeTests.Rendering.TheMissingLongAndShortNameMethod.Should_Return_Correct_Text.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Arguments/MissingLongAndShortName.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandOptionAttributeTests.Rendering.TheMissingLongAndShortNameMethod.Should_Return_Correct_Text.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Arguments/MissingLongAndShortName.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandOptionAttributeTests.Rendering.TheMultipleOptionValuesAreNotSupportedMethod.Should_Return_Correct_Text.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Arguments/MultipleOptionValuesAreNotSupported.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandOptionAttributeTests.Rendering.TheMultipleOptionValuesAreNotSupportedMethod.Should_Return_Correct_Text.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Arguments/MultipleOptionValuesAreNotSupported.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandArgumentAttributeTests.Rendering.TheMultipleValuesAreNotSupportedMethod.Should_Return_Correct_Text.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Arguments/MultipleValuesAreNotSupported.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandArgumentAttributeTests.Rendering.TheMultipleValuesAreNotSupportedMethod.Should_Return_Correct_Text.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Arguments/MultipleValuesAreNotSupported.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandOptionAttributeTests.Rendering.TheOptionNamesCannotStartWithDigitMethod.Should_Return_Correct_Text.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Arguments/OptionNamesCannotStartWithDigit.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandOptionAttributeTests.Rendering.TheOptionNamesCannotStartWithDigitMethod.Should_Return_Correct_Text.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Arguments/OptionNamesCannotStartWithDigit.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandOptionAttributeTests.Rendering.TheOptionsMustHaveNameMethod.Should_Return_Correct_Text.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Arguments/OptionsMustHaveName.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandOptionAttributeTests.Rendering.TheOptionsMustHaveNameMethod.Should_Return_Correct_Text.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Arguments/OptionsMustHaveName.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandOptionAttributeTests.Rendering.TheShortOptionMustOnlyBeOneCharacterMethod.Should_Return_Correct_Text.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Arguments/ShortOptionMustOnlyBeOneCharacter.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandOptionAttributeTests.Rendering.TheShortOptionMustOnlyBeOneCharacterMethod.Should_Return_Correct_Text.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Arguments/ShortOptionMustOnlyBeOneCharacter.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandOptionAttributeTests.Rendering.TheUnexpectedCharacterMethod.Should_Return_Correct_Text.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Arguments/UnexpectedCharacter.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandOptionAttributeTests.Rendering.TheUnexpectedCharacterMethod.Should_Return_Correct_Text.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Arguments/UnexpectedCharacter.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandOptionAttributeTests.Rendering.TheUnterminatedValueNameMethod.Should_Return_Correct_Text.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Arguments/UnterminatedValueName.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandOptionAttributeTests.Rendering.TheUnterminatedValueNameMethod.Should_Return_Correct_Text.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Arguments/UnterminatedValueName.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandArgumentAttributeTests.Rendering.TheValuesMustHaveNameMethod.Should_Return_Correct_Text.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Arguments/ValuesMustHaveName.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandArgumentAttributeTests.Rendering.TheValuesMustHaveNameMethod.Should_Return_Correct_Text.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Arguments/ValuesMustHaveName.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Help.Help.Should_List_Arguments_In_Correct_Order.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Help/ArgumentOrder.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Help.Help.Should_List_Arguments_In_Correct_Order.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Help/ArgumentOrder.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Help.Help.Should_Output_Command_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Help/Command.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Help.Help.Should_Output_Command_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Help/Command.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Help.Help.Should_Only_Output_Command_Examples_Defined_On_Command.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Help/CommandExamples.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Help.Help.Should_Only_Output_Command_Examples_Defined_On_Command.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Help/CommandExamples.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Help.Help.Should_Output_Default_Command_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Help/Default.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Help.Help.Should_Output_Default_Command_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Help/Default.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Help.Help.Should_Output_Root_Examples_If_Default_Command_Is_Specified.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Help/DefaultExamples.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Help.Help.Should_Output_Root_Examples_If_Default_Command_Is_Specified.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Help/DefaultExamples.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Help.Help.Should_Skip_Hidden_Commands.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Help/Hidden_Commands.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Help.Help.Should_Skip_Hidden_Commands.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Help/Hidden_Commands.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Help.Help.Should_Output_Leaf_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Help/Leaf.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Help.Help.Should_Output_Leaf_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Help/Leaf.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Help.Help.Should_Not_Show_Truncated_Command_Table_If_Commands_Are_Missing_Description.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Help/NoDescription.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Help.Help.Should_Not_Show_Truncated_Command_Table_If_Commands_Are_Missing_Description.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Help/NoDescription.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Help.Help.Should_Output_Root_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Help/Root.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Help.Help.Should_Output_Root_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Help/Root.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Help.Help.Should_Output_Root_Examples_Defined_On_Direct_Children_If_Root_Have_No_Examples.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Help/RootExamples.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Help.Help.Should_Output_Root_Examples_Defined_On_Direct_Children_If_Root_Have_No_Examples.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Help/RootExamples.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Help.Help.Should_Output_Root_Examples_Defined_On_Root.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Help/RootExamples_Children.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Help.Help.Should_Output_Root_Examples_Defined_On_Root.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Help/RootExamples_Children.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Help.Help.Should_Output_Root_Examples_Defined_On_Leaves_If_No_Other_Examples_Are_Found.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Help/RootExamples_Leafs.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Help.Help.Should_Output_Root_Examples_Defined_On_Leaves_If_No_Other_Examples_Are_Found.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Help/RootExamples_Leafs.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.CannotAssignValueToFlag.Should_Return_Correct_Text_For_Long_Option.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/CannotAssignValueToFlag/Test_1.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.CannotAssignValueToFlag.Should_Return_Correct_Text_For_Long_Option.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/CannotAssignValueToFlag/Test_1.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.CannotAssignValueToFlag.Should_Return_Correct_Text_For_Short_Option.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/CannotAssignValueToFlag/Test_2.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.CannotAssignValueToFlag.Should_Return_Correct_Text_For_Short_Option.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/CannotAssignValueToFlag/Test_2.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.InvalidShortOptionName.Should_Return_Correct_Text.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/InvalidShortOptionName/Test_1.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.InvalidShortOptionName.Should_Return_Correct_Text.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/InvalidShortOptionName/Test_1.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.LongOptionNameContainSymbol.Should_Return_Correct_Text.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/LongOptionNameContainSymbol/Test_1.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.LongOptionNameContainSymbol.Should_Return_Correct_Text.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/LongOptionNameContainSymbol/Test_1.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.LongOptionNameIsMissing.Should_Return_Correct_Text.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/LongOptionNameIsMissing/Test_1.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.LongOptionNameIsMissing.Should_Return_Correct_Text.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/LongOptionNameIsMissing/Test_1.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.LongOptionNameIsOneCharacter.Should_Return_Correct_Text.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/LongOptionNameIsOneCharacter/Test_1.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.LongOptionNameIsOneCharacter.Should_Return_Correct_Text.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/LongOptionNameIsOneCharacter/Test_1.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.LongOptionNameStartWithDigit.Should_Return_Correct_Text.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/LongOptionNameStartWithDigit/Test_1.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.LongOptionNameStartWithDigit.Should_Return_Correct_Text.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/LongOptionNameStartWithDigit/Test_1.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.NoMatchingArgument.Should_Return_Correct_Text.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/NoMatchingArgument/Test_1.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.NoMatchingArgument.Should_Return_Correct_Text.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/NoMatchingArgument/Test_1.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.NoValueForOption.Should_Return_Correct_Text_For_Long_Option.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/NoValueForOption/Test_1.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.NoValueForOption.Should_Return_Correct_Text_For_Long_Option.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/NoValueForOption/Test_1.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.NoValueForOption.Should_Return_Correct_Text_For_Short_Option.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/NoValueForOption/Test_2.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.NoValueForOption.Should_Return_Correct_Text_For_Short_Option.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/NoValueForOption/Test_2.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.OptionWithoutName.Should_Return_Correct_Text_For_Short_Option.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/OptionWithoutName/Test_1.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.OptionWithoutName.Should_Return_Correct_Text_For_Short_Option.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/OptionWithoutName/Test_1.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.OptionWithoutName.Should_Return_Correct_Text_For_Missing_Long_Option_Value_With_Equality_Separator.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/OptionWithoutName/Test_2.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.OptionWithoutName.Should_Return_Correct_Text_For_Missing_Long_Option_Value_With_Equality_Separator.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/OptionWithoutName/Test_2.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.OptionWithoutName.Should_Return_Correct_Text_For_Missing_Long_Option_Value_With_Colon_Separator.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/OptionWithoutName/Test_3.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.OptionWithoutName.Should_Return_Correct_Text_For_Missing_Long_Option_Value_With_Colon_Separator.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/OptionWithoutName/Test_3.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.OptionWithoutName.Should_Return_Correct_Text_For_Missing_Short_Option_Value_With_Equality_Separator.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/OptionWithoutName/Test_4.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.OptionWithoutName.Should_Return_Correct_Text_For_Missing_Short_Option_Value_With_Equality_Separator.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/OptionWithoutName/Test_4.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.OptionWithoutName.Should_Return_Correct_Text_For_Missing_Short_Option_Value_With_Colon_Separator.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/OptionWithoutName/Test_5.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.OptionWithoutName.Should_Return_Correct_Text_For_Missing_Short_Option_Value_With_Colon_Separator.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/OptionWithoutName/Test_5.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.Parsing.Should_Parse_Quoted_Strings_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/Quoted_Strings.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.Parsing.Should_Parse_Quoted_Strings_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/Quoted_Strings.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.UnexpectedOption.Should_Return_Correct_Text_For_Long_Option.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/UnexpectedOption/Test_1.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.UnexpectedOption.Should_Return_Correct_Text_For_Long_Option.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/UnexpectedOption/Test_1.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.UnexpectedOption.Should_Return_Correct_Text_For_Short_Option.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/UnexpectedOption/Test_2.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.UnexpectedOption.Should_Return_Correct_Text_For_Short_Option.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/UnexpectedOption/Test_2.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.UnknownCommand.Should_Return_Correct_Text_When_Command_Is_Unknown.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/UnknownCommand/Test_1.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.UnknownCommand.Should_Return_Correct_Text_When_Command_Is_Unknown.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/UnknownCommand/Test_1.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.UnknownCommand.Should_Return_Correct_Text_For_Unknown_Command_When_Current_Command_Has_No_Arguments.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/UnknownCommand/Test_2.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.UnknownCommand.Should_Return_Correct_Text_For_Unknown_Command_When_Current_Command_Has_No_Arguments.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/UnknownCommand/Test_2.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.UnknownCommand.Should_Return_Correct_Text_With_Suggestion_When_Command_Followed_By_Argument_Is_Unknown_And_Distance_Is_Small.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/UnknownCommand/Test_3.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.UnknownCommand.Should_Return_Correct_Text_With_Suggestion_When_Command_Followed_By_Argument_Is_Unknown_And_Distance_Is_Small.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/UnknownCommand/Test_3.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.UnknownCommand.Should_Return_Correct_Text_With_Suggestion_When_Root_Command_Followed_By_Argument_Is_Unknown_And_Distance_Is_Small.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/UnknownCommand/Test_4.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.UnknownCommand.Should_Return_Correct_Text_With_Suggestion_When_Root_Command_Followed_By_Argument_Is_Unknown_And_Distance_Is_Small.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/UnknownCommand/Test_4.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.UnknownCommand.Should_Return_Correct_Text_With_Suggestion_And_No_Arguments_When_Root_Command_Is_Unknown_And_Distance_Is_Small.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/UnknownCommand/Test_5.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.UnknownCommand.Should_Return_Correct_Text_With_Suggestion_And_No_Arguments_When_Root_Command_Is_Unknown_And_Distance_Is_Small.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/UnknownCommand/Test_5.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.UnknownCommand.Should_Return_Correct_Text_With_Suggestion_And_No_Arguments_When_Command_Is_Unknown_And_Distance_Is_Small.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/UnknownCommand/Test_6.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.UnknownCommand.Should_Return_Correct_Text_With_Suggestion_And_No_Arguments_When_Command_Is_Unknown_And_Distance_Is_Small.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/UnknownCommand/Test_6.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.UnknownCommand.Should_Return_Correct_Text_With_Suggestion_When_Root_Command_After_Argument_Is_Unknown_And_Distance_Is_Small.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/UnknownCommand/Test_7.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.UnknownCommand.Should_Return_Correct_Text_With_Suggestion_When_Root_Command_After_Argument_Is_Unknown_And_Distance_Is_Small.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/UnknownCommand/Test_7.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.UnknownCommand.Should_Return_Correct_Text_With_Suggestion_When_Command_After_Argument_Is_Unknown_And_Distance_Is_Small.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/UnknownCommand/Test_8.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.UnknownCommand.Should_Return_Correct_Text_With_Suggestion_When_Command_After_Argument_Is_Unknown_And_Distance_Is_Small.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/UnknownCommand/Test_8.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.UnknownOption.Should_Return_Correct_Text_For_Long_Option_If_Strict_Mode_Is_Enabled.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/UnknownOption/Test_1.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.UnknownOption.Should_Return_Correct_Text_For_Long_Option_If_Strict_Mode_Is_Enabled.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/UnknownOption/Test_1.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.UnknownOption.Should_Return_Correct_Text_For_Short_Option_If_Strict_Mode_Is_Enabled.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/UnknownOption/Test_2.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.UnknownOption.Should_Return_Correct_Text_For_Short_Option_If_Strict_Mode_Is_Enabled.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/UnknownOption/Test_2.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.UnterminatedQuote.Should_Return_Correct_Text.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Parsing/UnterminatedQuote/Test_1.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Parsing.UnterminatedQuote.Should_Return_Correct_Text.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Parsing/UnterminatedQuote/Test_1.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Xml.Xml.Should_Dump_Correct_Model_For_Case_1.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Xml/Test_1.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Xml.Xml.Should_Dump_Correct_Model_For_Case_1.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Xml/Test_1.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Xml.Xml.Should_Dump_Correct_Model_For_Case_2.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Xml/Test_2.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Xml.Xml.Should_Dump_Correct_Model_For_Case_2.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Xml/Test_2.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Xml.Xml.Should_Dump_Correct_Model_For_Case_3.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Xml/Test_3.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Xml.Xml.Should_Dump_Correct_Model_For_Case_3.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Xml/Test_3.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Xml.Xml.Should_Dump_Correct_Model_For_Case_4.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Xml/Test_4.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Xml.Xml.Should_Dump_Correct_Model_For_Case_4.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Xml/Test_4.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Xml.Xml.Should_Dump_Correct_Model_For_Case_5.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Xml/Test_5.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Xml.Xml.Should_Dump_Correct_Model_For_Case_5.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Xml/Test_5.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CommandAppTests.Xml.Xml.Should_Dump_Correct_Model_For_Model_With_Default_Command.verified.txt b/src/Spectre.Console.Tests/Expectations/Cli/Xml/Test_6.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CommandAppTests.Xml.Xml.Should_Dump_Correct_Model_For_Model_With_Default_Command.verified.txt rename to src/Spectre.Console.Tests/Expectations/Cli/Xml/Test_6.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/ExceptionTests.Should_Write_Exceptions_With_Generic_Type_Parameters_In_Callsite_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Exception/CallSite.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/ExceptionTests.Should_Write_Exceptions_With_Generic_Type_Parameters_In_Callsite_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Exception/CallSite.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/ExceptionTests.Should_Write_Exception.verified.txt b/src/Spectre.Console.Tests/Expectations/Exception/Default.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/ExceptionTests.Should_Write_Exception.verified.txt rename to src/Spectre.Console.Tests/Expectations/Exception/Default.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/ExceptionTests.Should_Write_Exception_With_Inner_Exception.verified.txt b/src/Spectre.Console.Tests/Expectations/Exception/InnerException.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/ExceptionTests.Should_Write_Exception_With_Inner_Exception.verified.txt rename to src/Spectre.Console.Tests/Expectations/Exception/InnerException.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/ExceptionTests.Should_Write_Exception_With_Shortened_Methods.verified.txt b/src/Spectre.Console.Tests/Expectations/Exception/ShortenedMethods.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/ExceptionTests.Should_Write_Exception_With_Shortened_Methods.verified.txt rename to src/Spectre.Console.Tests/Expectations/Exception/ShortenedMethods.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/ExceptionTests.Should_Write_Exception_With_Shortened_Types.verified.txt b/src/Spectre.Console.Tests/Expectations/Exception/ShortenedTypes.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/ExceptionTests.Should_Write_Exception_With_Shortened_Types.verified.txt rename to src/Spectre.Console.Tests/Expectations/Exception/ShortenedTypes.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/GridTests.TheAddEmptyRowMethod.Should_Add_Empty_Row.verified.txt b/src/Spectre.Console.Tests/Expectations/GridTests.TheAddEmptyRowMethod.Should_Add_Empty_Row.verified.txt deleted file mode 100644 index cc402c2..0000000 --- a/src/Spectre.Console.Tests/Expectations/GridTests.TheAddEmptyRowMethod.Should_Add_Empty_Row.verified.txt +++ /dev/null @@ -1,3 +0,0 @@ -Foo Bar - -Qux Corgi diff --git a/src/Spectre.Console.Tests/Expectations/ProgressBarTests.Should_Render_Progress_Bar.verified.txt b/src/Spectre.Console.Tests/Expectations/ProgressBarTests.Should_Render_Progress_Bar.verified.txt deleted file mode 100644 index d9aadad..0000000 --- a/src/Spectre.Console.Tests/Expectations/ProgressBarTests.Should_Render_Progress_Bar.verified.txt +++ /dev/null @@ -1 +0,0 @@ -━━━━━━━━━━━━━━━━━━━━ \ No newline at end of file diff --git a/src/Spectre.Console.Tests/Expectations/SegmentTests.TheSplitLinesMethod.Should_Split_Segment.verified.txt b/src/Spectre.Console.Tests/Expectations/Segment.Split.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/SegmentTests.TheSplitLinesMethod.Should_Split_Segment.verified.txt rename to src/Spectre.Console.Tests/Expectations/Segment.Split.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/SegmentTests.TheSplitLinesMethod.Should_Split_Segments_With_Linebreak_In_Text.verified.txt b/src/Spectre.Console.Tests/Expectations/Segment.Split_Linebreak.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/SegmentTests.TheSplitLinesMethod.Should_Split_Segments_With_Linebreak_In_Text.verified.txt rename to src/Spectre.Console.Tests/Expectations/Segment.Split_Linebreak.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/SegmentTests.TheSplitMethod.Should_Split_Segment_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/SegmentTests.TheSplitMethod.Should_Split_Segment_Correctly.verified.txt deleted file mode 100644 index c166de8..0000000 --- a/src/Spectre.Console.Tests/Expectations/SegmentTests.TheSplitMethod.Should_Split_Segment_Correctly.verified.txt +++ /dev/null @@ -1,26 +0,0 @@ -{ - Item1: { - Text: Foo, - Style: { - Foreground: { - R: 255 - }, - Background: { - G: 128 - }, - Decoration: Bold - } - }, - Item2: { - Text: Bar, - Style: { - Foreground: { - R: 255 - }, - Background: { - G: 128 - }, - Decoration: Bold - } - } -} \ No newline at end of file diff --git a/src/Spectre.Console.Tests/Expectations/TableTests.Should_Render_Table_With_No_Border_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/TableTests.Should_Render_Table_With_No_Border_Correctly.verified.txt deleted file mode 100644 index 2ce9e29..0000000 --- a/src/Spectre.Console.Tests/Expectations/TableTests.Should_Render_Table_With_No_Border_Correctly.verified.txt +++ /dev/null @@ -1,3 +0,0 @@ -Foo Bar Baz -Qux Corgi Waldo -Grault Garply Fred diff --git a/src/Spectre.Console.Tests/Expectations/BarChartTests.Should_Render_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/BarChart/Render.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/BarChartTests.Should_Render_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/BarChart/Render.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CalendarTests.Should_Center_Calendar_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Calendar/Centered.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CalendarTests.Should_Center_Calendar_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Calendar/Centered.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CalendarTests.Should_Render_Calendar_Correctly_For_Specific_Culture.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Calendar/Culture.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CalendarTests.Should_Render_Calendar_Correctly_For_Specific_Culture.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Calendar/Culture.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CalendarTests.Should_Left_Align_Calendar_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Calendar/LeftAligned.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CalendarTests.Should_Left_Align_Calendar_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Calendar/LeftAligned.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CalendarTests.Should_Render_Calendar_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Calendar/Render.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CalendarTests.Should_Render_Calendar_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Calendar/Render.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/CalendarTests.Should_Right_Align_Calendar_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Calendar/RightAligned.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/CalendarTests.Should_Right_Align_Calendar_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Calendar/RightAligned.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/ColumnsTests.Should_Render_Columns_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Columns/Render.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/ColumnsTests.Should_Render_Columns_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Columns/Render.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/FigletTests.Should_Load_Font_From_Stream.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Figlet/Load_Stream.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/FigletTests.Should_Load_Font_From_Stream.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Figlet/Load_Stream.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/FigletTests.Should_Render_Text_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Figlet/Render.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/FigletTests.Should_Render_Text_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Figlet/Render.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/FigletTests.Should_Render_Centered_Text_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Figlet/Render_Centered.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/FigletTests.Should_Render_Centered_Text_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Figlet/Render_Centered.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/FigletTests.Should_Render_Left_Aligned_Text_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Figlet/Render_LeftAligned.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/FigletTests.Should_Render_Left_Aligned_Text_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Figlet/Render_LeftAligned.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/FigletTests.Should_Render_Right_Aligned_Text_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Figlet/Render_RightAligned.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/FigletTests.Should_Render_Right_Aligned_Text_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Figlet/Render_RightAligned.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/FigletTests.Should_Render_Wrapped_Text_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Figlet/Render_Wrapped.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/FigletTests.Should_Render_Wrapped_Text_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Figlet/Render_Wrapped.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/GridTests.TheAddEmptyRowMethod.Should_Add_Empty_Row_At_The_End.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Grid/AddEmptyRow/Render.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/GridTests.TheAddEmptyRowMethod.Should_Add_Empty_Row_At_The_End.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Grid/AddEmptyRow/Render.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/GridTests.Should_Render_Grid_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Grid/Render.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/GridTests.Should_Render_Grid_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Grid/Render.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/GridTests.Should_Render_Grid.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Grid/Render_2.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/GridTests.Should_Render_Grid.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Grid/Render_2.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/GridTests.Should_Render_Grid_Column_Alignment_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Grid/Render_Alignment.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/GridTests.Should_Render_Grid_Column_Alignment_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Grid/Render_Alignment.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/GridTests.Should_Render_Explicit_Grid_Column_Padding_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Grid/Render_ExplicitPadding.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/GridTests.Should_Render_Explicit_Grid_Column_Padding_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Grid/Render_ExplicitPadding.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/GridTests.Should_Use_Default_Padding.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Grid/Render_Padding.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/GridTests.Should_Use_Default_Padding.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Grid/Render_Padding.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PadderTests.Should_Render_Padded_Object_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Padder/Render.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PadderTests.Should_Render_Padded_Object_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Padder/Render.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PadderTests.Should_Render_Expanded_Padded_Object_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Padder/Render_Expanded.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PadderTests.Should_Render_Expanded_Padded_Object_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Padder/Render_Expanded.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PadderTests.Should_Render_Padded_Object_Correctly_When_Nested_Within_Other_Object.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Padder/Render_Nested.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PadderTests.Should_Render_Padded_Object_Correctly_When_Nested_Within_Other_Object.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Padder/Render_Nested.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PanelTests.Should_Render_Panel.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PanelTests.Should_Render_Panel.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PanelTests.Should_Wrap_Table_With_CJK_Tables_In_Panel_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_CJK.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PanelTests.Should_Wrap_Table_With_CJK_Tables_In_Panel_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_CJK.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PanelTests.Should_Center_Child_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_Child_Centered.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PanelTests.Should_Center_Child_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_Child_Centered.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PanelTests.Should_Render_Panel_Inside_Panel_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_Child_Panel.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PanelTests.Should_Render_Panel_Inside_Panel_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_Child_Panel.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PanelTests.Should_Justify_Child_To_Right_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_Child_RightAligned.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PanelTests.Should_Justify_Child_To_Right_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_Child_RightAligned.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PanelTests.Should_Expand_Panel_If_Enabled.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_Expand.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PanelTests.Should_Expand_Panel_If_Enabled.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_Expand.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PanelTests.Should_Render_Panel_With_Header.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_Header.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PanelTests.Should_Render_Panel_With_Header.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_Header.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PanelTests.Should_Render_Panel_With_Centered_Header.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_Header_Centered.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PanelTests.Should_Render_Panel_With_Centered_Header.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_Header_Centered.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PanelTests.Should_Collapse_Header_If_It_Will_Not_Fit.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_Header_Collapse.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PanelTests.Should_Collapse_Header_If_It_Will_Not_Fit.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_Header_Collapse.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PanelTests.Should_Render_Panel_With_Left_Aligned_Header.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_Header_LeftAligned.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PanelTests.Should_Render_Panel_With_Left_Aligned_Header.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_Header_LeftAligned.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PanelTests.Should_Render_Panel_With_Right_Aligned_Header.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_Header_RightAligned.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PanelTests.Should_Render_Panel_With_Right_Aligned_Header.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_Header_RightAligned.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PanelTests.Should_Preserve_Explicit_Line_Ending.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_LineEndings.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PanelTests.Should_Preserve_Explicit_Line_Ending.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_LineEndings.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PanelTests.Should_Render_Panel_With_Multiple_Lines.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_Multiline.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PanelTests.Should_Render_Panel_With_Multiple_Lines.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_Multiline.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PanelTests.Should_Render_Panel_With_Padding.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_Padding.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PanelTests.Should_Render_Panel_With_Padding.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_Padding.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PanelTests.Should_Render_Panel_With_Unicode_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_Unicode.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PanelTests.Should_Render_Panel_With_Unicode_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_Unicode.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PanelTests.Should_Wrap_Content_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_Wrap.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PanelTests.Should_Wrap_Content_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_Wrap.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PanelTests.Should_Render_Panel_With_Padding_Set_To_Zero.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_ZeroPadding.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PanelTests.Should_Render_Panel_With_Padding_Set_To_Zero.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Panel/Render_ZeroPadding.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/ProgressTests.Should_Reduce_Width_If_Needed.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Progress/Render_ReduceWidth.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/ProgressTests.Should_Reduce_Width_If_Needed.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Progress/Render_ReduceWidth.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PromptTests.Should_Accept_Choice_In_List.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Prompt/AcceptChoice.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PromptTests.Should_Accept_Choice_In_List.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Prompt/AcceptChoice.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PromptTests.Should_Auto_Complete_To_Best_Match.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Prompt/AutoComplete_BestMatch.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PromptTests.Should_Auto_Complete_To_Best_Match.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Prompt/AutoComplete_BestMatch.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PromptTests.Should_Auto_Complete_To_First_Choice_If_Pressing_Tab_On_Empty_String.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Prompt/AutoComplete_Empty.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PromptTests.Should_Auto_Complete_To_First_Choice_If_Pressing_Tab_On_Empty_String.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Prompt/AutoComplete_Empty.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PromptTests.Should_Auto_Complete_To_Next_Choice_When_Pressing_Tab_On_A_Match.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Prompt/AutoComplete_NextChoice.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PromptTests.Should_Auto_Complete_To_Next_Choice_When_Pressing_Tab_On_A_Match.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Prompt/AutoComplete_NextChoice.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PromptTests.Should_Return_Validation_Error_If_Value_Cannot_Be_Converted.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Prompt/ConversionError.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PromptTests.Should_Return_Validation_Error_If_Value_Cannot_Be_Converted.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Prompt/ConversionError.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PromptTests.Should_Use_Custom_Converter.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Prompt/CustomConverter.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PromptTests.Should_Use_Custom_Converter.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Prompt/CustomConverter.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PromptTests.Should_Return_Error_If_Custom_Validation_Fails.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Prompt/CustomValidation.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PromptTests.Should_Return_Error_If_Custom_Validation_Fails.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Prompt/CustomValidation.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PromptTests.Should_Chose_Default_Value_If_Nothing_Is_Entered.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Prompt/DefaultValue.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PromptTests.Should_Chose_Default_Value_If_Nothing_Is_Entered.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Prompt/DefaultValue.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/PromptTests.Should_Return_Error_If_An_Invalid_Choice_Is_Made.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Prompt/InvalidChoice.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/PromptTests.Should_Return_Error_If_An_Invalid_Choice_Is_Made.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Prompt/InvalidChoice.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/RecorderTests.Should_Export_Html_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Recorder/Html.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/RecorderTests.Should_Export_Html_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Recorder/Html.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/RecorderTests.Should_Export_Text_As_Expected.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Recorder/Text.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/RecorderTests.Should_Export_Text_As_Expected.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Recorder/Text.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/RowsTests.Should_Render_Rows.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Rows/Render.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/RowsTests.Should_Render_Rows.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Rows/Render.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/RowsTests.Should_Render_Rows_Correctly_Inside_Other_Widget_When_Expanded.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Rows/Render_Expanded_And_Nested.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/RowsTests.Should_Render_Rows_Correctly_Inside_Other_Widget_When_Expanded.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Rows/Render_Expanded_And_Nested.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/RowsTests.Should_Render_Rows_Correctly_Inside_Other_Widget.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Rows/Render_Nested.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/RowsTests.Should_Render_Rows_Correctly_Inside_Other_Widget.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Rows/Render_Nested.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/RuleTests.Should_Render_Default_Rule_Without_Title.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Rule/Render.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/RuleTests.Should_Render_Default_Rule_Without_Title.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Rule/Render.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/RuleTests.Should_Render_With_Specified_Box.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Rule/Render_Border_Header.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/RuleTests.Should_Render_With_Specified_Box.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Rule/Render_Border_Header.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/RuleTests.Should_Render_Default_Rule_With_Specified_Box.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Rule/Render_Border_NoHeader.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/RuleTests.Should_Render_Default_Rule_With_Specified_Box.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Rule/Render_Border_NoHeader.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/RuleTests.Should_Render_Default_Rule_With_Title_Centered_By_Default.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Rule/Render_Header_DefaultAlignment.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/RuleTests.Should_Render_Default_Rule_With_Title_Centered_By_Default.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Rule/Render_Header_DefaultAlignment.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/RuleTests.Should_Render_Default_Rule_With_Title_Left_Aligned.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Rule/Render_Header_LeftAligned.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/RuleTests.Should_Render_Default_Rule_With_Title_Left_Aligned.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Rule/Render_Header_LeftAligned.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/RuleTests.Should_Render_Default_Rule_With_Title_Right_Aligned.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Rule/Render_Header_RightAligned.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/RuleTests.Should_Render_Default_Rule_With_Title_Right_Aligned.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Rule/Render_Header_RightAligned.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/RuleTests.Should_Convert_Line_Breaks_In_Title_To_Spaces.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Rule/Render_Linebreaks.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/RuleTests.Should_Convert_Line_Breaks_In_Title_To_Spaces.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Rule/Render_Linebreaks.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/RuleTests.Should_Truncate_Title.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Rule/Render_Truncate.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/RuleTests.Should_Truncate_Title.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Rule/Render_Truncate.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableTests.TheAddEmptyRowMethod.Should_Render_Table_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Table/AddEmptyRow.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableTests.TheAddEmptyRowMethod.Should_Render_Table_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Table/AddEmptyRow.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableTests.Should_Left_Align_Table_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Table/Render.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableTests.Should_Left_Align_Table_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Table/Render.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableTests.Should_Render_Table_With_Cell_Padding_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_CellPadding.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableTests.Should_Render_Table_With_Cell_Padding_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_CellPadding.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableTests.Should_Center_Table_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_Centered.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableTests.Should_Center_Table_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_Centered.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableTests.Should_Render_Table_With_Column_Justification_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_ColumnJustification.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableTests.Should_Render_Table_With_Column_Justification_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_ColumnJustification.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableTests.Should_Expand_Table_To_Available_Space_If_Specified.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_Expand.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableTests.Should_Expand_Table_To_Available_Space_If_Specified.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_Expand.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableTests.Should_Render_Table_With_Footers_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_Footers.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableTests.Should_Render_Table_With_Footers_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_Footers.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableTests.Should_Not_Draw_Tables_That_Are_Impossible_To_Draw.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_Impossible.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableTests.Should_Not_Draw_Tables_That_Are_Impossible_To_Draw.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_Impossible.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableTests.Should_Render_Table_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_LeftAligned.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableTests.Should_Render_Table_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_LeftAligned.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableTests.Should_Render_Table_With_Multiple_Rows_In_Cell_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_Multiline.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableTests.Should_Render_Table_With_Multiple_Rows_In_Cell_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_Multiline.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableTests.Should_Render_Table_Nested_In_Panels_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_Nested.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableTests.Should_Render_Table_Nested_In_Panels_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_Nested.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableTests.Should_Render_Table_Without_Rows.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_NoRows.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableTests.Should_Render_Table_Without_Rows.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_NoRows.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableTests.Should_Right_Align_Table_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_RightAligned.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableTests.Should_Right_Align_Table_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_RightAligned.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableTests.Should_Left_Align_Table_With_Title_And_Caption_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_Title_Caption.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableTests.Should_Left_Align_Table_With_Title_And_Caption_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_Title_Caption.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableTests.Should_Center_Table_With_Title_And_Caption_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_Title_Caption_Centered.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableTests.Should_Center_Table_With_Title_And_Caption_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_Title_Caption_Centered.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableTests.Should_Render_Table_With_Title_And_Caption_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_Title_Caption_LeftAligned.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableTests.Should_Render_Table_With_Title_And_Caption_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_Title_Caption_LeftAligned.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TableTests.Should_Right_Align_Table_With_Title_And_Caption_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_Title_Caption_RightAligned.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TableTests.Should_Right_Align_Table_With_Title_And_Caption_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Table/Render_Title_Caption_RightAligned.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TreeTests.Should_Render_Tree_With_Multiple_Roots_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Tree/MultipleRoots.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TreeTests.Should_Render_Tree_With_Multiple_Roots_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Tree/MultipleRoots.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TreeTests.Should_Render_Tree_With_Only_Root_Node_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Tree/OnlyRoot.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TreeTests.Should_Render_Tree_With_Only_Root_Node_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Tree/OnlyRoot.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Expectations/TreeTests.Should_Render_Tree_With_Single_Root_Correctly.verified.txt b/src/Spectre.Console.Tests/Expectations/Widgets/Tree/SingleRoot.Output.verified.txt similarity index 100% rename from src/Spectre.Console.Tests/Expectations/TreeTests.Should_Render_Tree_With_Single_Root_Correctly.verified.txt rename to src/Spectre.Console.Tests/Expectations/Widgets/Tree/SingleRoot.Output.verified.txt diff --git a/src/Spectre.Console.Tests/Spectre.Console.Tests.csproj b/src/Spectre.Console.Tests/Spectre.Console.Tests.csproj index f0477fa..a687627 100644 --- a/src/Spectre.Console.Tests/Spectre.Console.Tests.csproj +++ b/src/Spectre.Console.Tests/Spectre.Console.Tests.csproj @@ -19,7 +19,8 @@ - + + all diff --git a/src/Spectre.Console.Tests/Unit/BarChartTests.cs b/src/Spectre.Console.Tests/Unit/BarChartTests.cs index 50b46c9..4455998 100644 --- a/src/Spectre.Console.Tests/Unit/BarChartTests.cs +++ b/src/Spectre.Console.Tests/Unit/BarChartTests.cs @@ -1,14 +1,17 @@ using System.Threading.Tasks; using Spectre.Console.Testing; +using Spectre.Verify.Extensions; using VerifyXunit; using Xunit; namespace Spectre.Console.Tests.Unit { [UsesVerify] + [ExpectationPath("Widgets/BarChart")] public sealed class BarChartTests { [Fact] + [Expectation("Render")] public async Task Should_Render_Correctly() { // Given diff --git a/src/Spectre.Console.Tests/Unit/BoxBorderTests.cs b/src/Spectre.Console.Tests/Unit/BoxBorderTests.cs index ebd86a6..efb0ff4 100644 --- a/src/Spectre.Console.Tests/Unit/BoxBorderTests.cs +++ b/src/Spectre.Console.Tests/Unit/BoxBorderTests.cs @@ -2,12 +2,14 @@ using System.Threading.Tasks; using Shouldly; using Spectre.Console.Rendering; using Spectre.Console.Testing; +using Spectre.Verify.Extensions; using VerifyXunit; using Xunit; namespace Spectre.Console.Tests.Unit { [UsesVerify] + [ExpectationPath("Borders/Box")] public sealed class BoxBorderTests { [UsesVerify] @@ -27,6 +29,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("NoBorder")] public Task Should_Render_As_Expected() { // Given @@ -58,6 +61,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("AsciiBorder")] public Task Should_Render_As_Expected() { // Given @@ -89,6 +93,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("DoubleBorder")] public Task Should_Render_As_Expected() { // Given @@ -120,6 +125,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("HeavyBorder")] public Task Should_Render_As_Expected() { // Given @@ -148,6 +154,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("RoundedBorder")] public Task Should_Render_As_Expected() { // Given @@ -176,6 +183,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("SquareBorder")] public Task Should_Render_As_Expected() { // Given diff --git a/src/Spectre.Console.Tests/Unit/CalendarTests.cs b/src/Spectre.Console.Tests/Unit/CalendarTests.cs index 9dd7dac..453fbbd 100644 --- a/src/Spectre.Console.Tests/Unit/CalendarTests.cs +++ b/src/Spectre.Console.Tests/Unit/CalendarTests.cs @@ -1,15 +1,18 @@ using System; using System.Threading.Tasks; using Spectre.Console.Testing; +using Spectre.Verify.Extensions; using VerifyXunit; using Xunit; namespace Spectre.Console.Tests.Unit { [UsesVerify] + [ExpectationPath("Widgets/Calendar")] public sealed class CalendarTests { [Fact] + [Expectation("Render")] public Task Should_Render_Calendar_Correctly() { // Given @@ -27,6 +30,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Centered")] public Task Should_Center_Calendar_Correctly() { // Given @@ -45,6 +49,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("LeftAligned")] public Task Should_Left_Align_Calendar_Correctly() { // Given @@ -63,6 +68,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("RightAligned")] public Task Should_Right_Align_Calendar_Correctly() { // Given @@ -81,6 +87,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Culture")] public Task Should_Render_Calendar_Correctly_For_Specific_Culture() { // Given diff --git a/src/Spectre.Console.Tests/Unit/Cli/Annotations/CommandArgumentAttributeTests.Rendering.cs b/src/Spectre.Console.Tests/Unit/Cli/Annotations/CommandArgumentAttributeTests.Rendering.cs index 73b4232..7015565 100644 --- a/src/Spectre.Console.Tests/Unit/Cli/Annotations/CommandArgumentAttributeTests.Rendering.cs +++ b/src/Spectre.Console.Tests/Unit/Cli/Annotations/CommandArgumentAttributeTests.Rendering.cs @@ -2,15 +2,17 @@ using System.Threading.Tasks; using Spectre.Console.Cli; using Spectre.Console.Testing; using Spectre.Console.Tests.Data; +using Spectre.Verify.Extensions; using VerifyXunit; using Xunit; namespace Spectre.Console.Tests.Unit.Cli.Annotations { + [ExpectationPath("Cli/Arguments")] public sealed partial class CommandArgumentAttributeTests { [UsesVerify] - public sealed class TheArgumentCannotContainOptionsMethod + public sealed class ArgumentCannotContainOptions { public sealed class Settings : CommandSettings { @@ -19,6 +21,7 @@ namespace Spectre.Console.Tests.Unit.Cli.Annotations } [Fact] + [Expectation("ArgumentCannotContainOptions")] public Task Should_Return_Correct_Text() { // Given, When @@ -30,7 +33,7 @@ namespace Spectre.Console.Tests.Unit.Cli.Annotations } [UsesVerify] - public sealed class TheMultipleValuesAreNotSupportedMethod + public sealed class MultipleValuesAreNotSupported { public sealed class Settings : CommandSettings { @@ -39,6 +42,7 @@ namespace Spectre.Console.Tests.Unit.Cli.Annotations } [Fact] + [Expectation("MultipleValuesAreNotSupported")] public Task Should_Return_Correct_Text() { // Given, When @@ -50,7 +54,7 @@ namespace Spectre.Console.Tests.Unit.Cli.Annotations } [UsesVerify] - public sealed class TheValuesMustHaveNameMethod + public sealed class ValuesMustHaveName { public sealed class Settings : CommandSettings { @@ -59,6 +63,7 @@ namespace Spectre.Console.Tests.Unit.Cli.Annotations } [Fact] + [Expectation("ValuesMustHaveName")] public Task Should_Return_Correct_Text() { // Given, When diff --git a/src/Spectre.Console.Tests/Unit/Cli/Annotations/CommandOptionAttributeTests.Rendering.cs b/src/Spectre.Console.Tests/Unit/Cli/Annotations/CommandOptionAttributeTests.Rendering.cs index 4185369..9176343 100644 --- a/src/Spectre.Console.Tests/Unit/Cli/Annotations/CommandOptionAttributeTests.Rendering.cs +++ b/src/Spectre.Console.Tests/Unit/Cli/Annotations/CommandOptionAttributeTests.Rendering.cs @@ -3,15 +3,17 @@ using Shouldly; using Spectre.Console.Cli; using Spectre.Console.Testing; using Spectre.Console.Tests.Data; +using Spectre.Verify.Extensions; using VerifyXunit; using Xunit; namespace Spectre.Console.Tests.Unit.Cli.Annotations { + [ExpectationPath("Cli/Arguments")] public sealed partial class CommandOptionAttributeTests { [UsesVerify] - public sealed class TheUnexpectedCharacterMethod + public sealed class UnexpectedCharacter { public sealed class Settings : CommandSettings { @@ -20,6 +22,7 @@ namespace Spectre.Console.Tests.Unit.Cli.Annotations } [Fact] + [Expectation("UnexpectedCharacter")] public Task Should_Return_Correct_Text() { // Given, When @@ -32,7 +35,7 @@ namespace Spectre.Console.Tests.Unit.Cli.Annotations } [UsesVerify] - public sealed class TheUnterminatedValueNameMethod + public sealed class UnterminatedValueName { public sealed class Settings : CommandSettings { @@ -41,6 +44,7 @@ namespace Spectre.Console.Tests.Unit.Cli.Annotations } [Fact] + [Expectation("UnterminatedValueName")] public Task Should_Return_Correct_Text() { // Given, When @@ -53,7 +57,7 @@ namespace Spectre.Console.Tests.Unit.Cli.Annotations } [UsesVerify] - public sealed class TheOptionsMustHaveNameMethod + public sealed class OptionsMustHaveName { public sealed class Settings : CommandSettings { @@ -62,6 +66,7 @@ namespace Spectre.Console.Tests.Unit.Cli.Annotations } [Fact] + [Expectation("OptionsMustHaveName")] public Task Should_Return_Correct_Text() { // Given, When @@ -74,7 +79,7 @@ namespace Spectre.Console.Tests.Unit.Cli.Annotations } [UsesVerify] - public sealed class TheOptionNamesCannotStartWithDigitMethod + public sealed class OptionNamesCannotStartWithDigit { public sealed class Settings : CommandSettings { @@ -83,6 +88,7 @@ namespace Spectre.Console.Tests.Unit.Cli.Annotations } [Fact] + [Expectation("OptionNamesCannotStartWithDigit")] public Task Should_Return_Correct_Text() { // Given, When @@ -95,7 +101,7 @@ namespace Spectre.Console.Tests.Unit.Cli.Annotations } [UsesVerify] - public sealed class TheInvalidCharacterInOptionNameMethod + public sealed class InvalidCharacterInOptionName { public sealed class Settings : CommandSettings { @@ -104,6 +110,7 @@ namespace Spectre.Console.Tests.Unit.Cli.Annotations } [Fact] + [Expectation("InvalidCharacterInOptionName")] public Task Should_Return_Correct_Text() { // Given, When @@ -116,7 +123,7 @@ namespace Spectre.Console.Tests.Unit.Cli.Annotations } [UsesVerify] - public sealed class TheLongOptionMustHaveMoreThanOneCharacterMethod + public sealed class LongOptionMustHaveMoreThanOneCharacter { public sealed class Settings : CommandSettings { @@ -125,6 +132,7 @@ namespace Spectre.Console.Tests.Unit.Cli.Annotations } [Fact] + [Expectation("LongOptionMustHaveMoreThanOneCharacter")] public Task Should_Return_Correct_Text() { // Given, When @@ -137,7 +145,7 @@ namespace Spectre.Console.Tests.Unit.Cli.Annotations } [UsesVerify] - public sealed class TheShortOptionMustOnlyBeOneCharacterMethod + public sealed class ShortOptionMustOnlyBeOneCharacter { public sealed class Settings : CommandSettings { @@ -146,6 +154,7 @@ namespace Spectre.Console.Tests.Unit.Cli.Annotations } [Fact] + [Expectation("ShortOptionMustOnlyBeOneCharacter")] public Task Should_Return_Correct_Text() { // Given, When @@ -158,7 +167,7 @@ namespace Spectre.Console.Tests.Unit.Cli.Annotations } [UsesVerify] - public sealed class TheMultipleOptionValuesAreNotSupportedMethod + public sealed class MultipleOptionValuesAreNotSupported { public sealed class Settings : CommandSettings { @@ -167,6 +176,7 @@ namespace Spectre.Console.Tests.Unit.Cli.Annotations } [Fact] + [Expectation("MultipleOptionValuesAreNotSupported")] public Task Should_Return_Correct_Text() { // Given, When @@ -179,7 +189,7 @@ namespace Spectre.Console.Tests.Unit.Cli.Annotations } [UsesVerify] - public sealed class TheInvalidCharacterInValueNameMethod + public sealed class InvalidCharacterInValueName { public sealed class Settings : CommandSettings { @@ -188,6 +198,7 @@ namespace Spectre.Console.Tests.Unit.Cli.Annotations } [Fact] + [Expectation("InvalidCharacterInValueName")] public Task Should_Return_Correct_Text() { // Given, When @@ -200,7 +211,7 @@ namespace Spectre.Console.Tests.Unit.Cli.Annotations } [UsesVerify] - public sealed class TheMissingLongAndShortNameMethod + public sealed class MissingLongAndShortName { public sealed class Settings : CommandSettings { @@ -209,6 +220,7 @@ namespace Spectre.Console.Tests.Unit.Cli.Annotations } [Fact] + [Expectation("MissingLongAndShortName")] public Task Should_Return_Correct_Text() { // Given, When diff --git a/src/Spectre.Console.Tests/Unit/Cli/CommandAppTests.Help.cs b/src/Spectre.Console.Tests/Unit/Cli/CommandAppTests.Help.cs index 351ffde..8e60b2e 100644 --- a/src/Spectre.Console.Tests/Unit/Cli/CommandAppTests.Help.cs +++ b/src/Spectre.Console.Tests/Unit/Cli/CommandAppTests.Help.cs @@ -2,6 +2,7 @@ using System.Threading.Tasks; using Spectre.Console.Cli; using Spectre.Console.Testing; using Spectre.Console.Tests.Data; +using Spectre.Verify.Extensions; using VerifyXunit; using Xunit; @@ -10,9 +11,11 @@ namespace Spectre.Console.Tests.Unit.Cli public sealed partial class CommandAppTests { [UsesVerify] + [ExpectationPath("Cli/Help")] public class Help { [Fact] + [Expectation("Root")] public Task Should_Output_Root_Correctly() { // Given @@ -33,6 +36,7 @@ namespace Spectre.Console.Tests.Unit.Cli } [Fact] + [Expectation("Hidden_Commands")] public Task Should_Skip_Hidden_Commands() { // Given @@ -53,6 +57,7 @@ namespace Spectre.Console.Tests.Unit.Cli } [Fact] + [Expectation("Command")] public Task Should_Output_Command_Correctly() { // Given @@ -75,6 +80,7 @@ namespace Spectre.Console.Tests.Unit.Cli } [Fact] + [Expectation("Leaf")] public Task Should_Output_Leaf_Correctly() { // Given @@ -97,6 +103,7 @@ namespace Spectre.Console.Tests.Unit.Cli } [Fact] + [Expectation("Default")] public Task Should_Output_Default_Command_Correctly() { // Given @@ -115,6 +122,7 @@ namespace Spectre.Console.Tests.Unit.Cli } [Fact] + [Expectation("RootExamples")] public Task Should_Output_Root_Examples_Defined_On_Root() { // Given @@ -136,6 +144,7 @@ namespace Spectre.Console.Tests.Unit.Cli } [Fact] + [Expectation("RootExamples_Children")] public Task Should_Output_Root_Examples_Defined_On_Direct_Children_If_Root_Have_No_Examples() { // Given @@ -157,6 +166,7 @@ namespace Spectre.Console.Tests.Unit.Cli } [Fact] + [Expectation("RootExamples_Leafs")] public Task Should_Output_Root_Examples_Defined_On_Leaves_If_No_Other_Examples_Are_Found() { // Given @@ -182,6 +192,7 @@ namespace Spectre.Console.Tests.Unit.Cli } [Fact] + [Expectation("CommandExamples")] public Task Should_Only_Output_Command_Examples_Defined_On_Command() { // Given @@ -209,6 +220,7 @@ namespace Spectre.Console.Tests.Unit.Cli } [Fact] + [Expectation("DefaultExamples")] public Task Should_Output_Root_Examples_If_Default_Command_Is_Specified() { // Given @@ -228,6 +240,7 @@ namespace Spectre.Console.Tests.Unit.Cli } [Fact] + [Expectation("NoDescription")] public Task Should_Not_Show_Truncated_Command_Table_If_Commands_Are_Missing_Description() { // Given @@ -246,6 +259,7 @@ namespace Spectre.Console.Tests.Unit.Cli } [Fact] + [Expectation("ArgumentOrder")] public Task Should_List_Arguments_In_Correct_Order() { // Given diff --git a/src/Spectre.Console.Tests/Unit/Cli/CommandAppTests.Parsing.cs b/src/Spectre.Console.Tests/Unit/Cli/CommandAppTests.Parsing.cs index 3247f8e..1f3ecc2 100644 --- a/src/Spectre.Console.Tests/Unit/Cli/CommandAppTests.Parsing.cs +++ b/src/Spectre.Console.Tests/Unit/Cli/CommandAppTests.Parsing.cs @@ -4,6 +4,7 @@ using Shouldly; using Spectre.Console.Cli; using Spectre.Console.Testing; using Spectre.Console.Tests.Data; +using Spectre.Verify.Extensions; using VerifyXunit; using Xunit; @@ -12,12 +13,15 @@ namespace Spectre.Console.Tests.Unit.Cli public sealed partial class CommandAppTests { [UsesVerify] + [ExpectationPath("Cli/Parsing")] public sealed class Parsing { [UsesVerify] + [ExpectationPath("UnknownCommand")] public sealed class UnknownCommand { [Fact] + [Expectation("Test_1")] public Task Should_Return_Correct_Text_When_Command_Is_Unknown() { // Given @@ -35,23 +39,25 @@ namespace Spectre.Console.Tests.Unit.Cli } [Fact] - public Task Should_Return_Correct_Text_With_Suggestion_When_Root_Command_Followed_By_Argument_Is_Unknown_And_Distance_Is_Small() + [Expectation("Test_2")] + public Task Should_Return_Correct_Text_For_Unknown_Command_When_Current_Command_Has_No_Arguments() { // Given var fixture = new Fixture(); - fixture.Configure(config => + fixture.Configure(configurator => { - config.AddCommand("cat"); + configurator.AddCommand("empty"); }); // When - var result = fixture.Run("bat", "14"); + var result = fixture.Run("empty", "other"); // Then return Verifier.Verify(result); } [Fact] + [Expectation("Test_3")] public Task Should_Return_Correct_Text_With_Suggestion_When_Command_Followed_By_Argument_Is_Unknown_And_Distance_Is_Small() { // Given @@ -72,6 +78,25 @@ namespace Spectre.Console.Tests.Unit.Cli } [Fact] + [Expectation("Test_4")] + public Task Should_Return_Correct_Text_With_Suggestion_When_Root_Command_Followed_By_Argument_Is_Unknown_And_Distance_Is_Small() + { + // Given + var fixture = new Fixture(); + fixture.Configure(config => + { + config.AddCommand("cat"); + }); + + // When + var result = fixture.Run("bat", "14"); + + // Then + return Verifier.Verify(result); + } + + [Fact] + [Expectation("Test_5")] public Task Should_Return_Correct_Text_With_Suggestion_And_No_Arguments_When_Root_Command_Is_Unknown_And_Distance_Is_Small() { // Given @@ -90,6 +115,7 @@ namespace Spectre.Console.Tests.Unit.Cli } [Fact] + [Expectation("Test_6")] public Task Should_Return_Correct_Text_With_Suggestion_And_No_Arguments_When_Command_Is_Unknown_And_Distance_Is_Small() { // Given @@ -111,6 +137,7 @@ namespace Spectre.Console.Tests.Unit.Cli } [Fact] + [Expectation("Test_7")] public Task Should_Return_Correct_Text_With_Suggestion_When_Root_Command_After_Argument_Is_Unknown_And_Distance_Is_Small() { // Given @@ -129,6 +156,7 @@ namespace Spectre.Console.Tests.Unit.Cli } [Fact] + [Expectation("Test_8")] public Task Should_Return_Correct_Text_With_Suggestion_When_Command_After_Argument_Is_Unknown_And_Distance_Is_Small() { // Given @@ -147,29 +175,14 @@ namespace Spectre.Console.Tests.Unit.Cli // Then return Verifier.Verify(result); } - - [Fact] - public Task Should_Return_Correct_Text_For_Unknown_Command_When_Current_Command_Has_No_Arguments() - { - // Given - var fixture = new Fixture(); - fixture.Configure(configurator => - { - configurator.AddCommand("empty"); - }); - - // When - var result = fixture.Run("empty", "other"); - - // Then - return Verifier.Verify(result); - } } [UsesVerify] + [ExpectationPath("CannotAssignValueToFlag")] public sealed class CannotAssignValueToFlag { [Fact] + [Expectation("Test_1")] public Task Should_Return_Correct_Text_For_Long_Option() { // Given @@ -187,6 +200,7 @@ namespace Spectre.Console.Tests.Unit.Cli } [Fact] + [Expectation("Test_2")] public Task Should_Return_Correct_Text_For_Short_Option() { // Given @@ -205,9 +219,11 @@ namespace Spectre.Console.Tests.Unit.Cli } [UsesVerify] + [ExpectationPath("NoValueForOption")] public sealed class NoValueForOption { [Fact] + [Expectation("Test_1")] public Task Should_Return_Correct_Text_For_Long_Option() { // Given @@ -225,6 +241,7 @@ namespace Spectre.Console.Tests.Unit.Cli } [Fact] + [Expectation("Test_2")] public Task Should_Return_Correct_Text_For_Short_Option() { // Given @@ -243,9 +260,11 @@ namespace Spectre.Console.Tests.Unit.Cli } [UsesVerify] + [ExpectationPath("NoMatchingArgument")] public sealed class NoMatchingArgument { [Fact] + [Expectation("Test_1")] public Task Should_Return_Correct_Text() { // Given @@ -264,9 +283,11 @@ namespace Spectre.Console.Tests.Unit.Cli } [UsesVerify] + [ExpectationPath("UnexpectedOption")] public sealed class UnexpectedOption { [Fact] + [Expectation("Test_1")] public Task Should_Return_Correct_Text_For_Long_Option() { // Given @@ -284,6 +305,7 @@ namespace Spectre.Console.Tests.Unit.Cli } [Fact] + [Expectation("Test_2")] public Task Should_Return_Correct_Text_For_Short_Option() { // Given @@ -302,9 +324,11 @@ namespace Spectre.Console.Tests.Unit.Cli } [UsesVerify] + [ExpectationPath("UnknownOption")] public sealed class UnknownOption { [Fact] + [Expectation("Test_1")] public Task Should_Return_Correct_Text_For_Long_Option_If_Strict_Mode_Is_Enabled() { // Given @@ -323,6 +347,7 @@ namespace Spectre.Console.Tests.Unit.Cli } [Fact] + [Expectation("Test_2")] public Task Should_Return_Correct_Text_For_Short_Option_If_Strict_Mode_Is_Enabled() { // Given @@ -342,9 +367,11 @@ namespace Spectre.Console.Tests.Unit.Cli } [UsesVerify] + [ExpectationPath("UnterminatedQuote")] public sealed class UnterminatedQuote { [Fact] + [Expectation("Test_1")] public Task Should_Return_Correct_Text() { // Given @@ -363,9 +390,11 @@ namespace Spectre.Console.Tests.Unit.Cli } [UsesVerify] + [ExpectationPath("OptionWithoutName")] public sealed class OptionWithoutName { [Fact] + [Expectation("Test_1")] public Task Should_Return_Correct_Text_For_Short_Option() { // Given @@ -383,6 +412,7 @@ namespace Spectre.Console.Tests.Unit.Cli } [Fact] + [Expectation("Test_2")] public Task Should_Return_Correct_Text_For_Missing_Long_Option_Value_With_Equality_Separator() { // Given @@ -400,6 +430,7 @@ namespace Spectre.Console.Tests.Unit.Cli } [Fact] + [Expectation("Test_3")] public Task Should_Return_Correct_Text_For_Missing_Long_Option_Value_With_Colon_Separator() { // Given @@ -417,6 +448,7 @@ namespace Spectre.Console.Tests.Unit.Cli } [Fact] + [Expectation("Test_4")] public Task Should_Return_Correct_Text_For_Missing_Short_Option_Value_With_Equality_Separator() { // Given @@ -434,6 +466,7 @@ namespace Spectre.Console.Tests.Unit.Cli } [Fact] + [Expectation("Test_5")] public Task Should_Return_Correct_Text_For_Missing_Short_Option_Value_With_Colon_Separator() { // Given @@ -452,9 +485,11 @@ namespace Spectre.Console.Tests.Unit.Cli } [UsesVerify] + [ExpectationPath("InvalidShortOptionName")] public sealed class InvalidShortOptionName { [Fact] + [Expectation("Test_1")] public Task Should_Return_Correct_Text() { // Given @@ -473,9 +508,11 @@ namespace Spectre.Console.Tests.Unit.Cli } [UsesVerify] + [ExpectationPath("LongOptionNameIsOneCharacter")] public sealed class LongOptionNameIsOneCharacter { [Fact] + [Expectation("Test_1")] public Task Should_Return_Correct_Text() { // Given @@ -494,9 +531,11 @@ namespace Spectre.Console.Tests.Unit.Cli } [UsesVerify] + [ExpectationPath("LongOptionNameIsMissing")] public sealed class LongOptionNameIsMissing { [Fact] + [Expectation("Test_1")] public Task Should_Return_Correct_Text() { // Given @@ -515,9 +554,11 @@ namespace Spectre.Console.Tests.Unit.Cli } [UsesVerify] + [ExpectationPath("LongOptionNameStartWithDigit")] public sealed class LongOptionNameStartWithDigit { [Fact] + [Expectation("Test_1")] public Task Should_Return_Correct_Text() { // Given @@ -536,9 +577,11 @@ namespace Spectre.Console.Tests.Unit.Cli } [UsesVerify] + [ExpectationPath("LongOptionNameContainSymbol")] public sealed class LongOptionNameContainSymbol { [Fact] + [Expectation("Test_1")] public Task Should_Return_Correct_Text() { // Given @@ -578,6 +621,7 @@ namespace Spectre.Console.Tests.Unit.Cli } [Fact] + [Expectation("Quoted_Strings")] public Task Should_Parse_Quoted_Strings_Correctly() { // Given diff --git a/src/Spectre.Console.Tests/Unit/Cli/CommandAppTests.Xml.cs b/src/Spectre.Console.Tests/Unit/Cli/CommandAppTests.Xml.cs index 321f172..2564ab2 100644 --- a/src/Spectre.Console.Tests/Unit/Cli/CommandAppTests.Xml.cs +++ b/src/Spectre.Console.Tests/Unit/Cli/CommandAppTests.Xml.cs @@ -4,18 +4,21 @@ using Spectre.Console.Tests.Data; using VerifyXunit; using Xunit; using Spectre.Console.Cli; +using Spectre.Verify.Extensions; namespace Spectre.Console.Tests.Unit.Cli { public sealed partial class CommandAppTests { [UsesVerify] + [ExpectationPath("Cli/Xml")] public sealed class Xml { /// /// https://github.com/spectresystems/spectre.cli/wiki/Test-cases#test-case-1 /// [Fact] + [Expectation("Test_1")] public Task Should_Dump_Correct_Model_For_Case_1() { // Given @@ -44,6 +47,7 @@ namespace Spectre.Console.Tests.Unit.Cli /// https://github.com/spectresystems/spectre.cli/wiki/Test-cases#test-case-2 /// [Fact] + [Expectation("Test_2")] public Task Should_Dump_Correct_Model_For_Case_2() { // Given @@ -64,6 +68,7 @@ namespace Spectre.Console.Tests.Unit.Cli /// https://github.com/spectresystems/spectre.cli/wiki/Test-cases#test-case-3 /// [Fact] + [Expectation("Test_3")] public Task Should_Dump_Correct_Model_For_Case_3() { // Given @@ -88,6 +93,7 @@ namespace Spectre.Console.Tests.Unit.Cli /// https://github.com/spectresystems/spectre.cli/wiki/Test-cases#test-case-4 /// [Fact] + [Expectation("Test_4")] public Task Should_Dump_Correct_Model_For_Case_4() { // Given @@ -111,6 +117,7 @@ namespace Spectre.Console.Tests.Unit.Cli /// https://github.com/spectresystems/spectre.cli/wiki/Test-cases#test-case-5 /// [Fact] + [Expectation("Test_5")] public Task Should_Dump_Correct_Model_For_Case_5() { // Given @@ -128,6 +135,7 @@ namespace Spectre.Console.Tests.Unit.Cli } [Fact] + [Expectation("Test_6")] public Task Should_Dump_Correct_Model_For_Model_With_Default_Command() { // Given diff --git a/src/Spectre.Console.Tests/Unit/ColumnsTests.cs b/src/Spectre.Console.Tests/Unit/ColumnsTests.cs index e61c3c9..81ff3b2 100644 --- a/src/Spectre.Console.Tests/Unit/ColumnsTests.cs +++ b/src/Spectre.Console.Tests/Unit/ColumnsTests.cs @@ -1,12 +1,14 @@ using System.Collections.Generic; using System.Threading.Tasks; using Spectre.Console.Testing; +using Spectre.Verify.Extensions; using VerifyXunit; using Xunit; namespace Spectre.Console.Tests.Unit { [UsesVerify] + [ExpectationPath("Widgets/Columns")] public sealed class ColumnsTests { private sealed class User @@ -16,6 +18,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render")] public Task Should_Render_Columns_Correctly() { // Given diff --git a/src/Spectre.Console.Tests/Unit/ExceptionTests.cs b/src/Spectre.Console.Tests/Unit/ExceptionTests.cs index 8ddd225..65e0d48 100644 --- a/src/Spectre.Console.Tests/Unit/ExceptionTests.cs +++ b/src/Spectre.Console.Tests/Unit/ExceptionTests.cs @@ -2,15 +2,18 @@ using System; using System.Threading.Tasks; using Spectre.Console.Testing; using Spectre.Console.Tests.Data; +using Spectre.Verify.Extensions; using VerifyXunit; using Xunit; namespace Spectre.Console.Tests.Unit { [UsesVerify] + [ExpectationPath("Exception")] public sealed class ExceptionTests { [Fact] + [Expectation("Default")] public Task Should_Write_Exception() { // Given @@ -25,6 +28,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("ShortenedTypes")] public Task Should_Write_Exception_With_Shortened_Types() { // Given @@ -39,6 +43,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("ShortenedMethods")] public Task Should_Write_Exception_With_Shortened_Methods() { // Given @@ -53,6 +58,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("InnerException")] public Task Should_Write_Exception_With_Inner_Exception() { // Given @@ -67,6 +73,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("CallSite")] public Task Should_Write_Exceptions_With_Generic_Type_Parameters_In_Callsite_As_Expected() { // Given diff --git a/src/Spectre.Console.Tests/Unit/FigletTests.cs b/src/Spectre.Console.Tests/Unit/FigletTests.cs index b1b873d..043274d 100644 --- a/src/Spectre.Console.Tests/Unit/FigletTests.cs +++ b/src/Spectre.Console.Tests/Unit/FigletTests.cs @@ -1,14 +1,17 @@ using System.Threading.Tasks; using Spectre.Console.Testing; +using Spectre.Verify.Extensions; using VerifyXunit; using Xunit; namespace Spectre.Console.Tests.Unit { [UsesVerify] + [ExpectationPath("Widgets/Figlet")] public sealed class FigletTests { [Fact] + [Expectation("Load_Stream")] public async Task Should_Load_Font_From_Stream() { // Given @@ -24,6 +27,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render")] public async Task Should_Render_Text_Correctly() { // Given @@ -38,6 +42,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Wrapped")] public async Task Should_Render_Wrapped_Text_Correctly() { // Given @@ -52,6 +57,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_LeftAligned")] public async Task Should_Render_Left_Aligned_Text_Correctly() { // Given @@ -67,6 +73,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Centered")] public async Task Should_Render_Centered_Text_Correctly() { // Given @@ -82,6 +89,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_RightAligned")] public async Task Should_Render_Right_Aligned_Text_Correctly() { // Given diff --git a/src/Spectre.Console.Tests/Unit/GridTests.cs b/src/Spectre.Console.Tests/Unit/GridTests.cs index ea3417b..9704c13 100644 --- a/src/Spectre.Console.Tests/Unit/GridTests.cs +++ b/src/Spectre.Console.Tests/Unit/GridTests.cs @@ -2,12 +2,14 @@ using System; using System.Threading.Tasks; using Shouldly; using Spectre.Console.Testing; +using Spectre.Verify.Extensions; using VerifyXunit; using Xunit; namespace Spectre.Console.Tests.Unit { [UsesVerify] + [ExpectationPath("Widgets/Grid")] public sealed class GridTests { public sealed class TheAddColumnMethod @@ -77,28 +79,12 @@ namespace Spectre.Console.Tests.Unit } [UsesVerify] + [ExpectationPath("AddEmptyRow")] public sealed class TheAddEmptyRowMethod { [Fact] + [Expectation("Render")] public Task Should_Add_Empty_Row() - { - // Given - var console = new FakeConsole(width: 80); - var grid = new Grid(); - grid.AddColumns(2); - grid.AddRow("Foo", "Bar"); - grid.AddEmptyRow(); - grid.AddRow("Qux", "Corgi"); - - // When - console.Render(grid); - - // Then - return Verifier.Verify(console.Output); - } - - [Fact] - public Task Should_Add_Empty_Row_At_The_End() { // Given var console = new FakeConsole(width: 80); @@ -118,6 +104,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render")] public Task Should_Render_Grid_Correctly() { // Given @@ -137,6 +124,26 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_2")] + public Task Should_Render_Grid_Correctly_2() + { + var console = new FakeConsole(width: 80); + var grid = new Grid(); + grid.AddColumn(new GridColumn { NoWrap = true }); + grid.AddColumn(new GridColumn { Padding = new Padding(2, 0, 0, 0) }); + grid.AddRow("[bold]Options[/]", string.Empty); + grid.AddRow(" [blue]-h[/], [blue]--help[/]", "Show command line help."); + grid.AddRow(" [blue]-c[/], [blue]--configuration[/]", "The configuration to run for.\nThe default for most projects is [green]Debug[/]."); + + // When + console.Render(grid); + + // Then + return Verifier.Verify(console.Output); + } + + [Fact] + [Expectation("Render_Alignment")] public Task Should_Render_Grid_Column_Alignment_Correctly() { // Given @@ -157,6 +164,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Padding")] public Task Should_Use_Default_Padding() { // Given @@ -175,6 +183,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_ExplicitPadding")] public Task Should_Render_Explicit_Grid_Column_Padding_Correctly() { // Given @@ -193,23 +202,5 @@ namespace Spectre.Console.Tests.Unit // Then return Verifier.Verify(console.Output); } - - [Fact] - public Task Should_Render_Grid() - { - var console = new FakeConsole(width: 80); - var grid = new Grid(); - grid.AddColumn(new GridColumn { NoWrap = true }); - grid.AddColumn(new GridColumn { Padding = new Padding(2, 0, 0, 0) }); - grid.AddRow("[bold]Options[/]", string.Empty); - grid.AddRow(" [blue]-h[/], [blue]--help[/]", "Show command line help."); - grid.AddRow(" [blue]-c[/], [blue]--configuration[/]", "The configuration to run for.\nThe default for most projects is [green]Debug[/]."); - - // When - console.Render(grid); - - // Then - return Verifier.Verify(console.Output); - } } } diff --git a/src/Spectre.Console.Tests/Unit/PadderTests.cs b/src/Spectre.Console.Tests/Unit/PadderTests.cs index 3cbcb8f..006e495 100644 --- a/src/Spectre.Console.Tests/Unit/PadderTests.cs +++ b/src/Spectre.Console.Tests/Unit/PadderTests.cs @@ -1,14 +1,17 @@ using System.Threading.Tasks; using Spectre.Console.Testing; +using Spectre.Verify.Extensions; using VerifyXunit; using Xunit; namespace Spectre.Console.Tests.Unit { [UsesVerify] + [ExpectationPath("Widgets/Padder")] public sealed class PadderTests { [Fact] + [Expectation("Render")] public Task Should_Render_Padded_Object_Correctly() { // Given @@ -27,6 +30,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Expanded")] public Task Should_Render_Expanded_Padded_Object_Correctly() { // Given @@ -47,6 +51,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Nested")] public Task Should_Render_Padded_Object_Correctly_When_Nested_Within_Other_Object() { // Given diff --git a/src/Spectre.Console.Tests/Unit/PanelTests.cs b/src/Spectre.Console.Tests/Unit/PanelTests.cs index b69a81b..cbd9957 100644 --- a/src/Spectre.Console.Tests/Unit/PanelTests.cs +++ b/src/Spectre.Console.Tests/Unit/PanelTests.cs @@ -2,15 +2,18 @@ using System.Collections.Generic; using System.Threading.Tasks; using Spectre.Console.Rendering; using Spectre.Console.Testing; +using Spectre.Verify.Extensions; using VerifyXunit; using Xunit; namespace Spectre.Console.Tests.Unit { [UsesVerify] + [ExpectationPath("Widgets/Panel")] public sealed class PanelTests { [Fact] + [Expectation("Render")] public Task Should_Render_Panel() { // Given @@ -24,6 +27,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_ZeroPadding")] public Task Should_Render_Panel_With_Padding_Set_To_Zero() { // Given @@ -40,6 +44,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Padding")] public Task Should_Render_Panel_With_Padding() { // Given @@ -56,6 +61,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Header")] public Task Should_Render_Panel_With_Header() { // Given @@ -74,6 +80,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Header_LeftAligned")] public Task Should_Render_Panel_With_Left_Aligned_Header() { // Given @@ -91,6 +98,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Header_Centered")] public Task Should_Render_Panel_With_Centered_Header() { // Given @@ -108,6 +116,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Header_RightAligned")] public Task Should_Render_Panel_With_Right_Aligned_Header() { // Given @@ -125,6 +134,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Header_Collapse")] public Task Should_Collapse_Header_If_It_Will_Not_Fit() { // Given @@ -142,6 +152,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Unicode")] public Task Should_Render_Panel_With_Unicode_Correctly() { // Given @@ -155,6 +166,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Multiline")] public Task Should_Render_Panel_With_Multiple_Lines() { // Given @@ -168,6 +180,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_LineEndings")] public Task Should_Preserve_Explicit_Line_Ending() { // Given @@ -183,6 +196,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Expand")] public Task Should_Expand_Panel_If_Enabled() { // Given @@ -199,6 +213,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Child_RightAligned")] public Task Should_Justify_Child_To_Right_Correctly() { // Given @@ -216,6 +231,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Child_Centered")] public Task Should_Center_Child_Correctly() { // Given @@ -233,6 +249,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Child_Panel")] public Task Should_Render_Panel_Inside_Panel_Correctly() { // Given @@ -246,6 +263,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Wrap")] public Task Should_Wrap_Content_Correctly() { // Given @@ -270,6 +288,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_CJK")] public Task Should_Wrap_Table_With_CJK_Tables_In_Panel_Correctly() { // Given diff --git a/src/Spectre.Console.Tests/Unit/ProgressTests.cs b/src/Spectre.Console.Tests/Unit/ProgressTests.cs index f673960..64960c8 100644 --- a/src/Spectre.Console.Tests/Unit/ProgressTests.cs +++ b/src/Spectre.Console.Tests/Unit/ProgressTests.cs @@ -1,12 +1,14 @@ using System.Threading.Tasks; using Shouldly; using Spectre.Console.Testing; +using Spectre.Verify.Extensions; using VerifyXunit; using Xunit; namespace Spectre.Console.Tests.Unit { [UsesVerify] + [ExpectationPath("Widgets/Progress")] public sealed class ProgressTests { [Fact] @@ -60,6 +62,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_ReduceWidth")] public Task Should_Reduce_Width_If_Needed() { // Given diff --git a/src/Spectre.Console.Tests/Unit/PromptTests.cs b/src/Spectre.Console.Tests/Unit/PromptTests.cs index 7f8496e..2802945 100644 --- a/src/Spectre.Console.Tests/Unit/PromptTests.cs +++ b/src/Spectre.Console.Tests/Unit/PromptTests.cs @@ -4,13 +4,16 @@ using Spectre.Console.Testing; using Shouldly; using VerifyXunit; using Xunit; +using Spectre.Verify.Extensions; namespace Spectre.Console.Tests.Unit { [UsesVerify] + [ExpectationPath("Widgets/Prompt")] public sealed class PromptTests { [Fact] + [Expectation("ConversionError")] public Task Should_Return_Validation_Error_If_Value_Cannot_Be_Converted() { // Given @@ -26,6 +29,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("DefaultValue")] public Task Should_Chose_Default_Value_If_Nothing_Is_Entered() { // Given @@ -44,6 +48,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("InvalidChoice")] public Task Should_Return_Error_If_An_Invalid_Choice_Is_Made() { // Given @@ -63,6 +68,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("AcceptChoice")] public Task Should_Accept_Choice_In_List() { // Given @@ -81,6 +87,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("AutoComplete_Empty")] public Task Should_Auto_Complete_To_First_Choice_If_Pressing_Tab_On_Empty_String() { // Given @@ -100,6 +107,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("AutoComplete_BestMatch")] public Task Should_Auto_Complete_To_Best_Match() { // Given @@ -120,6 +128,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("AutoComplete_NextChoice")] public Task Should_Auto_Complete_To_Next_Choice_When_Pressing_Tab_On_A_Match() { // Given @@ -140,6 +149,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("CustomValidation")] public Task Should_Return_Error_If_Custom_Validation_Fails() { // Given @@ -172,6 +182,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("CustomConverter")] public Task Should_Use_Custom_Converter() { // Given diff --git a/src/Spectre.Console.Tests/Unit/RecorderTests.cs b/src/Spectre.Console.Tests/Unit/RecorderTests.cs index 622dbdf..cc46225 100644 --- a/src/Spectre.Console.Tests/Unit/RecorderTests.cs +++ b/src/Spectre.Console.Tests/Unit/RecorderTests.cs @@ -1,14 +1,17 @@ using System.Threading.Tasks; using Spectre.Console.Testing; +using Spectre.Verify.Extensions; using VerifyXunit; using Xunit; namespace Spectre.Console.Tests.Unit { [UsesVerify] + [ExpectationPath("Widgets/Recorder")] public sealed class RecorderTests { [Fact] + [Expectation("Text")] public Task Should_Export_Text_As_Expected() { // Given @@ -28,6 +31,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Html")] public Task Should_Export_Html_As_Expected() { // Given diff --git a/src/Spectre.Console.Tests/Unit/RowsTests.cs b/src/Spectre.Console.Tests/Unit/RowsTests.cs index ec8ec69..a75dc6c 100644 --- a/src/Spectre.Console.Tests/Unit/RowsTests.cs +++ b/src/Spectre.Console.Tests/Unit/RowsTests.cs @@ -1,15 +1,18 @@ using System.Threading.Tasks; using Spectre.Console.Rendering; using Spectre.Console.Testing; +using Spectre.Verify.Extensions; using VerifyXunit; using Xunit; namespace Spectre.Console.Tests.Unit { [UsesVerify] + [ExpectationPath("Widgets/Rows")] public sealed class RowsTests { [Fact] + [Expectation("Render")] public Task Should_Render_Rows() { // Given @@ -32,6 +35,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Nested")] public Task Should_Render_Rows_Correctly_Inside_Other_Widget() { // Given @@ -54,6 +58,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Expanded_And_Nested")] public Task Should_Render_Rows_Correctly_Inside_Other_Widget_When_Expanded() { // Given diff --git a/src/Spectre.Console.Tests/Unit/RuleTests.cs b/src/Spectre.Console.Tests/Unit/RuleTests.cs index 1462bf4..da04659 100644 --- a/src/Spectre.Console.Tests/Unit/RuleTests.cs +++ b/src/Spectre.Console.Tests/Unit/RuleTests.cs @@ -1,15 +1,18 @@ using System.Threading.Tasks; using Shouldly; using Spectre.Console.Testing; +using Spectre.Verify.Extensions; using VerifyXunit; using Xunit; namespace Spectre.Console.Tests.Unit { [UsesVerify] + [ExpectationPath("Widgets/Rule")] public sealed class RuleTests { [Fact] + [Expectation("Render")] public Task Should_Render_Default_Rule_Without_Title() { // Given @@ -23,7 +26,8 @@ namespace Spectre.Console.Tests.Unit } [Fact] - public Task Should_Render_Default_Rule_With_Specified_Box() + [Expectation("Render_Border_NoHeader")] + public Task Should_Render_Default_Rule_With_Specified_Border() { // Given var console = new FakeConsole(width: 40); @@ -36,6 +40,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Border_Header")] public Task Should_Render_With_Specified_Box() { // Given @@ -49,6 +54,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Header_DefaultAlignment")] public Task Should_Render_Default_Rule_With_Title_Centered_By_Default() { // Given @@ -62,6 +68,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Header_LeftAligned")] public Task Should_Render_Default_Rule_With_Title_Left_Aligned() { // Given @@ -78,6 +85,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Header_RightAligned")] public Task Should_Render_Default_Rule_With_Title_Right_Aligned() { // Given @@ -94,6 +102,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Linebreaks")] public Task Should_Convert_Line_Breaks_In_Title_To_Spaces() { // Given @@ -107,6 +116,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Truncate")] public Task Should_Truncate_Title() { // Given diff --git a/src/Spectre.Console.Tests/Unit/SegmentTests.cs b/src/Spectre.Console.Tests/Unit/SegmentTests.cs index 6e1d241..573ff33 100644 --- a/src/Spectre.Console.Tests/Unit/SegmentTests.cs +++ b/src/Spectre.Console.Tests/Unit/SegmentTests.cs @@ -2,6 +2,7 @@ using System.Text; using System.Threading.Tasks; using Shouldly; using Spectre.Console.Rendering; +using Spectre.Verify.Extensions; using VerifyXunit; using Xunit; @@ -9,16 +10,6 @@ namespace Spectre.Console.Tests.Unit { public sealed class SegmentTests { - [Fact] - public void Lol() - { - var context = new RenderContext(Encoding.UTF8, false); - - var result = new Segment(" ").CellCount(context); - - result.ShouldBe(4); - } - [UsesVerify] public sealed class TheSplitMethod { @@ -66,6 +57,7 @@ namespace Spectre.Console.Tests.Unit public sealed class TheSplitLinesMethod { [Fact] + [Expectation("Segment", "Split")] public Task Should_Split_Segment() { var context = new RenderContext(Encoding.UTF8, false); @@ -100,6 +92,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Segment", "Split_Linebreak")] public Task Should_Split_Segments_With_Linebreak_In_Text() { var context = new RenderContext(Encoding.UTF8, false); diff --git a/src/Spectre.Console.Tests/Unit/TableBorderTests.cs b/src/Spectre.Console.Tests/Unit/TableBorderTests.cs index 9b9b3c7..b0eaca1 100644 --- a/src/Spectre.Console.Tests/Unit/TableBorderTests.cs +++ b/src/Spectre.Console.Tests/Unit/TableBorderTests.cs @@ -2,12 +2,14 @@ using System.Threading.Tasks; using Shouldly; using Spectre.Console.Rendering; using Spectre.Console.Testing; +using Spectre.Verify.Extensions; using VerifyXunit; using Xunit; namespace Spectre.Console.Tests.Unit { [UsesVerify] + [ExpectationPath("Borders/Table")] public sealed class TableBorderTests { [UsesVerify] @@ -37,6 +39,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("NoBorder")] public Task Should_Render_As_Expected() { // Given @@ -78,6 +81,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("AsciiBorder")] public Task Should_Render_As_Expected() { // Given @@ -119,6 +123,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Ascii2Border")] public Task Should_Render_As_Expected() { // Given @@ -160,6 +165,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("AsciiDoubleHeadBorder")] public Task Should_Render_As_Expected() { // Given @@ -201,6 +207,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("SquareBorder")] public Task Should_Render_As_Expected() { // Given @@ -242,6 +249,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("RoundedBorder")] public Task Should_Render_As_Expected() { // Given @@ -283,6 +291,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("MinimalBorder")] public Task Should_Render_As_Expected() { // Given @@ -324,6 +333,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("MinimalHeavyHeadBorder")] public Task Should_Render_As_Expected() { // Given @@ -365,6 +375,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("MinimalDoubleHeadBorder")] public Task Should_Render_As_Expected() { // Given @@ -406,6 +417,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("SimpleBorder")] public Task Should_Render_As_Expected() { // Given @@ -447,6 +459,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("HorizontalBorder")] public Task Should_Render_As_Expected() { // Given @@ -488,6 +501,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("SimpleHeavyBorder")] public Task Should_Render_As_Expected() { // Given @@ -529,6 +543,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("HeavyBorder")] public Task Should_Render_As_Expected() { // Given @@ -570,6 +585,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("HeavyEdgeBorder")] public Task Should_Render_As_Expected() { // Given @@ -611,6 +627,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("HeavyHeadBorder")] public Task Should_Render_As_Expected() { // Given @@ -652,6 +669,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("DoubleBorder")] public Task Should_Render_As_Expected() { // Given @@ -693,6 +711,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("DoubleEdgeBorder")] public Task Should_Render_As_Expected() { // Given @@ -734,6 +753,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("MarkdownBorder")] public Task Should_Render_As_Expected() { // Given @@ -748,6 +768,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("MarkdownBorder_LeftAligned")] public Task Should_Render_Left_Aligned_Table_Columns_As_Expected() { // Given @@ -762,6 +783,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("MarkdownBorder_Centered")] public Task Should_Render_Center_Aligned_Table_Columns_As_Expected() { // Given @@ -776,6 +798,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("MarkdownBorder_RightAligned")] public Task Should_Render_Right_Aligned_Table_Columns_As_Expected() { // Given diff --git a/src/Spectre.Console.Tests/Unit/TableTests.cs b/src/Spectre.Console.Tests/Unit/TableTests.cs index ca211dd..2b5f5a6 100644 --- a/src/Spectre.Console.Tests/Unit/TableTests.cs +++ b/src/Spectre.Console.Tests/Unit/TableTests.cs @@ -2,12 +2,14 @@ using System; using System.Threading.Tasks; using Shouldly; using Spectre.Console.Testing; +using Spectre.Verify.Extensions; using VerifyXunit; using Xunit; namespace Spectre.Console.Tests.Unit { [UsesVerify] + [ExpectationPath("Widgets/Table")] public sealed class TableTests { public sealed class TheAddColumnMethod @@ -125,6 +127,7 @@ namespace Spectre.Console.Tests.Unit public sealed class TheAddEmptyRowMethod { [Fact] + [Expectation("AddEmptyRow")] public Task Should_Render_Table_Correctly() { // Given @@ -144,6 +147,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render")] public Task Should_Render_Table_Correctly() { // Given @@ -161,6 +165,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Footers")] public Task Should_Render_Table_With_Footers_Correctly() { // Given @@ -180,6 +185,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_LeftAligned")] public Task Should_Left_Align_Table_Correctly() { // Given @@ -198,6 +204,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Centered")] public Task Should_Center_Table_Correctly() { // Given @@ -216,6 +223,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_RightAligned")] public Task Should_Right_Align_Table_Correctly() { // Given @@ -234,6 +242,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Nested")] public Task Should_Render_Table_Nested_In_Panels_Correctly() { // A simple table @@ -256,6 +265,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_ColumnJustification")] public Task Should_Render_Table_With_Column_Justification_Correctly() { // Given @@ -275,6 +285,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Expand")] public Task Should_Expand_Table_To_Available_Space_If_Specified() { // Given @@ -292,23 +303,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] - public Task Should_Render_Table_With_No_Border_Correctly() - { - // Given - var console = new FakeConsole(width: 80); - var table = new Table { Border = TableBorder.None }; - table.AddColumns("Foo", "Bar", "Baz"); - table.AddRow("Qux", "Corgi", "Waldo"); - table.AddRow("Grault", "Garply", "Fred"); - - // When - console.Render(table); - - // Then - return Verifier.Verify(console.Output); - } - - [Fact] + [Expectation("Render_Multiline")] public Task Should_Render_Table_With_Multiple_Rows_In_Cell_Correctly() { // Given @@ -326,6 +321,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_CellPadding")] public Task Should_Render_Table_With_Cell_Padding_Correctly() { // Given @@ -344,6 +340,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_NoRows")] public Task Should_Render_Table_Without_Rows() { // Given @@ -360,6 +357,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Impossible")] public Task Should_Not_Draw_Tables_That_Are_Impossible_To_Draw() { // Given @@ -397,6 +395,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Title_Caption")] public Task Should_Render_Table_With_Title_And_Caption_Correctly() { // Given @@ -416,6 +415,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Title_Caption_LeftAligned")] public Task Should_Left_Align_Table_With_Title_And_Caption_Correctly() { // Given @@ -436,6 +436,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Title_Caption_Centered")] public Task Should_Center_Table_With_Title_And_Caption_Correctly() { // Given @@ -456,6 +457,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("Render_Title_Caption_RightAligned")] public Task Should_Right_Align_Table_With_Title_And_Caption_Correctly() { // Given diff --git a/src/Spectre.Console.Tests/Unit/TreeTests.cs b/src/Spectre.Console.Tests/Unit/TreeTests.cs index 19cf646..672583e 100644 --- a/src/Spectre.Console.Tests/Unit/TreeTests.cs +++ b/src/Spectre.Console.Tests/Unit/TreeTests.cs @@ -2,15 +2,18 @@ using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using Spectre.Console.Testing; +using Spectre.Verify.Extensions; using VerifyXunit; using Xunit; namespace Spectre.Console.Tests.Unit { [UsesVerify] + [ExpectationPath("Widgets/Tree")] public class TreeTests { [Fact] + [Expectation("SingleRoot")] public Task Should_Render_Tree_With_Single_Root_Correctly() { // Given @@ -38,6 +41,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("MultipleRoots")] public Task Should_Render_Tree_With_Multiple_Roots_Correctly() { // Given @@ -65,6 +69,7 @@ namespace Spectre.Console.Tests.Unit } [Fact] + [Expectation("OnlyRoot")] public Task Should_Render_Tree_With_Only_Root_Node_Correctly() { // Given diff --git a/src/Spectre.Console.Tests/VerifyConfiguration.cs b/src/Spectre.Console.Tests/VerifyConfiguration.cs index 2f5dcf7..93c0d03 100644 --- a/src/Spectre.Console.Tests/VerifyConfiguration.cs +++ b/src/Spectre.Console.Tests/VerifyConfiguration.cs @@ -1,5 +1,6 @@ -using System.IO; using System.Runtime.CompilerServices; +using Spectre.Verify.Extensions; +using VerifyTests; namespace Spectre.Console.Tests { @@ -8,16 +9,7 @@ namespace Spectre.Console.Tests [ModuleInitializer] public static void Init() { - VerifyTests.VerifierSettings.DeriveTestDirectory((_, directory) => - { - var expectations = Path.Combine(directory, "Expectations"); - if (!Directory.Exists(expectations)) - { - Directory.CreateDirectory(expectations); - } - - return expectations; - }); + VerifierSettings.DerivePathInfo(Expectations.Initialize); } } } \ No newline at end of file