public function testFit() { $box = new Size(800, 600); $fitted = $box->fit(new Size(100, 100)); $this->assertEquals(600, $fitted->width); $this->assertEquals(600, $fitted->height); $this->assertEquals(100, $fitted->pivot->x); $this->assertEquals(0, $fitted->pivot->y); $box = new Size(800, 600); $fitted = $box->fit(new Size(200, 100)); $this->assertEquals(800, $fitted->width); $this->assertEquals(400, $fitted->height); $this->assertEquals(0, $fitted->pivot->x); $this->assertEquals(100, $fitted->pivot->y); $box = new Size(800, 600); $fitted = $box->fit(new Size(100, 200)); $this->assertEquals(300, $fitted->width); $this->assertEquals(600, $fitted->height); $this->assertEquals(250, $fitted->pivot->x); $this->assertEquals(0, $fitted->pivot->y); $box = new Size(800, 600); $fitted = $box->fit(new Size(2000, 10)); $this->assertEquals(800, $fitted->width); $this->assertEquals(4, $fitted->height); $this->assertEquals(0, $fitted->pivot->x); $this->assertEquals(298, $fitted->pivot->y); $box = new Size(800, 600); $fitted = $box->fit(new Size(10, 2000)); $this->assertEquals(3, $fitted->width); $this->assertEquals(600, $fitted->height); $this->assertEquals(399, $fitted->pivot->x); $this->assertEquals(0, $fitted->pivot->y); $box = new Size(800, 600); $fitted = $box->fit(new Size(800, 600)); $this->assertEquals(800, $fitted->width); $this->assertEquals(600, $fitted->height); $this->assertEquals(0, $fitted->pivot->x); $this->assertEquals(0, $fitted->pivot->y); $box = new Size(400, 300); $fitted = $box->fit(new Size(120, 120)); $this->assertEquals(300, $fitted->width); $this->assertEquals(300, $fitted->height); $this->assertEquals(50, $fitted->pivot->x); $this->assertEquals(0, $fitted->pivot->y); $box = new Size(600, 800); $fitted = $box->fit(new Size(100, 100)); $this->assertEquals(600, $fitted->width); $this->assertEquals(600, $fitted->height); $this->assertEquals(0, $fitted->pivot->x); $this->assertEquals(100, $fitted->pivot->y); }
/** * @dataProvider providerFitWithPosition */ public function testFitWithPosition(Size $box, $position, $x, $y) { $fitted = $box->fit(new Size(100, 100), $position); $this->assertEquals(600, $fitted->width); $this->assertEquals(600, $fitted->height); $this->assertEquals($x, $fitted->pivot->x); $this->assertEquals($y, $fitted->pivot->y); }