test(sale): require purchase item snapshots
This commit is contained in:
@@ -2,9 +2,6 @@
|
||||
|
||||
namespace Tests\Unit\Sale;
|
||||
|
||||
use App\Domains\Cart\Models\Cart;
|
||||
use App\Domains\Cart\Models\CartItem;
|
||||
use App\Domains\Catalog\Models\CatalogItem;
|
||||
use App\Domains\Purchase\Models\Purchase;
|
||||
use App\Domains\Purchase\Models\PurchaseItem;
|
||||
use App\Domains\Sale\Resources\AdminApp\SaleDetailResource;
|
||||
@@ -42,38 +39,16 @@ class SaleDetailResourceTest extends TestCase
|
||||
$this->assertSame('30000.00', $data['total']);
|
||||
}
|
||||
|
||||
public function test_it_uses_the_associated_cart_items_when_the_purchase_has_no_items(): void
|
||||
public function test_it_does_not_fall_back_to_cart_items_when_the_purchase_has_no_items(): void
|
||||
{
|
||||
$catalogItem = (new CatalogItem)->forceFill([
|
||||
'id' => 21,
|
||||
'nombre' => 'Entrada general',
|
||||
'precio' => '12500.00',
|
||||
]);
|
||||
$cartItem = (new CartItem)->forceFill([
|
||||
'id' => 34,
|
||||
'catalog_item_id' => $catalogItem->id,
|
||||
'cantidad' => 2,
|
||||
]);
|
||||
$cartItem->setRelation('catalogItem', $catalogItem);
|
||||
$cartItem->setRelation('variant', null);
|
||||
|
||||
$cart = new Cart;
|
||||
$cart->setRelation('items', collect([$cartItem]));
|
||||
|
||||
$purchase = (new Purchase)->forceFill([
|
||||
'id' => 16,
|
||||
'total' => '25000.00',
|
||||
]);
|
||||
$purchase->setRelation('items', collect());
|
||||
$purchase->setRelation('cart', $cart);
|
||||
|
||||
$data = (new SaleDetailResource($purchase))->resolve(Request::create('/'));
|
||||
|
||||
$this->assertSame(34, $data['items'][0]['id']);
|
||||
$this->assertSame('Entrada general', $data['items'][0]['product']);
|
||||
$this->assertSame([], $data['items'][0]['event_dates']);
|
||||
$this->assertSame(2, $data['items'][0]['quantity']);
|
||||
$this->assertSame('12500.00', $data['items'][0]['unit_price']);
|
||||
$this->assertSame('25000.00', $data['items'][0]['total']);
|
||||
$this->assertCount(0, $data['items']);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user