}
public void shouldMoveGlyphWhenRequested() {
AccessibleFactory factory = new AccessibleFactory(7);
Game game = new Game(factory, new StubHeartbeat(), 7, 13);
Segments latestSegments = GlyphType.T.getSegments(0).movedRight(3);
game.requestStartGame();
game.requestGlyphMovement(GlyphMovement.ROTATE_LEFT);
ensureThat(factory.glyph.getSegments(), eq(GlyphType.T.getSegments(1).movedRight(3)));
game.requestGlyphMovement(GlyphMovement.ROTATE_RIGHT);
ensureThat(factory.glyph.getSegments(), eq(GlyphType.T.getSegments(0).movedRight(3)));
game.requestGlyphMovement(GlyphMovement.LEFT);
ensureThat(factory.glyph.getSegments(), eq(latestSegments.movedLeft()));
latestSegments = latestSegments.movedLeft();
game.requestGlyphMovement(GlyphMovement.RIGHT);
ensureThat(factory.glyph.getSegments(), eq(latestSegments.movedRight()));
latestSegments = latestSegments.movedRight();
game.requestGlyphMovement(GlyphMovement.DOWN);
ensureThat(factory.glyph.getSegments(), eq(latestSegments.movedDown()));
latestSegments = latestSegments.movedDown();
verifyMocks();
}