private async Task CheckEnemiesMovement(bool result, double[] positions) { await GameBoardHelper.StartStaTask(() => { _gameBoard = GameBoardHelper.GenerateEmptyGameBoard(_width, _height); IGameMovementChecker checker = GameBoardHelper.GetGameMovementChecker(_gameBoard); ISettingsProvider provider = new TestSettingsProvider(); IGraph graph = new Graph(_gameBoard); var player = new Mock <Player>(); player.Object.X = positions[0]; player.Object.Y = positions[1]; var alg = new AStarEnemyMovementAlgorithm(graph, player.Object, (int)_width, (int)_height); var e1 = new Enemy(); e1.X = positions[2]; e1.Y = positions[3]; e1.MovementAlgorithm = alg; var e2 = new Enemy(); e2.X = positions[4]; e2.Y = positions[5]; e2.MovementAlgorithm = alg; _gameBoard.Children.Add(e1); _gameBoard.Children.Add(e2); IEnemyMovementManager manager = new TimeEnemyMovementManager(new [] { e1, e2 }, checker, provider); manager.MoveEnemies(); bool res = checker.CheckCollision(e1, e2); Assert.Equal(result, res); }); }
private void IsNewHighscoreTest(TestHighscoreListType type, int time, int points, bool isNew) { Highscore highscore = new Highscore() { Points = (uint)points, GameTime = TimeSpan.FromSeconds(time), PlayerName = "player" }; var list = ProvideList((int)type); var clone = new List <Highscore>(list); ISettingsProvider provider = new TestSettingsProvider(); provider.Highscores = list; provider.Save(); HighscoreList highscoreList = new HighscoreList(provider); bool b = highscoreList.IsNewHighscore(highscore); Assert.Equal(isNew, b); if (isNew) { highscoreList.AddHighscore(highscore); } Assert.True(highscoreList.Highscores.Count <= 10); if (isNew) { clone.Add(highscore); } clone.Sort(new HighscoreComparer()); clone = clone.Take(10).ToList(); Assert.Equal(clone.Count, highscoreList.Highscores.Count); for (int i = 0; i < list.Count; i++) { Assert.Equal(clone[i], highscoreList.Highscores[i]); } }
public ConfigLookupTests() { _testSettings = new TestSettingsProvider(); ConfigurationLoader.SettingsProvider = _testSettings; }