Exemple #1
0
        public void LoadGeneralsMaps()
        {
            var rootFolder   = InstalledFilesTestData.GetInstallationDirectory(SageGame.CncGenerals);
            var installation = new GameInstallation(new GeneralsDefinition(), rootFolder);

            Platform.Start();

            using (var game = new Game(installation, GraphicsBackend.Direct3D11))
            {
                var maps = game.ContentManager.FileSystem.GetFiles("maps").Where(x => x.FilePath.EndsWith(".map")).ToList();

                foreach (var map in maps)
                {
                    _testOutputHelper.WriteLine($"Loading {map.FilePath}...");

                    game.AssetStore.PushScope();

                    throw new System.NotImplementedException();

                    // TODO: Need to update to use new way of starting game.
                    //using (var scene = game.LoadMap(map.FilePath))
                    //{
                    //    Assert.NotNull(scene);
                    //}

                    game.AssetStore.PopScope();
                }
            }

            Platform.Stop();
        }
        public void LoadGeneralsMaps()
        {
            var rootFolder   = InstalledFilesTestData.GetInstallationDirectory(SageGame.CncGenerals);
            var installation = new GameInstallation(new GeneralsDefinition(), rootFolder);
            var fileSystem   = installation.CreateFileSystem();

            var maps = fileSystem.GetFiles("maps").Where(x => x.FilePath.EndsWith(".map")).ToList();

            Platform.Start();

            using (var window = new GameWindow("OpenSAGE test runner", 100, 100, 800, 600, GraphicsBackend.Direct3D11))
            {
                using (var game = GameFactory.CreateGame(installation, fileSystem, GamePanel.FromGameWindow(window)))
                {
                    foreach (var map in maps)
                    {
                        _testOutputHelper.WriteLine($"Loading {map.FilePath}...");

                        var scene = game.ContentManager.Load <Scene3D>(map.FilePath);
                        Assert.NotNull(scene);

                        game.ContentManager.Unload();
                    }
                }
            }

            Platform.Stop();
        }
Exemple #3
0
        public SaveFileTests()
        {
            var rootFolder   = InstalledFilesTestData.GetInstallationDirectory(SageGame.CncGenerals);
            var installation = new GameInstallation(new GeneralsDefinition(), rootFolder);

            Platform.Start();

            _game = new Game(installation, GraphicsBackend.Direct3D11);
        }
Exemple #4
0
        public void CheckEntryCount()
        {
            var fileSystem = new FileSystem(InstalledFilesTestData.GetInstallationDirectory(SageGame.BattleForMiddleEarthII));
            var entry      = fileSystem.GetFile(@"MainMenu.apt");

            var data = AptFile.FromFileSystemEntry(entry);

            Assert.NotNull(data);
        }
Exemple #5
0
        public GameFixture()
        {
            var rootFolder   = InstalledFilesTestData.GetInstallationDirectory(SageGame.CncGenerals);
            var installation = new GameInstallation(new GeneralsDefinition(), rootFolder);

            Platform.Start();

            Game = new Game(installation);
        }
Exemple #6
0
        public void LoadW3dFromBigFile()
        {
            var bigFilePath = Path.Combine(InstalledFilesTestData.GetInstallationDirectory(SageGame.CncGeneralsZeroHour), "W3DZH.big");

            using (var bigArchive = new BigArchive(bigFilePath))
            {
                var entry = bigArchive.GetEntry(@"Art\W3D\ABBarracks_AC.W3D");

                var w3dFile = W3dFile.FromFileSystemEntry(new FileSystemEntry(null, entry.FullName, entry.Length, entry.Open));
                Assert.Equal(3, w3dFile.Meshes.Count);
            }
        }
Exemple #7
0
        public void CheckEntryCount()
        {
            var bigFilePath = Path.Combine(InstalledFilesTestData.GetInstallationDirectory(SageGame.Bfme2), "apt/MainMenu.big");

            using (var bigArchive = new BigArchive(bigFilePath))
            {
                var entry = bigArchive.GetEntry(@"MainMenu.const");

                var data = ConstantData.FromFileSystemEntry(new FileSystemEntry(null, entry.FullName, entry.Length, entry.Open));
                Assert.NotNull(data);

                //requires unmodified main menu
                Assert.Equal(412, data.Entries.Count);
            }
        }
Exemple #8
0
        public void LoadW3dFromBigFile()
        {
            var bigFilePath = Path.Combine(InstalledFilesTestData.GetInstallationDirectory(SageGame.CncGeneralsZeroHour), "W3DZH.big");

            using (var bigArchive = new BigArchive(bigFilePath))
            {
                var entry = bigArchive.GetEntry(@"Art\W3D\ABBarracks_AC.W3D");

                W3dFile w3dFile;
                using (var entryStream = entry.Open())
                {
                    w3dFile = W3dFile.FromStream(entryStream, entry.FullName);
                }

                Assert.Equal(3, w3dFile.GetMeshes().Count);
            }
        }
Exemple #9
0
        public void LoadGeneralsMaps()
        {
            var rootFolder   = InstalledFilesTestData.GetInstallationDirectory(SageGame.CncGenerals);
            var installation = new GameInstallation(new GeneralsDefinition(), rootFolder);

            Platform.Start();

            using (var game = new Game(installation, GraphicsBackend.Direct3D11))
            {
                var maps = game.ContentManager.FileSystem.GetFiles("maps").Where(x => x.FilePath.EndsWith(".map")).ToList();

                foreach (var map in maps)
                {
                    _testOutputHelper.WriteLine($"Loading {map.FilePath}...");

                    var scene = game.ContentManager.Load <Scene3D>(map.FilePath);
                    Assert.NotNull(scene);

                    game.ContentManager.Unload();
                }
            }

            Platform.Stop();
        }
Exemple #10
0
 public BigArchiveTests()
 {
     _bigFilePath = Path.Combine(InstalledFilesTestData.GetInstallationDirectory(SageGame.CncGeneralsZeroHour), "W3DZH.big");
 }