public void RotateTests() { var cell = new Cell { x = 0, y = 0, filled = false }; var pivot = new Cell {x = 0, y = 1}; cell = cell.RotateCW(pivot); CheckEqual(cell, 1, 0); cell = cell.RotateCW(pivot); CheckEqual(cell, 1, 1); cell = cell.RotateCW(pivot); CheckEqual(cell, 1, 2); cell = cell.RotateCW(pivot); CheckEqual(cell, 0, 2); cell = cell.RotateCCW(pivot); CheckEqual(cell, 1, 2); pivot = new Cell { x = 2, y = 3 }; cell = cell.RotateCCW(pivot); CheckEqual(cell, 1, 4); cell = cell.RotateCCW(pivot); CheckEqual(cell, 2, 5); cell = cell.RotateCCW(pivot); CheckEqual(cell, 4, 4); pivot = new Cell { x = 1, y = 5 }; cell = cell.RotateCW(pivot); CheckEqual(cell, 3, 7); }