Beispiel #1
0
        public ActionResult Testing(string gameId)
        {
            var vm     = new ViewModelTestResult();
            var games  = _gameStore.ListGames();
            var game   = games.Find(a => a.StartState.Id == gameId);
            var report = _gameTestReportCompiler.CompileReportForGame(game.GameName);

            vm.GameName       = game.GameName;
            vm.GameTestReport = report;
            return(View(vm));
        }
Beispiel #2
0
        public IActionResult RunCustomTest(ViewModelTestResult testResult)
        {
            var startData = testResult.CustomTestStartData.Split(",", StringSplitOptions.RemoveEmptyEntries).Select(a => new PlayerGameSaveData {
                Name = a.Split(':')[0], Value = a.Split(':')[1]
            }).ToList();

            BackgroundJob.Enqueue <CustomGameTestTask>(a => a.Run(testResult.GameName, testResult.CustomTestMinutesToRunFor, testResult.CustomTestMaxActions, testResult.CustomTestStartState, startData));

            for (int i = 1; i < testResult.CustomTestTimesToRun; i++)
            {
                BackgroundJob.Schedule <CustomGameTestTask>(
                    a => a.Run(testResult.GameName, testResult.CustomTestMinutesToRunFor, testResult.CustomTestMaxActions, testResult.CustomTestStartState, startData),
                    TimeSpan.FromMinutes(testResult.CustomTestMinutesToRunFor * (i + 1)));
            }

            return(RedirectToAction("List"));
        }