From 8359f0831ff45fabbf9b45db8b80da322772d009 Mon Sep 17 00:00:00 2001 From: ncoronel Date: Wed, 12 Aug 2026 15:49:53 -0300 Subject: [PATCH] feat(cart): update guest token cookie settings for improved session handling in tests --- app/Domains/Cart/Services/CartService.php | 6 +++--- tests/Feature/Cart/CartControllerTest.php | 11 +++++++++++ 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/app/Domains/Cart/Services/CartService.php b/app/Domains/Cart/Services/CartService.php index 266e311..25ab507 100644 --- a/app/Domains/Cart/Services/CartService.php +++ b/app/Domains/Cart/Services/CartService.php @@ -82,11 +82,11 @@ class CartService $guestToken, 60 * 24 * 180, '/', - null, - false, + config('session.domain'), + (bool) config('session.secure'), true, false, - 'lax', + config('session.same_site'), ); } diff --git a/tests/Feature/Cart/CartControllerTest.php b/tests/Feature/Cart/CartControllerTest.php index 460b164..304ff69 100644 --- a/tests/Feature/Cart/CartControllerTest.php +++ b/tests/Feature/Cart/CartControllerTest.php @@ -32,6 +32,10 @@ class CartControllerTest extends TestCase public function test_it_adds_a_catalog_item_without_a_variant(): void { + config()->set('session.domain', '.qa.shopit.com.ar'); + config()->set('session.secure', true); + config()->set('session.same_site', 'none'); + $tenant = $this->createTenant('acme'); $item = $this->createDirectItem($tenant, 10, '49.90'); @@ -50,6 +54,13 @@ class CartControllerTest extends TestCase ->assertJsonPath('data.items.0.product.nombre', 'Item acme') ->assertJsonPath('data.subtotal', '99.80'); + $guestTokenCookie = $response->getCookie('guest_token', false); + $this->assertNotNull($guestTokenCookie); + $this->assertSame('.qa.shopit.com.ar', $guestTokenCookie->getDomain()); + $this->assertTrue($guestTokenCookie->isSecure()); + $this->assertTrue($guestTokenCookie->isHttpOnly()); + $this->assertSame('none', $guestTokenCookie->getSameSite()); + $this->assertDatabaseHas('carrito_items', [ 'catalog_item_id' => $item->id, 'variant_id' => null,