public void TestSaveMethod() { TileFile tileFile = new TileFile(); tileFile.Load(TEST_FILE); MemoryStream savedStream = new MemoryStream(); tileFile.Save(savedStream); savedStream.Seek(0, SeekOrigin.Begin); TileFile savedTileFile = new TileFile(); savedTileFile.Load(savedStream); savedStream.Close(); Assert.AreEqual(tileFile.Width, savedTileFile.Width, "Width values do not match"); Assert.AreEqual(tileFile.Height, savedTileFile.Height, "Height values do not match"); for (int x = 0; x < tileFile.Height; x++) { for (int y = 0; y < tileFile.Width; y++) { Assert.AreEqual(tileFile[x, y].Brush, savedTileFile[x, y].Brush, "Brush values do not match"); Assert.AreEqual(tileFile[x, y].TileIndex, savedTileFile[x, y].TileIndex, "Tile index values do not match"); Assert.AreEqual(tileFile[x, y].TileSet, savedTileFile[x, y].TileSet, "Tile set values do not match"); Assert.AreEqual(tileFile[x, y].Tile, savedTileFile[x, y].Tile, "Tile values do not match"); } } }
public void TestLoadMethod() { const int HEIGHT = 16; const int WIDTH = 16; Stream stream = File.OpenRead(TEST_FILE); stream.Seek(0, SeekOrigin.End); long fileSize = stream.Position; stream.Seek(0, SeekOrigin.Begin); TileFile tileFile = new TileFile(); tileFile.Load(stream); long streamPosition = stream.Position; stream.Close(); Assert.AreEqual(fileSize, streamPosition, "Not all of the file was read"); Assert.AreEqual(WIDTH, tileFile.Width, "Incorrect width"); Assert.AreEqual(HEIGHT, tileFile.Height, "Incorrect height"); }