public static void IntroduceConverterMethod(INumericConverter aConverter, string aMethod) { Console.Write("Converter="); Console.BackgroundColor = ConsoleColor.DarkGray; Console.ForegroundColor = ConsoleColor.Black; Console.Write(String.Format("{0}", aConverter != null ? aConverter.ConverterName : "INVALID_CONVERTER")); Console.ResetColor(); Console.Write(", Method=( "); Console.Write(aMethod); Console.WriteLine(" )"); }
public static void IntegerToString(INumericConverter aConverter) { // // Создание наборов данных. //____________________________________________________________________________________ int[] Set0 = new int[] { }; int[] Set1 = new int[] { 1, 3, 4, 5, 7, 9 }; int[] Set2 = new int[] { 1, 2, 3, 4, 5 }; int[] Set3 = new int[] { 2, 1, 3 }; int[] Set4 = new int[] { 1, 2, 3, 3, 4, 5 }; var Sets = new Dictionary <string, int[]> () { { "Пустой набор", Set0 }, { "Тестовый набор № 1", Set1 }, { "Полностью последовательный набор", Set2 }, { "Ошибочный набор № 1", Set3 }, { "Ошибочный набор № 2", Set4 }, }; Random R = new Random(); for (int N = 1; N <= 0; N++) { Sets.Add ( String.Format("Большой случайный набор № {0}", N), CreateRandomSortedList(R.Next(1, 1024), 1, 9999, R).ToArray() ); } /// /// Обработка наборов. ///____________________________________________________________________________________ foreach (var S in Sets) { CTests.Begin(S.Key); CTests.IntroduceConverterMethod(aConverter, "int[] -> string"); Console.ForegroundColor = ConsoleColor.DarkGray; Console.WriteLine(String.Format ( "Set({0}) = [{1}]", /* 0 */ S.Value.Length, /* 1 */ String.Join(", ", S.Value) )); Console.ResetColor(); Console.Write("Result(int[] -> string) = ["); try { Console.WriteLine(String.Format("{0}]", aConverter.Convert(S.Value, ",", ".."))); } catch (Exception E) { Console.ForegroundColor = ConsoleColor.DarkRed; Console.Write("Error"); Console.ResetColor(); Console.WriteLine("]"); Console.ForegroundColor = ConsoleColor.DarkRed; Console.WriteLine(E); Console.ResetColor(); } CTests.End(); } }
public static void StringToInteger(INumericConverter aConverter) { /// /// Создание наборов данных. ///____________________________________________________________________________________ string Set0 = ""; string Set1 = "1,3..5,7,9"; string Set2 = "1..1000"; string Set3 = " 1 \t, 3..5, 7, 9"; string Set4 = "9..3"; string Set5 = "1, a, 4-9"; string Set6 = "1..213"; string Set7 = " 1 \t, 3..5,3..5, 7, 9"; var Sets = new Dictionary <string, string> () { { "Пустой набор", Set0 }, { "Тестовый набор № 1", Set6 }, { "Тестовый набор № 2", Set1 }, { "Полностью последовательный набор", Set2 }, { "Правильный набор с разрешенными пробелами", Set3 }, { "Ошибочный набор № 1", Set4 }, { "Ошибочный набор № 2", Set5 }, { "Ошибочный набор № 3 (дублирующиеся данные)", Set7 }, }; /// /// Обработка наборов. ///____________________________________________________________________________________ foreach (var S in Sets) { CTests.Begin(S.Key); CTests.IntroduceConverterMethod(aConverter, "string -> int[]"); Console.ForegroundColor = ConsoleColor.DarkGray; Console.WriteLine(String.Format ( "Set() = [{0}]", /* 0 */ S.Value )); Console.ResetColor(); Console.Write("Result(string -> int["); try { int[] Result = aConverter.Convert(S.Value, ",", ".."); Console.WriteLine(String.Format ( "{0}]) = [{1}]", /* 0 */ Result.Length, /* 1 */ String.Join(", ", Result) )); } catch (Exception E) { Console.Write("]) = ["); Console.ForegroundColor = ConsoleColor.DarkRed; Console.Write("Error"); Console.ResetColor(); Console.WriteLine("]"); Console.ForegroundColor = ConsoleColor.DarkRed; Console.WriteLine(E); Console.ResetColor(); } CTests.End(); } }