setFlag(LayerFlag::splice())->setFlag(LayerFlag::relative()); self::assertEquals( 'a_90,fl_relative,fl_splice', (string)$rotate ); $rotate->unsetFlag(LayerFlag::splice()); self::assertEquals( 'a_90,fl_relative', (string)$rotate ); } /** * Should create and set an angle. */ public function testAngle() { $angle = new Angle(5); self::assertEquals( 'a_5', (string)$angle ); $angle->setAngle(6); self::assertEquals( 'a_6', (string)$angle ); } /** * The data provider for `testAngleMethods()`. * * @return array[] */ public function angleMethodsDataProvider() { return [ [ 'mode' => 'auto_right', 'method' => 'autoRight', ], [ 'mode' => 'auto_left', 'method' => 'autoLeft', ], [ 'mode' => 'vflip', 'method' => 'verticalFlip', ], [ 'mode' => 'hflip', 'method' => 'horizontalFlip', ], [ 'mode' => 'ignore', 'method' => 'ignore', ], [ 'mode' => '90', 'method' => 'deg90', ], [ 'mode' => '180', 'method' => 'deg180', ], [ 'mode' => '270', 'method' => 'deg270', ], ]; } /** * Should create an angle. * * @dataProvider angleMethodsDataProvider * * @param string $mode * @param string $method */ public function testAngleMethods($mode, $method) { self::assertEquals( "a_$mode", (string)Angle::{$method}() ); } }