示例#1
0
        public void CheckerFactoryRegisterTypeViaGeneric()
        {
            var cf = new CheckerFactory();
            cf.Convention<SampleClass>(CompareTarget.Ignore);

            Assert.AreEqual(CompareTarget.Ignore, PropertyCheck.TypeConventions.CompareTarget.Convention(typeof(SampleClass)));
        }
        static void Main(string[] args)
        {
            /*var host = Dns.GetHostEntry(Dns.GetHostName());
             * foreach (var ip in host.AddressList) {
             *      if (ip.AddressFamily == AddressFamily.InterNetwork) {
             *              Console.WriteLine(ip.ToString());
             *      }
             * }
             * throw new Exception("No network adapters with an IPv4 address in the system!");*/

            /*ConnectionForm m = new ConnectionForm();
             * m.Show();*/

            /*Application.EnableVisualStyles();
             * Application.SetCompatibleTextRenderingDefault(false);
             * Application.Run(new InitialForm());*/

            //singleton
            GameController.Instance.netListener = new Net.NetListener();

            //factory
            Checker.Checker c1 = CheckerFactory.CreateChecker("Pawn", Color.Green, 0, 0);

            //prototype (deep clone)
            Checker.Checker c2 = (Checker.Checker)c1.Clone();
            Console.WriteLine(c1.color == c2.color);

            //prototype (shallow clone)
            ClassicBoard classicBoard1 = new ClassicBoard(Color.DarkRed, Color.WhiteSmoke, 10);

            ClassicBoard classicBoard2 = (ClassicBoard)classicBoard1.Clone();

            Console.WriteLine(classicBoard1.subject == classicBoard2.subject);

            //builder
            BoardBuilder builder = new BoardBuilder();

            builder.addFirstColor(Color.Red);
            builder.addSecondColor(Color.White);
            GameBoard board = builder.getBoard(10, 10);


            // command
            Checker.Checker ch      = new Checker.Checker(Color.Black, 2, 2, CheckerType.Pawn);
            Command         command = new MoveDownLeftCommand(ch);

            command.Execute();
            command = new MoveDownRightCommand(ch);
            command.Execute();


            Console.ReadLine();
        }
示例#3
0
        public void AlgoTest()
        {
            var checkerFactory = new CheckerFactory();

            var algo = new ShinyBusinessService();
            var source = new Simple { Id = 1, Name = "A", Value = 1.0 };

            var expected = new Simple { Id = 2, Name = "B", Value = 1.2 };

            var candidate = algo.Run(source);

            checkerFactory.Check(expected, candidate);
        }
示例#4
0
 public ServiceRegistry()
 {
     _logger         = new UnityLogger();
     CheckerFactory  = new CheckerFactory(Logger);
     ExceptionLogger = new ExceptionLogger(Logger);
     ConfigFetcher   = new ConfigFetcher(Logger);
     AnalysisRunner  = new AnalysisRunner
                       (
         Logger,
         CheckerFactory,
         ExceptionLogger
                       );
 }
示例#5
0
        public void CompareDoubleAbsComparerTest()
        {
            var checkerFactory = new CheckerFactory();

            var expected = new Simple {
                Id = 1, Name = "A", Value = 10.00005
            };

            var candidate = new Simple {
                Id = 1, Name = "A", Value = 10.00006
            };

            checkerFactory.Check(expected, candidate);
        }
示例#6
0
        public void GenericTest()
        {
            var checkerFactory = new CheckerFactory();

            var algo = new ShinyBusinessService();
            var source = new Simple {Id = 1, Name = "A", Value = 1.0};

            var expected = new Simple {Id = 2, Name = "B", Value = 1.2};

            var candidate = algo.Run(source);

            var wexpected = new Wrapper<Simple> {Content = expected};
            var wcandidate = new Wrapper<Simple> {Content = candidate};
            checkerFactory.Check(wexpected, wcandidate);
        }
示例#7
0
        public void AlgoTest()
        {
            var checkerFactory = new CheckerFactory();

            var algo   = new ShinyBusinessService();
            var source = new Simple {
                Id = 1, Name = "A", Value = 1.0
            };

            var expected = new Simple {
                Id = 2, Name = "B", Value = 1.2
            };

            var candidate = algo.Run(source);

            checkerFactory.Check(expected, candidate);
        }
        public void CreateReturnsWantedImplementation()
        {
            Checker1Tester tester1 = new Checker1Tester();
            Checker2Tester tester2 = new Checker2Tester();
            Checker3Tester tester3 = new Checker3Tester();

            Container container = new Container();

            container.Register <Checker1Tester>(() => tester1);
            container.Register <Checker2Tester>(() => tester2);
            container.Register <ICheckerTester>(() => tester3);

            CheckerFactory factory = new CheckerFactory(container);

            Assert.AreEqual(tester1.Name, factory.CreateChecker <Checker1Tester>().Name);
            Assert.AreEqual(tester2.Name, factory.CreateChecker <Checker2Tester>().Name);
            Assert.AreEqual(tester3.Name, factory.CreateChecker <ICheckerTester>().Name);
        }
示例#9
0
        public void CompareDoubleStandardComparerTest()
        {
            var checkerFactory = new CheckerFactory();

            ConventionsFactory.Conventions.TypeConventions.Comparer.Clear();

            var expected = new Simple {
                Id = 1, Name = "A", Value = 10.00005
            };

            var candidate = new Simple {
                Id = 1, Name = "A", Value = 10.00006
            };

            try
            {
                checkerFactory.Check(expected, candidate);
            }
            catch (PropertyCheckException pex)
            {
                Assert.That(pex.Message, Is.EqualTo("Simple.Value: Expected:<10.00005>. Actual:<10.00006>"), "Message differs");
            }
        }
示例#10
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            // Add framework services.
            services.AddMvc();
            services.AddSingleton <IHttpContextAccessor, HttpContextAccessor>();

            var mainLogger = NLog.LogManager.GetLogger("Main");

            try
            {
                var mainLog = new NLogAdapter(mainLogger);
                services.AddSingleton <ILog>(mainLog);

                var checkLogger = NLog.LogManager.GetLogger("CheckLog");
                var checkLog    = new CheckNLogAdapter(checkLogger);
                services.AddSingleton <ICheckLog>(checkLog);

                var xmlFileConfigRepo = new XmlFileConfigRepo(new FileService(), "Faross.config.xml");
                var config            = xmlFileConfigRepo.GetConfiguration();
                services.AddSingleton <IConfigRepo>(xmlFileConfigRepo);

                var timeService = new TimeService();
                services.AddSingleton <ITimeService>(timeService);

                var checkerFactory = new CheckerFactory(timeService);
                var checkStats     = new InMemoryCheckStats();
                var scheduler      = new ThreadedCheckScheduler(checkLog, checkStats, checkerFactory, mainLog);
                services.AddSingleton <ICheckScheduler>(scheduler);
                services.AddSingleton <ICheckStats>(checkStats);

                scheduler.Init(config);
            }
            catch (Exception ex)
            {
                mainLogger.Fatal(ex.ToString());
            }
        }
示例#11
0
        public void GenericInterfaceTest()
        {
            var checkerFactory = new CheckerFactory();

            var algo   = new ShinyBusinessService();
            var source = new Simple {
                Id = 1, Name = "A", Value = 1.0
            };

            var expected = new Simple {
                Id = 2, Name = "B", Value = 1.2
            };

            var candidate = algo.Run(source);

            IWrapper <Simple> wexpected = new Wrapper <Simple> {
                Content = expected
            };
            IWrapper <Simple> wcandidate = new Wrapper <Simple> {
                Content = candidate
            };

            checkerFactory.Check(wexpected, wcandidate);
        }