瀏覽代碼

fix tests

Olivier Massot 2 年之前
父節點
當前提交
75f4198ab0
共有 2 個文件被更改,包括 19 次插入17 次删除
  1. 1 1
      phpunit.xml.dist
  2. 18 16
      tests/Service/ApiLegacy/ApiLegacyRequestServiceTest.php

+ 1 - 1
phpunit.xml.dist

@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!-- https://phpunit.readthedocs.io/en/latest/configuration.html -->
 <phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/9.3/phpunit.xsd" backupGlobals="false" colors="true" bootstrap="tests/bootstrap.php">
-  <coverage pathCoverage="true" includeUncoveredFiles="true">
+  <coverage includeUncoveredFiles="true">
     <include>
       <directory suffix=".php">src</directory>
     </include>

+ 18 - 16
tests/Service/ApiLegacy/ApiLegacyRequestServiceTest.php

@@ -6,6 +6,7 @@ use App\Entity\Access\Access;
 use App\Entity\Person\Person;
 use App\Service\ApiLegacy\ApiLegacyRequestService;
 use Lexik\Bundle\JWTAuthenticationBundle\Services\JWTTokenManagerInterface;
+use PHPUnit\Framework\MockObject\MockObject;
 use PHPUnit\Framework\TestCase;
 use Symfony\Component\HttpKernel\Exception\HttpException;
 use Symfony\Component\Security\Core\Authentication\Token\NullToken;
@@ -21,6 +22,8 @@ class ApiLegacyRequestServiceTest extends TestCase
     private Security $security;
     private JWTTokenManagerInterface $jwtManager;
 
+    const internalRequestsToken = 'azerty';
+
     public function setUp(): void
     {
         $this->apiLegacyClient = $this->getMockBuilder(HttpClientInterface::class)->disableOriginalConstructor()->getMock();
@@ -28,16 +31,20 @@ class ApiLegacyRequestServiceTest extends TestCase
         $this->jwtManager = $this->getMockBuilder(JWTTokenManagerInterface::class)->disableOriginalConstructor()->getMock();
     }
 
+    public function getApiLegacyRequestServiceMockFor(string $methodName): ApiLegacyRequestService | MockObject {
+        return $this
+            ->getMockBuilder(ApiLegacyRequestService::class)
+            ->setConstructorArgs([$this->apiLegacyClient, $this->security, $this->jwtManager, self::internalRequestsToken])
+            ->setMethodsExcept([$methodName])
+            ->getMock();
+    }
+
     /**
      * @see ApiLegacyRequestService::request()
      */
     public function testRequest(): void
     {
-        $api1RequestService = $this
-            ->getMockBuilder(ApiLegacyRequestService::class)
-            ->setConstructorArgs([$this->apiLegacyClient, $this->security, $this->jwtManager])
-            ->setMethodsExcept(['request'])
-            ->getMock();
+        $api1RequestService = $this->getApiLegacyRequestServiceMockFor('request');
 
         $person = $this->getMockBuilder(Person::class)->disableOriginalConstructor()->getMock();
 
@@ -60,7 +67,8 @@ class ApiLegacyRequestServiceTest extends TestCase
             'Charset' => 'UTF-8',
             'Accept-Encoding' => 'gzip, deflate, br',
             'Content-Type' => 'application/ld+json',
-            'x-accessid' => '1'
+            'x-accessid' => '1',
+            'internal-requests-token' => self::internalRequestsToken
         ];
 
         $response = $this->getMockBuilder(ResponseInterface::class)->disableOriginalConstructor()->getMock();
@@ -84,11 +92,7 @@ class ApiLegacyRequestServiceTest extends TestCase
      */
     public function testRequestSwitchUser(): void
     {
-        $api1RequestService = $this
-            ->getMockBuilder(ApiLegacyRequestService::class)
-            ->setConstructorArgs([$this->apiLegacyClient, $this->security, $this->jwtManager])
-            ->setMethodsExcept(['request'])
-            ->getMock();
+        $api1RequestService = $this->getApiLegacyRequestServiceMockFor('request');
 
         $user = $this->getMockBuilder(Access::class)->disableOriginalConstructor()->getMock();
         $user->method('getId')->willReturn(10);
@@ -120,6 +124,8 @@ class ApiLegacyRequestServiceTest extends TestCase
             'Content-Type' => 'application/ld+json',
             'x-accessid' => '20',
             'x-switch-access' => '10',
+            'internal-requests-token' => self::internalRequestsToken
+
         ];
 
         $response = $this->getMockBuilder(ResponseInterface::class)->disableOriginalConstructor()->getMock();
@@ -138,11 +144,7 @@ class ApiLegacyRequestServiceTest extends TestCase
      */
     public function testRequestSwitchInvalidUser(): void
     {
-        $api1RequestService = $this
-            ->getMockBuilder(ApiLegacyRequestService::class)
-            ->setConstructorArgs([$this->apiLegacyClient, $this->security, $this->jwtManager])
-            ->setMethodsExcept(['request'])
-            ->getMock();
+        $api1RequestService = $this->getApiLegacyRequestServiceMockFor('request');
 
         $user = $this->getMockBuilder(Access::class)->disableOriginalConstructor()->getMock();
         $user->method('getId')->willReturn(10);