29 lines
723 B
PHP
29 lines
723 B
PHP
<?php
|
|
|
|
use App\Models\MasterImage;
|
|
use Illuminate\Support\Facades\Storage;
|
|
|
|
it('validates and maps pixel selection to cell units', function () {
|
|
// Ensure a master image exists so config and storage are stable
|
|
MasterImage::create(['path' => 'master.png', 'version' => 1]);
|
|
|
|
$payload = [
|
|
'x' => 50,
|
|
'y' => 40,
|
|
'w' => 60,
|
|
'h' => 40,
|
|
'offsetX' => 10,
|
|
'offsetY' => 20,
|
|
];
|
|
|
|
$response = $this->postJson('/api/grid/validate-selection', $payload);
|
|
|
|
$response->assertSuccessful();
|
|
$json = $response->json('selection');
|
|
|
|
expect($json['x'])->toBe(2);
|
|
expect($json['y'])->toBe(1);
|
|
expect($json['w'])->toBe(3);
|
|
expect($json['h'])->toBe(2);
|
|
});
|