Skip to content

Commit 69c4cc9

Browse files
committed
Create subscriber when subscribing to resource (form, tag, sequence)
1 parent 8354a55 commit 69c4cc9

File tree

1 file changed

+48
-8
lines changed

1 file changed

+48
-8
lines changed

tests/ConvertKitAPITest.php

Lines changed: 48 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1134,16 +1134,26 @@ public function testGetSequencesPagination()
11341134
*/
11351135
public function testAddSubscriberToSequenceByEmail()
11361136
{
1137+
// Create subscriber.
1138+
$emailAddress = $this->generateEmailAddress();
1139+
$subscriber = $this->api->create_subscriber(
1140+
email_address: $emailAddress
1141+
);
1142+
1143+
// Set subscriber_id to ensure subscriber is unsubscribed after test.
1144+
$this->subscriber_ids[] = $subscriber->subscriber->id;
1145+
1146+
// Add subscriber to sequence.
11371147
$result = $this->api->add_subscriber_to_sequence_by_email(
11381148
sequence_id: $_ENV['CONVERTKIT_API_SEQUENCE_ID'],
1139-
email_address: $_ENV['CONVERTKIT_API_SUBSCRIBER_EMAIL']
1149+
email_address: $emailAddress
11401150
);
11411151
$this->assertInstanceOf('stdClass', $result);
11421152
$this->assertArrayHasKey('subscriber', get_object_vars($result));
11431153
$this->assertArrayHasKey('id', get_object_vars($result->subscriber));
11441154
$this->assertEquals(
11451155
get_object_vars($result->subscriber)['email_address'],
1146-
$_ENV['CONVERTKIT_API_SUBSCRIBER_EMAIL']
1156+
$emailAddress
11471157
);
11481158
}
11491159

@@ -1190,14 +1200,23 @@ public function testAddSubscriberToSequenceByEmailWithInvalidEmailAddress()
11901200
*/
11911201
public function testAddSubscriberToSequence()
11921202
{
1203+
// Create subscriber.
1204+
$subscriber = $this->api->create_subscriber(
1205+
email_address: $this->generateEmailAddress()
1206+
);
1207+
1208+
// Set subscriber_id to ensure subscriber is unsubscribed after test.
1209+
$this->subscriber_ids[] = $subscriber->subscriber->id;
1210+
1211+
// Add subscriber to sequence.
11931212
$result = $this->api->add_subscriber_to_sequence(
11941213
sequence_id: (int) $_ENV['CONVERTKIT_API_SEQUENCE_ID'],
1195-
subscriber_id: $_ENV['CONVERTKIT_API_SUBSCRIBER_ID']
1214+
subscriber_id: $subscriber->subscriber->id
11961215
);
11971216
$this->assertInstanceOf('stdClass', $result);
11981217
$this->assertArrayHasKey('subscriber', get_object_vars($result));
11991218
$this->assertArrayHasKey('id', get_object_vars($result->subscriber));
1200-
$this->assertEquals(get_object_vars($result->subscriber)['id'], $_ENV['CONVERTKIT_API_SUBSCRIBER_ID']);
1219+
$this->assertEquals(get_object_vars($result->subscriber)['id'], $subscriber->subscriber->id);
12011220
}
12021221

12031222
/**
@@ -2388,14 +2407,27 @@ public function testGetResourcesInvalidResourceType()
23882407
*/
23892408
public function testAddSubscriberToFormByEmail()
23902409
{
2410+
// Create subscriber.
2411+
$emailAddress = $this->generateEmailAddress();
2412+
$subscriber = $this->api->create_subscriber(
2413+
email_address: $emailAddress
2414+
);
2415+
2416+
// Set subscriber_id to ensure subscriber is unsubscribed after test.
2417+
$this->subscriber_ids[] = $subscriber->subscriber->id;
2418+
2419+
// Add subscriber to form.
23912420
$result = $this->api->add_subscriber_to_form_by_email(
23922421
form_id: (int) $_ENV['CONVERTKIT_API_FORM_ID'],
2393-
email_address: $_ENV['CONVERTKIT_API_SUBSCRIBER_EMAIL']
2422+
email_address: $emailAddress
23942423
);
23952424
$this->assertInstanceOf('stdClass', $result);
23962425
$this->assertArrayHasKey('subscriber', get_object_vars($result));
23972426
$this->assertArrayHasKey('id', get_object_vars($result->subscriber));
2398-
$this->assertEquals(get_object_vars($result->subscriber)['id'], $_ENV['CONVERTKIT_API_SUBSCRIBER_ID']);
2427+
$this->assertEquals(
2428+
get_object_vars($result->subscriber)['email_address'],
2429+
$emailAddress
2430+
);
23992431
}
24002432

24012433
/**
@@ -2441,14 +2473,22 @@ public function testAddSubscriberToFormByEmailWithInvalidEmailAddress()
24412473
*/
24422474
public function testAddSubscriberToForm()
24432475
{
2476+
// Create subscriber.
2477+
$subscriber = $this->api->create_subscriber(
2478+
email_address: $this->generateEmailAddress()
2479+
);
2480+
2481+
// Set subscriber_id to ensure subscriber is unsubscribed after test.
2482+
$this->subscriber_ids[] = $subscriber->subscriber->id;
2483+
24442484
$result = $this->api->add_subscriber_to_form(
24452485
form_id: (int) $_ENV['CONVERTKIT_API_FORM_ID'],
2446-
subscriber_id: $_ENV['CONVERTKIT_API_SUBSCRIBER_ID']
2486+
subscriber_id: $subscriber->subscriber->id
24472487
);
24482488
$this->assertInstanceOf('stdClass', $result);
24492489
$this->assertArrayHasKey('subscriber', get_object_vars($result));
24502490
$this->assertArrayHasKey('id', get_object_vars($result->subscriber));
2451-
$this->assertEquals(get_object_vars($result->subscriber)['id'], $_ENV['CONVERTKIT_API_SUBSCRIBER_ID']);
2491+
$this->assertEquals(get_object_vars($result->subscriber)['id'], $subscriber->subscriber->id);
24522492
}
24532493

24542494
/**

0 commit comments

Comments
 (0)