From bdbe118a26c1a8fabdc93ecb09dc46c84548f04f Mon Sep 17 00:00:00 2001 From: Markus Machatschek Date: Mon, 13 Apr 2020 15:11:25 +0200 Subject: [PATCH 1/6] Use morph map where possible --- src/Credit/Credit.php | 2 +- src/FirstPayment/Actions/StartSubscription.php | 2 +- src/FirstPayment/FirstPaymentBuilder.php | 2 +- src/Order/Order.php | 2 +- src/Order/OrderItemCollection.php | 6 +++--- src/Traits/HasOwner.php | 2 +- tests/FirstPayment/FirstPaymentBuilderTest.php | 2 +- tests/ManageSubscriptionTest.php | 4 ++-- tests/Order/OrderTest.php | 8 ++++---- .../FirstPaymentSubscriptionBuilderTest.php | 2 +- tests/database/factories/OrderFactory.php | 3 ++- tests/database/factories/OrderItemFactory.php | 5 +++-- tests/database/factories/RedeemedCouponFactory.php | 5 +++-- tests/database/factories/SubscriptionFactory.php | 3 ++- 14 files changed, 26 insertions(+), 22 deletions(-) diff --git a/src/Credit/Credit.php b/src/Credit/Credit.php index 94ca97a7..fa914cfd 100644 --- a/src/Credit/Credit.php +++ b/src/Credit/Credit.php @@ -34,7 +34,7 @@ public static function addAmountForOwner(Model $owner, Money $amount) // if the owner has no credit yet return static::create([ 'owner_id' => $owner->id, - 'owner_type' => get_class($owner), + 'owner_type' => $owner->getMorphClass(), 'currency' => $amount->getCurrency()->getCode(), 'value' => (int) $amount->getAmount(), ]); diff --git a/src/FirstPayment/Actions/StartSubscription.php b/src/FirstPayment/Actions/StartSubscription.php index 1d0f0f6b..ba729515 100644 --- a/src/FirstPayment/Actions/StartSubscription.php +++ b/src/FirstPayment/Actions/StartSubscription.php @@ -145,7 +145,7 @@ public function makeProcessedOrderItems() protected function processedOrderItemData() { return [ - 'owner_type' => get_class($this->owner), + 'owner_type' => $this->owner->getMorphClass(), 'owner_id' => $this->owner->id, 'process_at' => now(), 'description' => $this->getDescription(), diff --git a/src/FirstPayment/FirstPaymentBuilder.php b/src/FirstPayment/FirstPaymentBuilder.php index 90b79faf..1ced3f58 100644 --- a/src/FirstPayment/FirstPaymentBuilder.php +++ b/src/FirstPayment/FirstPaymentBuilder.php @@ -107,7 +107,7 @@ public function getMolliePayload() 'redirectUrl' => $this->redirectUrl, 'metadata' => [ 'owner' => [ - 'type' => get_class($this->owner), + 'type' => $this->owner->getMorphClass(), 'id' => $this->owner->id, ], 'actions' => $this->actions->toMolliePayload(), diff --git a/src/Order/Order.php b/src/Order/Order.php index 0590b170..8bba60d9 100644 --- a/src/Order/Order.php +++ b/src/Order/Order.php @@ -81,7 +81,7 @@ public static function createFromItems(OrderItemCollection $items, $overrides = $order = static::create(array_merge([ 'owner_id' => $owner->id, - 'owner_type' => get_class($owner), + 'owner_type' => $owner->getMorphClass(), 'number' => static::numberGenerator()->generate(), 'currency' => $currency, 'subtotal' => $items->sum('subtotal'), diff --git a/src/Order/OrderItemCollection.php b/src/Order/OrderItemCollection.php index d241ac42..d2749fe0 100644 --- a/src/Order/OrderItemCollection.php +++ b/src/Order/OrderItemCollection.php @@ -41,7 +41,7 @@ public function whereOwner($owner) { return $this->filter(function ($item) use ($owner) { return (string) $item->owner_id === (string) $owner->id - && $item->owner_type === get_class($owner); + && $item->owner_type === $owner->getMorphClass(); }); } @@ -53,9 +53,9 @@ public function whereOwner($owner) public function chunkByOwner() { return $this->owners()->sortBy(function ($owner) { - return get_class($owner) . '_' . $owner->id; + return $owner->getMorphClass() . '_' . $owner->id; })->mapWithKeys(function ($owner) { - $key = get_class($owner) . '_' . $owner->id; + $key = $owner->getMorphClass() . '_' . $owner->id; return [$key => $this->whereOwner($owner)]; }); } diff --git a/src/Traits/HasOwner.php b/src/Traits/HasOwner.php index b12c0b57..21eba0a1 100644 --- a/src/Traits/HasOwner.php +++ b/src/Traits/HasOwner.php @@ -26,6 +26,6 @@ public function scopeWhereOwner($query, $owner) { return $query ->where('owner_id', $owner->id) - ->where('owner_type', get_class($owner)); + ->where('owner_type', $owner->getMorphClass()); } } diff --git a/tests/FirstPayment/FirstPaymentBuilderTest.php b/tests/FirstPayment/FirstPaymentBuilderTest.php index 57a6bee9..1d6b958d 100644 --- a/tests/FirstPayment/FirstPaymentBuilderTest.php +++ b/tests/FirstPayment/FirstPaymentBuilderTest.php @@ -57,7 +57,7 @@ public function canBuildPayload() 'webhookUrl' => 'https://www.example.com/mandate-webhook', 'metadata' => [ 'owner' => [ - 'type' => get_class($owner), + 'type' => $owner->getMorphClass(), 'id' => $owner->id, ], 'actions' => [ diff --git a/tests/ManageSubscriptionTest.php b/tests/ManageSubscriptionTest.php index 0062362d..801e1ae7 100644 --- a/tests/ManageSubscriptionTest.php +++ b/tests/ManageSubscriptionTest.php @@ -77,7 +77,7 @@ public function canCreateDirectDebitSubscriptionForMandatedCustomer() $this->assertTrue($scheduled_order_item->is($user->subscription('main')->orderItems()->first())); $this->assertEquals('EUR', $scheduled_order_item->currency); $this->assertEquals($user->id, $scheduled_order_item->owner_id); - $this->assertEquals(get_class($user), $scheduled_order_item->owner_type); + $this->assertEquals($user->getMorphClass(), $scheduled_order_item->owner_type); $this->assertCarbon(now(), $scheduled_order_item->process_at, 5); $this->assertEquals(1, $scheduled_order_item->quantity); $this->assertEquals(1000, $scheduled_order_item->unit_price); @@ -111,7 +111,7 @@ public function canCreateDirectDebitSubscriptionForMandatedCustomer() $scheduled_order_item = $subscription->scheduled_order_item; $this->assertEquals('EUR', $scheduled_order_item->currency); $this->assertEquals($user->id, $scheduled_order_item->owner_id); - $this->assertEquals(get_class($user), $scheduled_order_item->owner_type); + $this->assertEquals($user->getMorphClass(), $scheduled_order_item->owner_type); $this->assertCarbon(now()->addMonth(), $scheduled_order_item->process_at); $this->assertEquals(1000, $scheduled_order_item->unit_price); $this->assertEquals(10, $scheduled_order_item->tax_percentage); diff --git a/tests/Order/OrderTest.php b/tests/Order/OrderTest.php index ef7ea19f..48970c4d 100644 --- a/tests/Order/OrderTest.php +++ b/tests/Order/OrderTest.php @@ -39,7 +39,7 @@ public function canCreateFromOrderItems() factory(OrderItem::class, 2)->make([ 'process_at' => now()->subMinute(), // sub minute so we're sure it's ready to be processed 'owner_id' => $user->id, - 'owner_type' => get_class($user), + 'owner_type' => $user->getMorphClass(), 'currency' => 'EUR', 'quantity' => 1, 'unit_price' => 12345, // includes vat @@ -81,7 +81,7 @@ public function creatingANewOrderSchedulesNextOrderItems() $user = factory(User::class)->create(['id' => 2]); $subscription = factory(Subscription::class)->create([ 'owner_id' => $user->id, - 'owner_type' => get_class($user), + 'owner_type' => $user->getMorphClass(), 'plan' => 'monthly-10-1', 'cycle_ends_at' => now(), ]); @@ -133,7 +133,7 @@ public function handlesOwnerBalance() $subscription = factory(Subscription::class)->create([ 'owner_id' => $user->id, - 'owner_type' => get_class($user), + 'owner_type' => $user->getMorphClass(), 'plan' => 'monthly-10-1', 'cycle_ends_at' => now(), ]); @@ -397,7 +397,7 @@ public function canCreateOrderFromOrderItemsWhenTotalValueIsNegativeAndOwnerHasN 'orderable_id' => null, 'process_at' => now()->subMinute(), // sub minute so we're sure it's ready to be processed 'owner_id' => $user->id, - 'owner_type' => get_class($user), + 'owner_type' => $user->getMorphClass(), 'currency' => 'EUR', 'quantity' => 1, 'unit_price' => -12345, // includes vat diff --git a/tests/SubscriptionBuilder/FirstPaymentSubscriptionBuilderTest.php b/tests/SubscriptionBuilder/FirstPaymentSubscriptionBuilderTest.php index d431eae4..efbd4d81 100644 --- a/tests/SubscriptionBuilder/FirstPaymentSubscriptionBuilderTest.php +++ b/tests/SubscriptionBuilder/FirstPaymentSubscriptionBuilderTest.php @@ -65,7 +65,7 @@ public function createsMandatePaymentForSubscription() "locale" => "nl_NL", "metadata" => [ "owner" => [ - "type" => get_class($this->user), + "type" => $this->user->getMorphClass(), "id" => 1, ], "actions" => [ diff --git a/tests/database/factories/OrderFactory.php b/tests/database/factories/OrderFactory.php index 4708820f..3cee759e 100644 --- a/tests/database/factories/OrderFactory.php +++ b/tests/database/factories/OrderFactory.php @@ -3,13 +3,14 @@ namespace Laravel\Cashier\Database\Factories; use Faker\Generator as Faker; +use Illuminate\Database\Eloquent\Model; use Laravel\Cashier\Order\Order; use Laravel\Cashier\Tests\Fixtures\User; $factory->define(Order::class, function (Faker $faker) { return [ 'owner_id' => 1, - 'owner_type' => User::class, + 'owner_type' => Model::getActualClassNameForMorph(User::class), 'currency' => 'EUR', 'subtotal' => 123, 'tax' => 0, diff --git a/tests/database/factories/OrderItemFactory.php b/tests/database/factories/OrderItemFactory.php index 7fc3392a..5fe18af5 100644 --- a/tests/database/factories/OrderItemFactory.php +++ b/tests/database/factories/OrderItemFactory.php @@ -3,15 +3,16 @@ namespace Laravel\Cashier\Database\Factories; use Faker\Generator as Faker; +use Illuminate\Database\Eloquent\Model; use Laravel\Cashier\Order\OrderItem; use Laravel\Cashier\Subscription; use Laravel\Cashier\Tests\Fixtures\User; $factory->define(OrderItem::class, function (Faker $faker) { return [ - 'owner_type' => User::class, + 'owner_type' => Model::getActualClassNameForMorph(User::class), 'owner_id' => 1, - 'orderable_type' => Subscription::class, + 'orderable_type' => Model::getActualClassNameForMorph(Subscription::class), 'orderable_id' => 1, 'description' => 'Some dummy description', 'unit_price' => 12150, diff --git a/tests/database/factories/RedeemedCouponFactory.php b/tests/database/factories/RedeemedCouponFactory.php index bf77225a..8fd546c9 100644 --- a/tests/database/factories/RedeemedCouponFactory.php +++ b/tests/database/factories/RedeemedCouponFactory.php @@ -3,6 +3,7 @@ namespace Laravel\Cashier\Database\Factories; use Faker\Generator as Faker; +use Illuminate\Database\Eloquent\Model; use Laravel\Cashier\Coupon\RedeemedCoupon; use Laravel\Cashier\Subscription; use Laravel\Cashier\Tests\Fixtures\User; @@ -10,9 +11,9 @@ $factory->define(RedeemedCoupon::class, function (Faker $faker) { return [ 'name' => 'Test redemeed coupon', - 'model_type' => Subscription::class, + 'model_type' => Model::getActualClassNameForMorph(Subscription::class), 'model_id' => 1, - 'owner_type' => User::class, + 'owner_type' => Model::getActualClassNameForMorph(User::class), 'owner_id' => 1, 'times_left' => 1, ]; diff --git a/tests/database/factories/SubscriptionFactory.php b/tests/database/factories/SubscriptionFactory.php index abb0fbac..6f0b5db0 100644 --- a/tests/database/factories/SubscriptionFactory.php +++ b/tests/database/factories/SubscriptionFactory.php @@ -4,6 +4,7 @@ use Carbon\Carbon; use Faker\Generator as Faker; +use Illuminate\Database\Eloquent\Model; use Laravel\Cashier\Subscription; use Laravel\Cashier\Tests\Fixtures\User; @@ -12,7 +13,7 @@ 'name' => 'dummy name', 'plan' => 'monthly-10-1', 'owner_id' => 1, - 'owner_type' => User::class, + 'owner_type' => Model::getActualClassNameForMorph(User::class), 'cycle_started_at' => now(), 'cycle_ends_at' => function (array $subscription) { return Carbon::parse($subscription['cycle_started_at'])->addMonth(); From f3aa5ac65c4ea9e7298c3f833a461a0d5cb953f9 Mon Sep 17 00:00:00 2001 From: Markus Machatschek Date: Mon, 13 Apr 2020 15:11:33 +0200 Subject: [PATCH 2/6] Fix docblock --- src/Traits/HasOwner.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/Traits/HasOwner.php b/src/Traits/HasOwner.php index 21eba0a1..1814db71 100644 --- a/src/Traits/HasOwner.php +++ b/src/Traits/HasOwner.php @@ -2,6 +2,8 @@ namespace Laravel\Cashier\Traits; +use Illuminate\Database\Eloquent\Model; + trait HasOwner { /** @@ -18,7 +20,7 @@ public function owner() * Scope a query to only records for a specific owner. * * @param \Illuminate\Database\Eloquent\Builder $query - * @param mixed $owner + * @param Model $owner * * @return \Illuminate\Database\Eloquent\Builder */ From cf488b6450514e9217ddf7e7ca65359070494bd3 Mon Sep 17 00:00:00 2001 From: Markus Machatschek Date: Mon, 13 Apr 2020 18:17:44 +0200 Subject: [PATCH 3/6] Fix test factories --- tests/database/factories/OrderFactory.php | 3 +-- tests/database/factories/OrderItemFactory.php | 5 ++--- tests/database/factories/RedeemedCouponFactory.php | 6 +++--- tests/database/factories/SubscriptionFactory.php | 3 +-- 4 files changed, 7 insertions(+), 10 deletions(-) diff --git a/tests/database/factories/OrderFactory.php b/tests/database/factories/OrderFactory.php index 3cee759e..cd795641 100644 --- a/tests/database/factories/OrderFactory.php +++ b/tests/database/factories/OrderFactory.php @@ -3,14 +3,13 @@ namespace Laravel\Cashier\Database\Factories; use Faker\Generator as Faker; -use Illuminate\Database\Eloquent\Model; use Laravel\Cashier\Order\Order; use Laravel\Cashier\Tests\Fixtures\User; $factory->define(Order::class, function (Faker $faker) { return [ 'owner_id' => 1, - 'owner_type' => Model::getActualClassNameForMorph(User::class), + 'owner_type' => (new User())->getMorphClass(), 'currency' => 'EUR', 'subtotal' => 123, 'tax' => 0, diff --git a/tests/database/factories/OrderItemFactory.php b/tests/database/factories/OrderItemFactory.php index 5fe18af5..38f5e73b 100644 --- a/tests/database/factories/OrderItemFactory.php +++ b/tests/database/factories/OrderItemFactory.php @@ -3,16 +3,15 @@ namespace Laravel\Cashier\Database\Factories; use Faker\Generator as Faker; -use Illuminate\Database\Eloquent\Model; use Laravel\Cashier\Order\OrderItem; use Laravel\Cashier\Subscription; use Laravel\Cashier\Tests\Fixtures\User; $factory->define(OrderItem::class, function (Faker $faker) { return [ - 'owner_type' => Model::getActualClassNameForMorph(User::class), + 'owner_type' => (new User())->getMorphClass(), 'owner_id' => 1, - 'orderable_type' => Model::getActualClassNameForMorph(Subscription::class), + 'orderable_type' => (new Subscription())->getMorphClass(), 'orderable_id' => 1, 'description' => 'Some dummy description', 'unit_price' => 12150, diff --git a/tests/database/factories/RedeemedCouponFactory.php b/tests/database/factories/RedeemedCouponFactory.php index 8fd546c9..abb9e9eb 100644 --- a/tests/database/factories/RedeemedCouponFactory.php +++ b/tests/database/factories/RedeemedCouponFactory.php @@ -3,17 +3,17 @@ namespace Laravel\Cashier\Database\Factories; use Faker\Generator as Faker; -use Illuminate\Database\Eloquent\Model; use Laravel\Cashier\Coupon\RedeemedCoupon; use Laravel\Cashier\Subscription; use Laravel\Cashier\Tests\Fixtures\User; $factory->define(RedeemedCoupon::class, function (Faker $faker) { + $user = new User(); return [ 'name' => 'Test redemeed coupon', - 'model_type' => Model::getActualClassNameForMorph(Subscription::class), + 'model_type' => (new Subscription())->getMorphClass(), 'model_id' => 1, - 'owner_type' => Model::getActualClassNameForMorph(User::class), + 'owner_type' => (new User())->getMorphClass(), 'owner_id' => 1, 'times_left' => 1, ]; diff --git a/tests/database/factories/SubscriptionFactory.php b/tests/database/factories/SubscriptionFactory.php index 6f0b5db0..2c234c22 100644 --- a/tests/database/factories/SubscriptionFactory.php +++ b/tests/database/factories/SubscriptionFactory.php @@ -4,7 +4,6 @@ use Carbon\Carbon; use Faker\Generator as Faker; -use Illuminate\Database\Eloquent\Model; use Laravel\Cashier\Subscription; use Laravel\Cashier\Tests\Fixtures\User; @@ -13,7 +12,7 @@ 'name' => 'dummy name', 'plan' => 'monthly-10-1', 'owner_id' => 1, - 'owner_type' => Model::getActualClassNameForMorph(User::class), + 'owner_type' => (new User())->getMorphClass(), 'cycle_started_at' => now(), 'cycle_ends_at' => function (array $subscription) { return Carbon::parse($subscription['cycle_started_at'])->addMonth(); From 738c8ceefbe200f83fddcec9ee1324c0ef8885f9 Mon Sep 17 00:00:00 2001 From: Markus Machatschek Date: Mon, 13 Apr 2020 18:19:14 +0200 Subject: [PATCH 4/6] Consistently use model accessors on morph types --- src/Coupon/RedeemedCoupon.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Coupon/RedeemedCoupon.php b/src/Coupon/RedeemedCoupon.php index 0d521928..0c9b0e6f 100644 --- a/src/Coupon/RedeemedCoupon.php +++ b/src/Coupon/RedeemedCoupon.php @@ -36,8 +36,8 @@ public static function record(Coupon $coupon, AcceptsCoupons $model) return $model->redeemedCoupons()->create([ 'name' => $coupon->name(), 'times_left' => $coupon->times(), - 'owner_type' => $model->ownerType(), - 'owner_id' => $model->ownerId(), + 'owner_type' => $model->owner_type, + 'owner_id' => $model->owner_id, ]); } From 67aa82af555bc5a17ba29b1940f9c5586e59dea7 Mon Sep 17 00:00:00 2001 From: Markus Machatschek Date: Mon, 13 Apr 2020 18:37:42 +0200 Subject: [PATCH 5/6] Add tests for custom polymorphic types --- tests/Credit/CreditTest.php | 20 ++++++++++++++++++++ tests/Order/OrderItemTest.php | 25 +++++++++++++++++++++++++ tests/Order/OrderTest.php | 30 ++++++++++++++++++++++++++++++ 3 files changed, 75 insertions(+) diff --git a/tests/Credit/CreditTest.php b/tests/Credit/CreditTest.php index aab4238c..611989f6 100644 --- a/tests/Credit/CreditTest.php +++ b/tests/Credit/CreditTest.php @@ -2,6 +2,7 @@ namespace Laravel\Cashier\Tests\Credit; +use Illuminate\Database\Eloquent\Relations\Relation; use Laravel\Cashier\Credit\Credit; use Laravel\Cashier\Tests\BaseTestCase; use Laravel\Cashier\Tests\Fixtures\User; @@ -48,4 +49,23 @@ public function testMaxOutForOwner() $this->assertTrue(Money::EUR(510)->equals($usedEUR)); $this->assertEquals(11836, Credit::whereOwner($user)->whereCurrency('EUR')->first()->value); } + + public function testOwnerTypeIsSetOnCreditMorphColumn() + { + $this->withPackageMigrations(); + + $userMorphType = 'user'; + + Relation::morphMap([ + $userMorphType => User::class, + ]); + + $user = factory(User::class)->create(); + + Credit::addAmountForOwner($user, Money::USD(12348)); + + $credit = Credit::first(); + + $this->assertEquals($userMorphType, $credit->owner_type); + } } diff --git a/tests/Order/OrderItemTest.php b/tests/Order/OrderItemTest.php index be3a482f..99c946bb 100644 --- a/tests/Order/OrderItemTest.php +++ b/tests/Order/OrderItemTest.php @@ -2,9 +2,12 @@ namespace Laravel\Cashier\Tests\Order; +use Illuminate\Database\Eloquent\Relations\Relation; use Laravel\Cashier\Order\OrderItem; use Laravel\Cashier\Order\OrderItemCollection; +use Laravel\Cashier\Subscription; use Laravel\Cashier\Tests\BaseTestCase; +use Laravel\Cashier\Tests\Fixtures\User; class OrderItemTest extends BaseTestCase { @@ -79,6 +82,28 @@ public function testScopeProcessed() $this->assertEquals(3, OrderItem::processed(false)->count()); } + public function testOrderItemTableHasCorrectOrderableType() + { + $newUserMorphKey = 'user'; + $newSubscriptionMorphKey = 'subscription'; + + Relation::morphMap([ + $newUserMorphKey => User::class, + $newSubscriptionMorphKey => Subscription::class, + ]); + + $this->withPackageMigrations(); + + $orderItem = factory(OrderItem::class)->create(); + + dd($orderItem); + + $this->assertEquals($newUserMorphKey, (new User())->getMorphClass()); + $this->assertEquals($newSubscriptionMorphKey, (new Subscription())->getMorphClass()); + $this->assertEquals((new User())->getMorphClass(), $orderItem->owner_type); + $this->assertEquals((new Subscription())->getMorphClass(), $orderItem->orderable_type); + } + public function testScopeUnprocessed() { $this->withPackageMigrations(); diff --git a/tests/Order/OrderTest.php b/tests/Order/OrderTest.php index 48970c4d..dd2e16d4 100644 --- a/tests/Order/OrderTest.php +++ b/tests/Order/OrderTest.php @@ -3,6 +3,8 @@ namespace Laravel\Cashier\Tests\Order; use Carbon\Carbon; +use Illuminate\Database\Eloquent\Model; +use Illuminate\Database\Eloquent\Relations\Relation; use Illuminate\Support\Facades\Event; use Laravel\Cashier\Order\Contracts\MinimumPayment; use Laravel\Cashier\Events\BalanceTurnedStale; @@ -75,6 +77,34 @@ public function canCreateFromOrderItems() $this->assertEquals('open', $order->mollie_payment_status); } + /** @test */ + public function canCreateFromOrderItemsWithCustomPolymorphicRelation() + { + Relation::morphMap([ + 'user' => User::class, // Model with Billable trait + 'order' => Order::class, + ]); + + $user = $this->getMandatedUser(true, ['id' => 2]); + $subscription = $this->createMonthlySubscription(); + + $subscription->orderItems()->saveMany( + factory(OrderItem::class, 2)->make([ + 'process_at' => now()->subMinute(), // sub minute so we're sure it's ready to be processed + 'owner_id' => $user->id, + 'owner_type' => $user->getMorphClass(), + 'currency' => 'EUR', + 'quantity' => 1, + 'unit_price' => 12345, // includes vat + 'tax_percentage' => 21.5, + ]) + ); + + $order = Order::createFromItems(OrderItem::all()); + + $this->assertEquals((new User())->getMorphClass(), $order->owner_type); + } + /** @test */ public function creatingANewOrderSchedulesNextOrderItems() { From 9faf69882b34e1b7003c4dd5732d29d0db6103b8 Mon Sep 17 00:00:00 2001 From: Markus Machatschek Date: Sun, 29 Nov 2020 16:38:00 +0100 Subject: [PATCH 6/6] remove dd instruction --- tests/Order/OrderItemTest.php | 2 -- 1 file changed, 2 deletions(-) diff --git a/tests/Order/OrderItemTest.php b/tests/Order/OrderItemTest.php index 99c946bb..1adbfa30 100644 --- a/tests/Order/OrderItemTest.php +++ b/tests/Order/OrderItemTest.php @@ -96,8 +96,6 @@ public function testOrderItemTableHasCorrectOrderableType() $orderItem = factory(OrderItem::class)->create(); - dd($orderItem); - $this->assertEquals($newUserMorphKey, (new User())->getMorphClass()); $this->assertEquals($newSubscriptionMorphKey, (new Subscription())->getMorphClass()); $this->assertEquals((new User())->getMorphClass(), $orderItem->owner_type);