### Question:
FactoryGraphicAwt implements FactoryGraphic { @Override public ImageBuffer rotate(ImageBuffer image, int angle) { final BufferedImage surface = image.getSurface(); return new ImageBufferAwt(ToolsAwt.rotate(surface, angle)); } FactoryGraphicAwt(); @Override Screen createScreen(Config config); @Override Graphic createGraphic(); @Override Transform createTransform(); @Override Text createText(String fontName, int size, TextStyle style); @Override ImageBuffer createImageBuffer(int width, int height); @Override ImageBuffer createImageBuffer(int width, int height, ColorRgba transparency); @Override ImageBuffer getImageBuffer(Media media); @Override ImageBuffer getImageBuffer(ImageBuffer image); @Override ImageBuffer applyMask(ImageBuffer image, ColorRgba maskColor); @Override ImageBuffer[] splitImage(ImageBuffer image, int h, int v); @Override ImageBuffer rotate(ImageBuffer image, int angle); @Override ImageBuffer resize(ImageBuffer image, int width, int height); @Override ImageBuffer flipHorizontal(ImageBuffer image); @Override ImageBuffer flipVertical(ImageBuffer image); @Override void saveImage(ImageBuffer image, Media media); @Override ImageBuffer getRasterBuffer(ImageBuffer image, double fr, double fg, double fb);  }### Answer:
@Test @Override protected void testRotate() { final ImageBuffer image = Graphics.getImageBuffer(Medias.create("image.png")); final ImageBuffer rotate = Graphics.rotate(image, 90); assertNotEquals(image, rotate); assertEquals(image.getWidth(), rotate.getHeight()); assertEquals(image.getHeight(), rotate.getWidth()); rotate.dispose(); image.dispose(); }