Exemplo n.º 1
0
 public static void TestDataOperator <T>(IDataOperator <T> dataOperator)
 {
     Test <T>("SortAscending", dataOperator.SortAscending);
     Test <T>("SortDescending", dataOperator.SortDescending);
     Test <T>("Shuffle", dataOperator.Shuffle);
     TestPerfecShuffle <T>(1, "PerfectShuffle", dataOperator.PerfectShuffle);
     Test <T>("RemoveEven", dataOperator.RemoveEven);
     Test <T>("RemoveOdds", dataOperator.RemoveOdds);
 }
Exemplo n.º 2
0
        public WarehouseFacade(IInputReader inputReader, IDataParser dataParser, IDataOperator dataOperator)
        {
            if (inputReader is null)
            {
                throw new ArgumentNullException(nameof(inputReader));
            }
            if (dataParser is null)
            {
                throw new ArgumentNullException(nameof(dataParser));
            }
            if (dataOperator is null)
            {
                throw new ArgumentNullException(nameof(dataOperator));
            }

            _inputReaderLazy = new Lazy <IInputReader>(() => inputReader);
            _dataParserLazy  = new Lazy <IDataParser>(() => dataParser);
            _dataOperator    = new Lazy <IDataOperator>(() => dataOperator);
        }
Exemplo n.º 3
0
        public static void TestDataOperator <T>(IDataOperator <T> dataOperator)
        {
            Console.WriteLine("\n");
            dataOperator.PrintOriginal(typeof(T));
            Console.WriteLine("\n");

            Test <T>("SortAscending", dataOperator.SortAscending);
            Test <T>("SortDescending", dataOperator.SortDescending);
            Test <T>("Shuffle", dataOperator.Shuffle);

            Console.WriteLine("\n");
            dataOperator.PrintOriginal(typeof(T));
            Console.WriteLine("\n");


            TestPerfecShuffle <T>(1, "PerfectShuffle", dataOperator.PerfectShuffle);
            Test <T>("RemoveEven", dataOperator.RemoveEven);
            Test <T>("RemoveOdds", dataOperator.RemoveOdds);
        }
 /// <summary>
 /// Конструктор
 /// </summary>
 /// <param name="dataOperator">Экземпляр класса, реализующий работу с данными</param>
 /// <param name="syncSender">Экземпляр класса, реализующий механизмы интеграции со сторонней системой</param>
 public DomainLogic(IDataOperator dataOperator, ISynchronizationSender syncSender)
 {
     DataOperator = dataOperator;
     _syncSender  = syncSender;
 }