diff --git a/composer.json b/composer.json
index 4588e6c..b847f51 100644
--- a/composer.json
+++ b/composer.json
@@ -82,7 +82,7 @@
"analyse": "psalm",
"check-style": "ecs check",
"fix-style": "ecs check --fix",
- "unit-tests": "vendor/bin/phpunit tests/Unit/",
- "functional-tests": "vendor/bin/phpunit tests/Functional/"
+ "functional-tests": "vendor/bin/phpunit tests/Functional/",
+ "unit-tests": "vendor/bin/phpunit tests/Unit/"
}
}
diff --git a/psalm.xml b/psalm.xml
index 0357e31..ab9fc1c 100644
--- a/psalm.xml
+++ b/psalm.xml
@@ -15,6 +15,7 @@
+
diff --git a/src/Controller/EditOrderAction.php b/src/Controller/EditOrderAction.php
index fad372f..3db3845 100644
--- a/src/Controller/EditOrderAction.php
+++ b/src/Controller/EditOrderAction.php
@@ -12,6 +12,7 @@
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\RequestStack;
use Symfony\Component\HttpFoundation\Response;
+use Symfony\Component\HttpFoundation\Session\Flash\FlashBagInterface;
use Symfony\Component\Routing\Generator\UrlGeneratorInterface;
final class EditOrderAction
@@ -59,7 +60,9 @@ private function addFlashAndRedirect(
int $orderId,
): RedirectResponse {
$session = $this->requestStack->getSession();
- $session->getBag('flashes')->add($type, $message);
+ /** @var FlashBagInterface $flashBag */
+ $flashBag = $session->getBag('flashes');
+ $flashBag->add($type, $message);
return new RedirectResponse($this->router->generate($route, ['id' => $orderId]));
}
diff --git a/src/Provider/OldOrderProvider.php b/src/Provider/OldOrderProvider.php
index f471069..48f6da3 100644
--- a/src/Provider/OldOrderProvider.php
+++ b/src/Provider/OldOrderProvider.php
@@ -19,8 +19,9 @@ public function __construct(
public function provide(int $orderId): OrderInterface
{
+ /** @var OrderInterface|null $order */
$order = $this->orderRepository->find($orderId);
- Assert::notNull($order);
+ Assert::isInstanceOf($order, OrderInterface::class);
$this->orderInventoryOperator->cancel($order);
diff --git a/src/Provider/UpdatedOrderProvider.php b/src/Provider/UpdatedOrderProvider.php
index db17231..e0b74c1 100644
--- a/src/Provider/UpdatedOrderProvider.php
+++ b/src/Provider/UpdatedOrderProvider.php
@@ -8,6 +8,7 @@
use Sylius\Component\Core\Model\OrderInterface;
use Symfony\Component\Form\FormFactoryInterface;
use Symfony\Component\HttpFoundation\Request;
+use Webmozart\Assert\Assert;
final class UpdatedOrderProvider
{
@@ -20,6 +21,9 @@ public function fromRequest(OrderInterface $order, Request $request): OrderInter
$form = $this->formFactory->create(OrderType::class, $order, ['validation_groups' => 'sylius']);
$form->handleRequest($request);
- return $form->getData();
+ $data = $form->getData();
+ Assert::isInstanceOf($data, OrderInterface::class);
+
+ return $data;
}
}
diff --git a/tests/Functional/OrderUpdateTest.php b/tests/Functional/OrderUpdateTest.php
index 26b0734..e894d4d 100644
--- a/tests/Functional/OrderUpdateTest.php
+++ b/tests/Functional/OrderUpdateTest.php
@@ -36,6 +36,7 @@ public function testItUpdatesOrder(): void
$this->makeVariantTrackedWithStock();
$order = $this->placeOrderProgramatically(quantity: 5);
+ /** @var ProductVariantInterface $variant */
$variant = $this->getVariantRepository()->findOneBy(['code' => '000F_office_grey_jeans-variant-0']);
$initialHold = $variant->getOnHold();
@@ -50,7 +51,7 @@ public function testItUpdatesOrder(): void
self::$client->request(
'PATCH',
- sprintf('/admin/orders/%d/update-and-processs', $order->getId()),
+ sprintf('/admin/orders/%d/update-and-processs', (int) $order->getId()),
[],
[],
['CONTENT_TYPE' => 'application/json'],