Пример #1
0
        public void FileIsPersistent_ReturnsFalse_OnNonexistentFile()
        {
            var mockBoardLoaderFactory = GetMockBoardLoaderFactory();

            var localGamePersistence = new LocalGamePersistence(mockBoardLoaderFactory.Object, "");

            Assert.False(localGamePersistence.FileIsSaveFile("yeet.txt"));
        }
Пример #2
0
        static void Main(string[] args)
        {
            var arguments = ArgumentParser.ParseArguments(args);

            RegisterComponents();
            var loaderFactory       = new LoaderFactory();
            var newGameProvider     = new LocalNewGameProvider(loaderFactory);
            var gameProcessor       = new GameProcessor(Configuration.TickPeriod);
            var gamePersistence     = new LocalGamePersistence(loaderFactory, Configuration.DefaultSaveDirectory);
            var gameRendererFactory = new GameRendererFactory();

            var client = new LoopingGameClient(gameProcessor, newGameProvider, gamePersistence, gameRendererFactory, arguments.SaveFileName);

            client.PlayGame(arguments);
        }
Пример #3
0
        public void FileIsPersistent_ReturnsTrue_AfterSaving()
        {
            var gameStateToSave = new GameState(new TwoDimensionalBoard(new List <int>()
            {
                5, 5
            }), new DefaultBoardProcessor(new RuleSet("2333")));

            var expectedLoadedGameStateString = JsonConvert.SerializeObject(gameStateToSave);

            var mockBoardLoaderFactory = GetMockBoardLoaderFactory();

            var localGamePersistence = new LocalGamePersistence(mockBoardLoaderFactory.Object, "");

            localGamePersistence.SaveGame(gameStateToSave, TestFileName);

            Assert.True(localGamePersistence.FileIsSaveFile(TestFileName));

            File.Delete($"{TestFileName}");
        }
Пример #4
0
        public void SaveAndLoad_GameLoads2DCorrectly_AfterSaving()
        {
            var gameStateToSave = new GameState(new TwoDimensionalBoard(new List <int>()
            {
                5, 5
            }), new DefaultBoardProcessor(new RuleSet("2333")));

            var expectedLoadedGameStateString = JsonConvert.SerializeObject(gameStateToSave);

            var mockBoardLoaderFactory = GetMockBoardLoaderFactory();

            var localGamePersistence = new LocalGamePersistence(mockBoardLoaderFactory.Object, "");

            localGamePersistence.SaveGame(gameStateToSave, TestFileName);
            var loadedGameState = localGamePersistence.LoadGame(TestFileName);

            Assert.Equal(expectedLoadedGameStateString, JsonConvert.SerializeObject(loadedGameState));

            File.Delete($"{TestFileName}");
        }