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); }
public void RotateTests_NegativeCoords_BugFixed() { var pivot = new Cell {x = 1, y = -1}; var cell = new Cell {x = 3, y = 0}; cell = cell.RotateCW(pivot); CheckEqual(cell, 1, 1); cell = new Cell {x = 2, y = 1}; cell = cell.RotateCW(pivot); CheckEqual(cell, 0, 1); cell = new Cell {x = 1, y = 1}; cell = cell.RotateCW(pivot); CheckEqual(cell, 0, 0); }