refactor(catalog): return compact ticket selector options

This commit is contained in:
2026-08-14 10:08:58 -03:00
parent b8251f3b63
commit a63aea0463
4 changed files with 134 additions and 36 deletions

View File

@@ -339,20 +339,23 @@ class CatalogItemDetailControllerTest extends TestCase
)
->assertOk()
->assertJsonPath('data.valid', true)
->assertJsonPath('data.resolved_variant_id', null)
->assertJsonCount(2, 'data.variants')
->assertJsonPath('data.variants.0.id', $first->id)
->assertJsonPath('data.variants.1.id', $second->id)
->assertJsonCount(1, 'data.options.sector')
->assertJsonCount(2, 'data.options.seat')
->assertJsonPath('data.options.seat.0.value', '1');
->assertJsonPath('data.resolved_variant', null)
->assertJsonMissingPath('data.variants')
->assertJsonCount(2, 'data.selectors')
->assertJsonPath('data.selectors.0.key', 'sector')
->assertJsonCount(2, 'data.selectors.0.options')
->assertJsonCount(2, 'data.selectors.1.options')
->assertJsonPath('data.selectors.1.options.0.value', '1')
->assertJsonPath('data.available_variant_count', 3)
->assertJsonPath('data.matching_variant_count', 2);
$this->postJson(
"/api/tenants/{$tenant->codigo}/catalog-items/{$item->id}/variant-options",
['selected_values' => ['sector' => 'A', 'seat' => '1']],
)
->assertOk()
->assertJsonPath('data.resolved_variant_id', $first->id);
->assertJsonPath('data.resolved_variant.id', $first->id)
->assertJsonPath('data.resolved_variant.values.sector.value', 'A');
}
private function createItem(