Пример #1
0
        public void ShouldConnectToUciEngine()
        {
            var connector = new UCIConnector(_setting);

            connector.Connect();

            Assert.IsTrue(connector.IsConnected);
        }
Пример #2
0
        public void ShouldThrowNotConnectedException()
        {
            var connector = new UCIConnector(_setting);

            Assert.IsFalse(connector.IsConnected);
            Assert.Throws <UCIConnectionException>(() => connector.GetNextMove("d2d4", 5));
            Assert.Throws <UCIConnectionException>(() => connector.ConfigureEngine());
            Assert.Throws <UCIConnectionException>(() => connector.StartGame());
        }
Пример #3
0
        public void ShouldGetNextMoveAsWhiteWithDepthOne()
        {
            var connector = new UCIConnector(_setting);

            connector.Connect();

            var move = connector.GetNextMove("e2e4", 1);

            connector.Disconnect();

            StringAssert.IsMatch(MOVE_REGEX_PATTERN, move);
        }
Пример #4
0
        public void ShouldGetNextMoveAsBlackWithDepthOne()
        {
            var connector = new UCIConnector(_setting);

            connector.Connect();

            var move1 = connector.GetNextMove("", 1);
            var move2 = connector.GetNextMove("e2e4 d7d5", 1);

            connector.Disconnect();

            StringAssert.IsMatch(MOVE_REGEX_PATTERN, move1);
            StringAssert.IsMatch(MOVE_REGEX_PATTERN, move2);
        }
Пример #5
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.Configure <CookiePolicyOptions>(options =>
            {
                // This lambda determines whether user consent for non-essential cookies is needed for a given request.
                options.CheckConsentNeeded    = context => true;
                options.MinimumSameSitePolicy = SameSiteMode.None;
            });

            services.AddScoped <ILocalizationService, LocalizationService>();
            services.AddSingleton <UCIConnector>((s) =>
            {
                var connector = new UCIConnector();
                connector.Connect();
                return(connector);
            });

            services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2);
        }
Пример #6
0
 public GameController(UCIConnector uciConnector,
                       ILocalizationService localizationService)
 {
     _uciConnector        = uciConnector;
     _localizationService = localizationService;
 }