tests
This commit is contained in:
@@ -0,0 +1,54 @@
|
||||
using Snake.Model;
|
||||
using Snake.Persistance;
|
||||
|
||||
namespace Snake.Tests.Persistance;
|
||||
|
||||
public class LevelLoaderTests
|
||||
{
|
||||
[Fact]
|
||||
public void LoadLevelTest()
|
||||
{
|
||||
// Preparre
|
||||
string SaveFile =
|
||||
"""
|
||||
[
|
||||
{
|
||||
"level_name": "Test level",
|
||||
"size": 10,
|
||||
"snake_start_length": 5,
|
||||
"obstacles": [
|
||||
[1,1],
|
||||
[4,2],
|
||||
[6,9]
|
||||
]
|
||||
},
|
||||
{
|
||||
"level_name": "Cool snake map",
|
||||
"size": 12,
|
||||
"snake_start_length": 3,
|
||||
"obstacles": [
|
||||
[2,3],
|
||||
[1,2]
|
||||
]
|
||||
}
|
||||
]
|
||||
""";
|
||||
string tempfile = Path.GetTempFileName();
|
||||
File.WriteAllText(tempfile, SaveFile);
|
||||
|
||||
var loader = new SnakeLevelLoader(tempfile);
|
||||
Assert.Equal(2, loader.StoredLevels.Count);
|
||||
|
||||
var current_level = loader.StoredLevels[0];
|
||||
Assert.Equal("Test level", current_level.LevelName);
|
||||
Assert.Equal(10, current_level.Size);
|
||||
Assert.Equal(5, current_level.SnakeStartLength);
|
||||
Assert.Equal(current_level.Obstacles, [[1,1], [4,2], [6,9]]);
|
||||
|
||||
current_level = loader.StoredLevels[1];
|
||||
Assert.Equal("Cool snake map", current_level.LevelName);
|
||||
Assert.Equal(12, current_level.Size);
|
||||
Assert.Equal(3, current_level.SnakeStartLength);
|
||||
Assert.Equal(current_level.Obstacles, [[2,3], [1,2]]);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user