Explorar o código

fix unit tests

Olivier Massot hai 1 ano
pai
achega
656e19665b

+ 1 - 1
src/Entity/Message/Email.php

@@ -34,7 +34,7 @@ class Email extends AbstractMessage
 
     #[ORM\ManyToOne(inversedBy: 'emails')]
     #[ORM\JoinColumn(nullable: true)]
-    private Access $author;
+    private ?Access $author;
 
     #[ORM\OneToMany(mappedBy: 'email', targetEntity: ReportEmail::class, cascade: ['persist'], orphanRemoval: true)]
     #[ORM\JoinColumn(onDelete: 'cascade')]

+ 1 - 0
src/Service/Mailer/Builder/AbstractBuilder.php

@@ -45,6 +45,7 @@ class AbstractBuilder implements AbstractBuilderInterface
     {
         $emailEntity = new EmailEntity();
         $emailEntity
+            ->setAuthor(null)
             ->setIsSystem(true)
             ->setAbout($subject)
             ->setDateSent(new \DateTime('now'))

+ 2 - 2
tests/Unit/Service/Mailer/Builder/AbstractBuilderTest.php

@@ -56,12 +56,12 @@ class AbstractBuilderTest extends TestCase
     public function testBuildEmailEntity()
     {
         $abstractBuilder = $this->makeAbstractBuilderMock('buildEmailEntity');
-        $email = $abstractBuilder->buildEmailEntity('sujet', $this->access, 'contenu');
+        $email = $abstractBuilder->buildEmailEntity('sujet', 'contenu');
 
         $this->assertInstanceOf(Email::class, $email);
         $this->assertEquals('sujet', $email->getAbout());
         $this->assertEquals('contenu', $email->getText());
-        $this->assertEquals($this->access, $email->getAuthor());
+        $this->assertEquals(null, $email->getAuthor());
         $this->assertTrue($email->getIsSystem());
     }
 

+ 3 - 5
tests/Unit/Service/Mailer/Builder/OnSubdomainChangeMailBuilderTest.php

@@ -76,14 +76,12 @@ class OnSubdomainChangeMailBuilderTest extends TestCase
         $subdomainRepository->expects(self::once())->method('find')->with($subdomainId)->willReturn($subdomain);
         $organizationRepository = $this->getMockBuilder(OrganizationRepository::class)->disableOriginalConstructor()->getMock();
         $organizationRepository->expects(self::once())->method('find')->with($organizationId)->willReturn($organization);
-        $accessRepository = $this->getMockBuilder(AccessRepository::class)->disableOriginalConstructor()->getMock();
-        $accessRepository->expects(self::once())->method('find')->with($authorId)->willReturn($access);
 
         $this->entityManager
-            ->expects(self::exactly(3))
+            ->expects(self::exactly(2))
             ->method('getRepository')
-            ->withConsecutive([Subdomain::class], [Organization::class], [Access::class])
-            ->willReturnOnConsecutiveCalls($subdomainRepository, $organizationRepository, $accessRepository)
+            ->withConsecutive([Subdomain::class], [Organization::class])
+            ->willReturnOnConsecutiveCalls($subdomainRepository, $organizationRepository)
         ;
 
         $this->accessUtils

+ 3 - 2
tests/Unit/Service/Mailer/MailerTest.php

@@ -46,6 +46,7 @@ class MailerTest extends TestCase
     {
         $this->symfonyMailer = $this->getMockBuilder(MailerInterface::class)->disableOriginalConstructor()->getMock();
         $this->opentalentNoReplyEmailAddress = 'noreply@opentalent.fr';
+        $this->opentalentMailReportEmailAddress = 'mail.report@opentalent.fr';
         $this->builderIterator = $this->getMockBuilder(BuilderIterator::class)->disableOriginalConstructor()->getMock();
         $this->stringsUtils = $this->getMockBuilder(StringsUtils::class)->disableOriginalConstructor()->getMock();
         $this->entityManager = $this->getMockBuilder(EntityManagerInterface::class)->disableOriginalConstructor()->getMock();
@@ -62,6 +63,7 @@ class MailerTest extends TestCase
             ->setConstructorArgs([
                 $this->symfonyMailer,
                 $this->opentalentNoReplyEmailAddress,
+                $this->opentalentMailReportEmailAddress,
                 $this->builderIterator,
                 $this->stringsUtils,
                 $this->entityManager,
@@ -125,9 +127,8 @@ class MailerTest extends TestCase
         ;
 
         $mailer
-            ->expects(self::once())
+            ->expects(self::never())
             ->method('sendReport')
-            ->with($emailsCollection)
         ;
 
         $this->entityManager