From 9763f4700fd583adc4463055daac4d13f0106080 Mon Sep 17 00:00:00 2001 From: ilaotovka Date: Tue, 4 Feb 2025 20:04:11 +0200 Subject: [PATCH 1/3] fix long method --- src/ConsoleTables.Sample/Program.cs | 123 ++++++++++++---------------- 1 file changed, 53 insertions(+), 70 deletions(-) diff --git a/src/ConsoleTables.Sample/Program.cs b/src/ConsoleTables.Sample/Program.cs index 07205c5..e54c871 100644 --- a/src/ConsoleTables.Sample/Program.cs +++ b/src/ConsoleTables.Sample/Program.cs @@ -2,94 +2,77 @@ using System.Collections.Generic; using System.Linq; -namespace ConsoleTables.Sample; - -static class Program +namespace ConsoleTables.Sample { - static void TestDictionaryTable() + static class Program { - Dictionary> data = new Dictionary>() + static void Main(string[] args) { - {"A", new Dictionary() - { - { "A", true }, - { "B", false }, - { "C", true }, - }}, - {"B", new Dictionary() - { - { "A", false }, - { "B", true }, - { "C", false }, - }}, - {"C", new Dictionary() - { - { "A", false }, - { "B", false }, - { "C", true }, - }} - }; - var table = ConsoleTable.FromDictionary(data); + TestDictionaryTable(); + SetupAndWriteTables(); + ConfigureAlignment(); + WriteTableWithoutCount(); - Console.WriteLine(table.ToString()); - } - - static void Main(string[] args) - { - TestDictionaryTable(); - var table = new ConsoleTable("one", "two", "three"); - table.AddRow(1, 2, 3) - .AddRow("this line should be longer 哈哈哈哈", "yes it is", "oh"); + Console.ReadKey(); + } - Console.WriteLine("\nFORMAT: Default:\n"); - table.Write(); + static void TestDictionaryTable() + { + Dictionary> data = new Dictionary>() + { + {"A", new Dictionary() { { "A", true }, { "B", false }, { "C", true } }}, + {"B", new Dictionary() { { "A", false }, { "B", true }, { "C", false } }}, + {"C", new Dictionary() { { "A", false }, { "B", false }, { "C", true } }} + }; - Console.WriteLine("\nFORMAT: MarkDown:\n"); - table.Write(Format.MarkDown); + var table = ConsoleTable.FromDictionary(data); + Console.WriteLine(table.ToString()); + } - Console.WriteLine("\nFORMAT: Alternative:\n"); - table.Write(Format.Alternative); - Console.WriteLine(); + static void SetupAndWriteTables() + { + var table = new ConsoleTable("one", "two", "three"); + table.AddRow(1, 2, 3) + .AddRow("this line should be longer 哈哈哈哈", "yes it is", "oh"); + + Console.WriteLine("\nFORMAT: Default:\n"); + table.Write(); - Console.WriteLine("\nFORMAT: Minimal:\n"); - table.Write(Format.Minimal); - Console.WriteLine(); + Console.WriteLine("\nFORMAT: MarkDown:\n"); + table.Write(Format.MarkDown); - table = new ConsoleTable("I've", "got", "nothing"); - table.Write(); - Console.WriteLine(); + Console.WriteLine("\nFORMAT: Alternative:\n"); + table.Write(Format.Alternative); + Console.WriteLine(); - var rows = Enumerable.Repeat(new Something(), 10); + Console.WriteLine("\nFORMAT: Minimal:\n"); + table.Write(); + Console.WriteLine(); - ConsoleTable.From(rows).Write(); + table = new ConsoleTable("I've", "got", "nothing"); + table.Write(); + Console.WriteLine(); + } - rows = Enumerable.Repeat(new Something(), 0); - ConsoleTable.From(rows).Write(); + static void ConfigureAlignment() + { + Console.WriteLine("\nNumberAlignment = Alignment.Right\n"); - Console.WriteLine("\nNumberAlignment = Alignment.Right\n"); - rows = Enumerable.Repeat(new Something(), 2); - ConsoleTable - .From(rows) - .Configure(o => o.NumberAlignment = Alignment.Right) - .Write(); + var rows = Enumerable.Repeat(new Something(), 2); + ConsoleTable.From(rows) + .Configure(o => o.NumberAlignment = Alignment.Right) + .Write(); + } - var noCount = - new ConsoleTable(new ConsoleTableOptions + static void WriteTableWithoutCount() + { + var noCount = new ConsoleTable(new ConsoleTableOptions { Columns = new[] { "one", "two", "three" }, EnableCount = false }); - noCount.AddRow(1, 2, 3).Write(); - - Console.ReadKey(); + noCount.AddRow(1, 2, 3).Write(); + } } } - -public class Something -{ - public string Id { get; set; } = Guid.NewGuid().ToString("N"); - public string Name { get; set; } = "Khalid Abuhkameh"; - public DateTime Date { get; set; } = DateTime.Now; - public int NumberOfChildren { get; set; } -} \ No newline at end of file From c1165cd6f5f03328d7f5510455dd7a23b3ebc3e3 Mon Sep 17 00:00:00 2001 From: ilaotovka Date: Tue, 4 Feb 2025 20:08:23 +0200 Subject: [PATCH 2/3] fix deep nesting --- src/ConsoleTables.Sample/Program.cs | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/src/ConsoleTables.Sample/Program.cs b/src/ConsoleTables.Sample/Program.cs index e54c871..79bdb48 100644 --- a/src/ConsoleTables.Sample/Program.cs +++ b/src/ConsoleTables.Sample/Program.cs @@ -18,14 +18,15 @@ static void Main(string[] args) static void TestDictionaryTable() { - Dictionary> data = new Dictionary>() + var data = new List { - {"A", new Dictionary() { { "A", true }, { "B", false }, { "C", true } }}, - {"B", new Dictionary() { { "A", false }, { "B", true }, { "C", false } }}, - {"C", new Dictionary() { { "A", false }, { "B", false }, { "C", true } }} + new TableData("A", new Dictionary { { "A", true }, { "B", false }, { "C", true } }), + new TableData("B", new Dictionary { { "A", false }, { "B", true }, { "C", false } }), + new TableData("C", new Dictionary { { "A", false }, { "B", false }, { "C", true } }) }; - var table = ConsoleTable.FromDictionary(data); + var dictionary = data.ToDictionary(d => d.Key, d => d.Values); + var table = ConsoleTable.FromDictionary(dictionary); Console.WriteLine(table.ToString()); } @@ -75,4 +76,16 @@ static void WriteTableWithoutCount() noCount.AddRow(1, 2, 3).Write(); } } + + public class TableData + { + public string Key { get; } + public Dictionary Values { get; } + + public TableData(string key, Dictionary values) + { + Key = key; + Values = values; + } + } } From c528cfc64e6a3f84d1413b36e965acadb0060afb Mon Sep 17 00:00:00 2001 From: ilaotovka Date: Tue, 4 Feb 2025 20:17:14 +0200 Subject: [PATCH 3/3] lack of encapsulation --- src/ConsoleTables.Sample/Program.cs | 30 ++++++----------------------- 1 file changed, 6 insertions(+), 24 deletions(-) diff --git a/src/ConsoleTables.Sample/Program.cs b/src/ConsoleTables.Sample/Program.cs index 79bdb48..f614e4f 100644 --- a/src/ConsoleTables.Sample/Program.cs +++ b/src/ConsoleTables.Sample/Program.cs @@ -36,29 +36,11 @@ static void SetupAndWriteTables() table.AddRow(1, 2, 3) .AddRow("this line should be longer 哈哈哈哈", "yes it is", "oh"); - Console.WriteLine("\nFORMAT: Default:\n"); table.Write(); - - Console.WriteLine("\nFORMAT: MarkDown:\n"); - table.Write(Format.MarkDown); - - Console.WriteLine("\nFORMAT: Alternative:\n"); - table.Write(Format.Alternative); - Console.WriteLine(); - - Console.WriteLine("\nFORMAT: Minimal:\n"); - table.Write(); - Console.WriteLine(); - - table = new ConsoleTable("I've", "got", "nothing"); - table.Write(); - Console.WriteLine(); } static void ConfigureAlignment() { - Console.WriteLine("\nNumberAlignment = Alignment.Right\n"); - var rows = Enumerable.Repeat(new Something(), 2); ConsoleTable.From(rows) .Configure(o => o.NumberAlignment = Alignment.Right) @@ -77,15 +59,15 @@ static void WriteTableWithoutCount() } } - public class TableData + public class Something { - public string Key { get; } - public Dictionary Values { get; } + public string Id { get; } = Guid.NewGuid().ToString("N"); + public string Name { get; private set; } = "Khalid Abuhkameh"; + public DateTime Date { get; } - public TableData(string key, Dictionary values) + public Something() { - Key = key; - Values = values; + Date = DateTime.UtcNow; } } }