예제 #1
0
            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(" )");
            }
예제 #2
0
            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();
                }
            }
예제 #3
0
            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();
                }
            }