Skip to content

Commit 9704e0c

Browse files
committed
format tests with setup
1 parent 200a2b8 commit 9704e0c

4 files changed

Lines changed: 32 additions & 36 deletions

File tree

.env.dev

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
MAILGUN_API_KEY=
22
MAILGUN_DOMAIN=
3-
SENDGRID_API_KEY=
43
RESEND_API_KEY=
54
RESEND_TEST_EMAIL=
5+
SENDGRID_API_KEY=
66
FCM_SERVICE_ACCOUNT_JSON=
77
FCM_TO=
88
TWILIO_ACCOUNT_SID=

.github/workflows/test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@ jobs:
1616
env:
1717
MAILGUN_API_KEY: ${{ secrets.MAILGUN_API_KEY }}
1818
MAILGUN_DOMAIN: ${{ secrets.MAILGUN_DOMAIN }}
19-
SENDGRID_API_KEY: ${{ secrets.SENDGRID_API_KEY }}
2019
RESEND_API_KEY: ${{ secrets.RESEND_API_KEY }}
20+
SENDGRID_API_KEY: ${{ secrets.SENDGRID_API_KEY }}
2121
FCM_SERVICE_ACCOUNT_JSON: ${{ secrets.FCM_SERVICE_ACCOUNT_JSON }}
2222
FCM_TO: ${{ secrets.FCM_TO }}
2323
TWILIO_ACCOUNT_SID: ${{ secrets.TWILIO_ACCOUNT_SID }}

docker-compose.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@ services:
99
environment:
1010
- MAILGUN_API_KEY
1111
- MAILGUN_DOMAIN
12-
- SENDGRID_API_KEY
1312
- RESEND_API_KEY
1413
- RESEND_TEST_EMAIL
14+
- SENDGRID_API_KEY
1515
- FCM_SERVICE_ACCOUNT_JSON
1616
- FCM_TO
1717
- TWILIO_ACCOUNT_SID

tests/Messaging/Adapter/Email/ResendTest.php

Lines changed: 29 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -9,17 +9,25 @@
99

1010
class ResendTest extends Base
1111
{
12-
public function testSendEmail(): void
12+
private Resend $sender;
13+
private string $testEmail;
14+
15+
protected function setUp(): void
1316
{
17+
parent::setUp();
1418
$key = \getenv('RESEND_API_KEY');
15-
$sender = new Resend($key);
19+
$this->sender = new Resend($key);
20+
$this->testEmail = \getenv('RESEND_TEST_EMAIL');
21+
}
1622

17-
$to = \getenv('RESEND_TEST_EMAIL');
23+
public function testSendEmail(): void
24+
{
25+
$to = $this->testEmail;
1826
$subject = 'Test Subject';
1927
$content = 'Test Content';
20-
$fromEmail = \getenv('RESEND_TEST_EMAIL');
21-
$cc = [['email' => \getenv('RESEND_TEST_EMAIL')]];
22-
$bcc = [['name' => 'Test BCC', 'email' => \getenv('RESEND_TEST_EMAIL')]];
28+
$fromEmail = $this->testEmail;
29+
$cc = [['email' => $this->testEmail]];
30+
$bcc = [['name' => 'Test BCC', 'email' => $this->testEmail]];
2331

2432
$message = new Email(
2533
to: [$to],
@@ -31,20 +39,17 @@ public function testSendEmail(): void
3139
bcc: $bcc,
3240
);
3341

34-
$response = $sender->send($message);
42+
$response = $this->sender->send($message);
3543

3644
$this->assertResponse($response);
3745
}
3846

3947
public function testSendEmailWithHtml(): void
4048
{
41-
$key = \getenv('RESEND_API_KEY');
42-
$sender = new Resend($key);
43-
44-
$to = \getenv('RESEND_TEST_EMAIL');
49+
$to = $this->testEmail;
4550
$subject = 'Test HTML Subject';
4651
$content = '<h1>Test HTML Content</h1><p>This is a test email with HTML content.</p>';
47-
$fromEmail = \getenv('RESEND_TEST_EMAIL');
52+
$fromEmail = $this->testEmail;
4853

4954
$message = new Email(
5055
to: [$to],
@@ -55,21 +60,18 @@ public function testSendEmailWithHtml(): void
5560
html: true,
5661
);
5762

58-
$response = $sender->send($message);
63+
$response = $this->sender->send($message);
5964

6065
$this->assertResponse($response);
6166
}
6267

6368
public function testSendEmailWithReplyTo(): void
6469
{
65-
$key = \getenv('RESEND_API_KEY');
66-
$sender = new Resend($key);
67-
68-
$to = \getenv('RESEND_TEST_EMAIL');
70+
$to = $this->testEmail;
6971
$subject = 'Test Reply-To Subject';
7072
$content = 'Test Content with Reply-To';
71-
$fromEmail = \getenv('RESEND_TEST_EMAIL');
72-
$replyToEmail = \getenv('RESEND_TEST_EMAIL');
73+
$fromEmail = $this->testEmail;
74+
$replyToEmail = $this->testEmail;
7375

7476
$message = new Email(
7577
to: [$to],
@@ -81,21 +83,18 @@ public function testSendEmailWithReplyTo(): void
8183
replyToEmail: $replyToEmail,
8284
);
8385

84-
$response = $sender->send($message);
86+
$response = $this->sender->send($message);
8587

8688
$this->assertResponse($response);
8789
}
8890

8991
public function testSendMultipleEmails(): void
9092
{
91-
$key = \getenv('RESEND_API_KEY');
92-
$sender = new Resend($key);
93-
94-
$to1 = \getenv('RESEND_TEST_EMAIL');
95-
$to2 = \getenv('RESEND_TEST_EMAIL');
93+
$to1 = $this->testEmail;
94+
$to2 = $this->testEmail;
9695
$subject = 'Test Batch Subject';
9796
$content = 'Test Batch Content';
98-
$fromEmail = \getenv('RESEND_TEST_EMAIL');
97+
$fromEmail = $this->testEmail;
9998

10099
$message = new Email(
101100
to: [$to1, $to2],
@@ -105,7 +104,7 @@ public function testSendMultipleEmails(): void
105104
fromEmail: $fromEmail,
106105
);
107106

108-
$response = $sender->send($message);
107+
$response = $this->sender->send($message);
109108

110109
$this->assertEquals(2, $response['deliveredTo'], \var_export($response, true));
111110
$this->assertEquals('', $response['results'][0]['error'], \var_export($response, true));
@@ -119,13 +118,10 @@ public function testSendEmailWithAttachmentsThrowsException(): void
119118
$this->expectException(\Exception::class);
120119
$this->expectExceptionMessage('Resend does not support attachments at this time');
121120

122-
$key = \getenv('RESEND_API_KEY');
123-
$sender = new Resend($key);
124-
125-
$to = \getenv('RESEND_TEST_EMAIL');
121+
$to = $this->testEmail;
126122
$subject = 'Test Subject';
127123
$content = 'Test Content';
128-
$fromEmail = \getenv('RESEND_TEST_EMAIL');
124+
$fromEmail = $this->testEmail;
129125

130126
$message = new Email(
131127
to: [$to],
@@ -140,6 +136,6 @@ public function testSendEmailWithAttachmentsThrowsException(): void
140136
)],
141137
);
142138

143-
$sender->send($message);
139+
$this->sender->send($message);
144140
}
145141
}

0 commit comments

Comments
 (0)