public void TestCheckFilledLines() { var t = new Tetris(@"C:\Users\Meow\Desktop\git\ShporaTetris\ShporaTetris\bin\Debug\tests\smallest.json"); var points = 0; var field = new List<Point>() { new Point(0,0,0,3), new Point(0,0,1,3), new Point(0,0,1,4), new Point(0,0,2,0), new Point(0,0,2,1), new Point(0,0,2,3), new Point(0,0,3,3), new Point(0,0,4,1), new Point(0,0,4,3), new Point(0,0,5,3), }.ToImmutableHashSet(); var result = t.CheckFilledLines(field, 6, out points); var expected = new List<Point>() { new Point(0,0,1,4), new Point(0,0,2,1), new Point(0,0,2,2), new Point(0,0,4,2) }.ToImmutableHashSet(); var isCorrect = expected.SetEquals(result); Assert.AreEqual(true, isCorrect, result.ElementAt(3).AbsX +" " + result.ElementAt(3).AbsY); Assert.AreEqual(1, points); }
public void TestCheckCollisions() { var piece = new Piece(new List<Point>() { new Point(0,0,3,0), new Point(0,1,3,1), new Point(0,2,3,2), new Point(1,2,4,2) }.ToImmutableArray()); var field = new List<Point>() { new Point(0,0,2,0), new Point(0,0,2,1), new Point(0,0,4,2), new Point(0,0,3,2) }.ToImmutableHashSet(); var field2 = new List<Point>() { new Point(0,0,2,0), new Point(0,0,2,1), new Point(0,0,4,0), new Point(0,0,3,3) }.ToImmutableHashSet(); var t = new Tetris(@"C:\Users\Meow\Desktop\git\ShporaTetris\ShporaTetris\bin\Debug\tests\smallest.json"); Assert.AreEqual(true, t.CheckCollisions(piece, field, 6, 5)); Assert.AreEqual(false, t.CheckCollisions(piece, field2,6,5)); }
static void Main(string[] args) { var t = new Stopwatch(); t.Start(); //var tetris = new Tetris(@"tests/cubes-w1000-h1000-c1000000.json"); var tetris = new Tetris(@"tests/clever-w20-h25-c100000.json"); tetris.Play(); Console.WriteLine(t.Elapsed); t.Stop(); }
public void TestPlacePiece() { var field = new List<Point>() { new Point(0,0,0,3), new Point(0,0,1,3), new Point(0,0,1,4), new Point(0,0,2,0), new Point(0,0,2,1), new Point(0,0,2,3), new Point(0,0,3,3), new Point(0,0,4,1), new Point(0,0,4,3), new Point(0,0,5,4), }.ToImmutableHashSet(); var piece = new Piece(new List<Point>() { new Point(0,0,3,0), new Point(0,1,3,1), new Point(0,2,3,2), new Point(1,2,4,2) }.ToImmutableArray()); var t = new Tetris(@"C:\Users\Meow\Desktop\git\ShporaTetris\ShporaTetris\bin\Debug\tests\smallest.json"); var expected = new List<Point>() { new Point(0,0,0,3), new Point(0,0,1,3), new Point(0,0,1,4), new Point(0,0,2,0), new Point(0,0,2,1), new Point(0,0,2,3), new Point(0,0,3,3), new Point(0,0,4,1), new Point(0,0,4,3), new Point(0,0,5,4), new Point(0,0,3,0), new Point(0,1,3,1), new Point(0,2,3,2), new Point(1,2,4,2) }.ToImmutableHashSet(); var isTrue = expected.SetEquals(t.PlacePiece(piece, field)); Assert.AreEqual(true, isTrue); }