Skip to content

Commit f7df34d

Browse files
committed
[php][user_email-04_email_address_vo] Use EmailAddress in Newsletter
1 parent 53404b1 commit f7df34d

File tree

3 files changed

+8
-8
lines changed

3 files changed

+8
-8
lines changed

examples/php/php-user_email-04_email_address_vo/src/Controller/NewsletterController.php

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,11 @@
66

77
use CodelyTv\Model\EmailAddress;
88
use CodelyTv\Model\Newsletter;
9-
use CodelyTv\Model\User;
109

1110
final class NewsletterController
1211
{
1312
public function post(string $emailAddress): Newsletter
1413
{
15-
User::ensureEmailIsValid(new EmailAddress($emailAddress));
16-
17-
return new Newsletter($emailAddress);
14+
return new Newsletter(new EmailAddress($emailAddress));
1815
}
1916
}

examples/php/php-user_email-04_email_address_vo/src/Model/Newsletter.php

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,16 @@
66

77
final class Newsletter
88
{
9-
private string $emailAddress;
9+
private EmailAddress $emailAddress;
1010

11-
public function __construct(string $emailAddress)
11+
public function __construct(EmailAddress $emailAddress)
1212
{
13+
User::ensureEmailIsValid($emailAddress);
14+
1315
$this->emailAddress = $emailAddress;
1416
}
1517

16-
public function emailAddress(): string
18+
public function emailAddress(): EmailAddress
1719
{
1820
return $this->emailAddress;
1921
}

examples/php/php-user_email-04_email_address_vo/tests/Controller/NewsletterControllerTest.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
namespace CodelyTv\Tests\Controller;
66

77
use CodelyTv\Controller\NewsletterController;
8+
use CodelyTv\Model\EmailAddress;
89
use CodelyTv\Model\Newsletter;
910
use InvalidArgumentException;
1011
use PHPUnit\Framework\TestCase;
@@ -18,7 +19,7 @@ public function it_should_create_a_valid_newsletter(): void
1819

1920
$emailAddress = 'codely@gmail.com';
2021

21-
self::assertEquals(new Newsletter('codely@gmail.com'), $controller->post($emailAddress));
22+
self::assertEquals(new Newsletter(new EmailAddress('codely@gmail.com')), $controller->post($emailAddress));
2223
}
2324

2425
/** @test */

0 commit comments

Comments
 (0)