chore: migrate to wearepixel/laravel-cart

This commit is contained in:
Joel Male
2026-03-24 14:04:48 +10:00
parent 6dfd0ce761
commit 8f442f51e0
31 changed files with 115 additions and 170 deletions
+4 -4
View File
@@ -1,9 +1,9 @@
<?php
use Joelwmale\Cart\Cart;
use Joelwmale\Cart\CartCondition;
use Joelwmale\Cart\CartConditionCollection;
use Joelwmale\Cart\Tests\Helpers\SessionMock;
use Wearepixel\Cart\Cart;
use Wearepixel\Cart\CartCondition;
use Wearepixel\Cart\CartConditionCollection;
use Wearepixel\Cart\Tests\Helpers\SessionMock;
beforeEach(function () {
$events = Mockery::mock('Illuminate\Contracts\Events\Dispatcher');
+10 -10
View File
@@ -1,8 +1,8 @@
<?php
use Joelwmale\Cart\Cart;
use Joelwmale\Cart\Tests\Helpers\MockProduct;
use Joelwmale\Cart\Tests\Helpers\SessionMock;
use Wearepixel\Cart\Cart;
use Wearepixel\Cart\Tests\Helpers\MockProduct;
use Wearepixel\Cart\Tests\Helpers\SessionMock;
beforeEach(function () {
$events = Mockery::mock('Illuminate\Contracts\Events\Dispatcher');
@@ -149,7 +149,7 @@
$item = $this->cart->get(1);
expect($item->attributes)->toBeInstanceOf('Joelwmale\\Cart\\ItemAttributeCollection');
expect($item->attributes)->toBeInstanceOf('Wearepixel\\Cart\\ItemAttributeCollection');
// now lets update the item with its new attributes
// when we get that item from cart, it should still be an instance of ItemAttributeCollection
@@ -162,7 +162,7 @@
$this->cart->update(1, $updatedItem);
expect($item->attributes)->toBeInstanceOf('Joelwmale\\Cart\\ItemAttributeCollection');
expect($item->attributes)->toBeInstanceOf('Wearepixel\\Cart\\ItemAttributeCollection');
});
test('item orders are preserved by the order they are added', function () {
@@ -298,19 +298,19 @@
});
test('should throw an exception when no quantity is provided', function () {
$this->expectException('Joelwmale\Cart\Exceptions\InvalidItemException');
$this->expectException('Wearepixel\Cart\Exceptions\InvalidItemException');
$this->expectExceptionMessage('The quantity must be at least 0.1.');
$this->cart->add(455, 'Sample Item', 100.99, 0, []);
});
test('should throw an exception when no id is provided', function () {
$this->expectException('Joelwmale\Cart\Exceptions\InvalidItemException');
$this->expectException('Wearepixel\Cart\Exceptions\InvalidItemException');
$this->expectExceptionMessage('The id field is required.');
$this->cart->add('', 'Sample Item', 100.99, 2, []);
});
test('should throw an exception when no name is provided', function () {
$this->expectException('Joelwmale\Cart\Exceptions\InvalidItemException');
$this->expectException('Wearepixel\Cart\Exceptions\InvalidItemException');
$this->expectExceptionMessage('The name field is required.');
$this->cart->add(523, '', 100.99, 2, []);
});
@@ -646,7 +646,7 @@
expect($this->cart->getContent()->count())->toEqual(1, 'Cart should have 1 item on it');
expect($this->cart->getContent()->first()['id'])->toEqual(456, 'The first content must have ID of 456');
expect($this->cart->getContent()->first()['name'])->toEqual('Sample Item', 'The first content must have name of "Sample Item"');
expect($addedItem->model)->toBeInstanceOf('Joelwmale\Cart\Tests\Helpers\MockProduct');
expect($addedItem->model)->toBeInstanceOf('Wearepixel\Cart\Tests\Helpers\MockProduct');
});
test('cart can add items with multidimensional array with associated model', function () {
@@ -681,7 +681,7 @@
$content = $this->cart->getContent();
foreach ($content as $item) {
expect($item->model)->toBeInstanceOf('Joelwmale\Cart\Tests\Helpers\MockProduct');
expect($item->model)->toBeInstanceOf('Wearepixel\Cart\Tests\Helpers\MockProduct');
}
expect($this->cart->isEmpty())->toBeFalse('Cart should not be empty');
+7 -7
View File
@@ -1,7 +1,7 @@
<?php
use Joelwmale\Cart\Cart;
use Joelwmale\Cart\Tests\Helpers\SessionMock;
use Wearepixel\Cart\Cart;
use Wearepixel\Cart\Tests\Helpers\SessionMock;
beforeEach(function () {});
@@ -25,7 +25,7 @@
});
test('event cart adding', function () {
$events = Mockery::mock('Illuminate\Events\Dispatcher');
$events = Mockery::mock('Illuminate\Contracts\Events\Dispatcher');
$events->shouldReceive('dispatch')->once()->with('LaravelCart.Created', Mockery::type('array'), true);
$events->shouldReceive('dispatch')->once()->with('LaravelCart.Adding', Mockery::type('array'), true);
$events->shouldReceive('dispatch')->once()->with('LaravelCart.Added', Mockery::type('array'), true);
@@ -44,7 +44,7 @@
});
test('event cart adding multiple times', function () {
$events = Mockery::mock('Illuminate\Events\Dispatcher');
$events = Mockery::mock('Illuminate\Contracts\Events\Dispatcher');
$events->shouldReceive('dispatch')->once()->with('LaravelCart.Created', Mockery::type('array'), true);
$events->shouldReceive('dispatch')->times(2)->with('LaravelCart.Adding', Mockery::type('array'), true);
$events->shouldReceive('dispatch')->times(2)->with('LaravelCart.Added', Mockery::type('array'), true);
@@ -64,7 +64,7 @@
});
test('event cart adding multiple times scenario two', function () {
$events = Mockery::mock('Illuminate\Events\Dispatcher');
$events = Mockery::mock('Illuminate\Contracts\Events\Dispatcher');
$events->shouldReceive('dispatch')->once()->with('LaravelCart.Created', Mockery::type('array'), true);
$events->shouldReceive('dispatch')->times(3)->with('LaravelCart.Adding', Mockery::type('array'), true);
$events->shouldReceive('dispatch')->times(3)->with('LaravelCart.Added', Mockery::type('array'), true);
@@ -107,7 +107,7 @@
});
test('event cart remove item', function () {
$events = Mockery::mock('Illuminate\Events\Dispatcher');
$events = Mockery::mock('Illuminate\Contracts\Events\Dispatcher');
$events->shouldReceive('dispatch')->once()->with('LaravelCart.Created', Mockery::type('array'), true);
$events->shouldReceive('dispatch')->times(3)->with('LaravelCart.Adding', Mockery::type('array'), true);
$events->shouldReceive('dispatch')->times(3)->with('LaravelCart.Added', Mockery::type('array'), true);
@@ -154,7 +154,7 @@
});
test('event cart clear', function () {
$events = Mockery::mock('Illuminate\Events\Dispatcher');
$events = Mockery::mock('Illuminate\Contracts\Events\Dispatcher');
$events->shouldReceive('dispatch')->once()->with('LaravelCart.Created', Mockery::type('array'), true);
$events->shouldReceive('dispatch')->times(3)->with('LaravelCart.Adding', Mockery::type('array'), true);
$events->shouldReceive('dispatch')->times(3)->with('LaravelCart.Added', Mockery::type('array'), true);
+2 -2
View File
@@ -1,7 +1,7 @@
<?php
use Joelwmale\Cart\Cart;
use Joelwmale\Cart\Tests\Helpers\SessionMock;
use Wearepixel\Cart\Cart;
use Wearepixel\Cart\Tests\Helpers\SessionMock;
beforeEach(function () {
$events = Mockery::mock('Illuminate\Contracts\Events\Dispatcher');
+3 -3
View File
@@ -1,8 +1,8 @@
<?php
use Joelwmale\Cart\Cart;
use Joelwmale\Cart\CartCondition;
use Joelwmale\Cart\Tests\Helpers\MockCartModel;
use Wearepixel\Cart\Cart;
use Wearepixel\Cart\CartCondition;
use Wearepixel\Cart\Tests\Helpers\MockCartModel;
beforeEach(function () {
$events = Mockery::mock('Illuminate\Contracts\Events\Dispatcher');
+6 -6
View File
@@ -1,9 +1,9 @@
<?php
use Joelwmale\Cart\Cart;
use Joelwmale\Cart\CartCondition;
use Joelwmale\Cart\Tests\Helpers\MockProduct;
use Joelwmale\Cart\Tests\Helpers\SessionMock;
use Wearepixel\Cart\Cart;
use Wearepixel\Cart\CartCondition;
use Wearepixel\Cart\Tests\Helpers\MockProduct;
use Wearepixel\Cart\Tests\Helpers\SessionMock;
beforeEach(function () {
$events = Mockery::mock('Illuminate\Contracts\Events\Dispatcher');
@@ -47,7 +47,7 @@
});
test('item get conditions with conditions', function () {
$itemCondition1 = new \Joelwmale\Cart\CartCondition([
$itemCondition1 = new \Wearepixel\Cart\CartCondition([
'name' => 'SALE 5%',
'type' => 'sale',
'target' => 'item',
@@ -77,7 +77,7 @@
});
test('it will throw an exception when a non existing model is being associated', function () {
$this->expectException(\Joelwmale\Cart\Exceptions\UnknownModelException::class);
$this->expectException(\Wearepixel\Cart\Exceptions\UnknownModelException::class);
$this->expectExceptionMessage('The supplied model SomeModel does not exist.');
$this->cart->add(1, 'Test item', 1, 10.00)->associate('SomeModel');
+2 -2
View File
@@ -1,7 +1,7 @@
<?php
use Joelwmale\Cart\Cart;
use Joelwmale\Cart\Tests\Helpers\SessionMock;
use Wearepixel\Cart\Cart;
use Wearepixel\Cart\Tests\Helpers\SessionMock;
beforeEach(function () {
$events = Mockery::mock('Illuminate\Contracts\Events\Dispatcher');