Skip to content

Commit

Permalink
Merge pull request #93 from ConvertKit/v4-api-improve-subscriber-tests
Browse files Browse the repository at this point in the history
v4 API: Improve Subscriber Tests
  • Loading branch information
n7studios authored Apr 4, 2024
2 parents dba401b + 0abfdc3 commit 59c50ab
Showing 1 changed file with 48 additions and 8 deletions.
56 changes: 48 additions & 8 deletions tests/ConvertKitAPITest.php
Original file line number Diff line number Diff line change
Expand Up @@ -1162,16 +1162,26 @@ public function testGetSequencesPagination()
*/
public function testAddSubscriberToSequenceByEmail()
{
// Create subscriber.
$emailAddress = $this->generateEmailAddress();
$subscriber = $this->api->create_subscriber(
email_address: $emailAddress
);

// Set subscriber_id to ensure subscriber is unsubscribed after test.
$this->subscriber_ids[] = $subscriber->subscriber->id;

// Add subscriber to sequence.
$result = $this->api->add_subscriber_to_sequence_by_email(
sequence_id: $_ENV['CONVERTKIT_API_SEQUENCE_ID'],
email_address: $_ENV['CONVERTKIT_API_SUBSCRIBER_EMAIL']
email_address: $emailAddress
);
$this->assertInstanceOf('stdClass', $result);
$this->assertArrayHasKey('subscriber', get_object_vars($result));
$this->assertArrayHasKey('id', get_object_vars($result->subscriber));
$this->assertEquals(
get_object_vars($result->subscriber)['email_address'],
$_ENV['CONVERTKIT_API_SUBSCRIBER_EMAIL']
$emailAddress
);
}

Expand Down Expand Up @@ -1218,14 +1228,23 @@ public function testAddSubscriberToSequenceByEmailWithInvalidEmailAddress()
*/
public function testAddSubscriberToSequence()
{
// Create subscriber.
$subscriber = $this->api->create_subscriber(
email_address: $this->generateEmailAddress()
);

// Set subscriber_id to ensure subscriber is unsubscribed after test.
$this->subscriber_ids[] = $subscriber->subscriber->id;

// Add subscriber to sequence.
$result = $this->api->add_subscriber_to_sequence(
sequence_id: (int) $_ENV['CONVERTKIT_API_SEQUENCE_ID'],
subscriber_id: $_ENV['CONVERTKIT_API_SUBSCRIBER_ID']
subscriber_id: $subscriber->subscriber->id
);
$this->assertInstanceOf('stdClass', $result);
$this->assertArrayHasKey('subscriber', get_object_vars($result));
$this->assertArrayHasKey('id', get_object_vars($result->subscriber));
$this->assertEquals(get_object_vars($result->subscriber)['id'], $_ENV['CONVERTKIT_API_SUBSCRIBER_ID']);
$this->assertEquals(get_object_vars($result->subscriber)['id'], $subscriber->subscriber->id);
}

/**
Expand Down Expand Up @@ -2416,14 +2435,27 @@ public function testGetResourcesInvalidResourceType()
*/
public function testAddSubscriberToFormByEmail()
{
// Create subscriber.
$emailAddress = $this->generateEmailAddress();
$subscriber = $this->api->create_subscriber(
email_address: $emailAddress
);

// Set subscriber_id to ensure subscriber is unsubscribed after test.
$this->subscriber_ids[] = $subscriber->subscriber->id;

// Add subscriber to form.
$result = $this->api->add_subscriber_to_form_by_email(
form_id: (int) $_ENV['CONVERTKIT_API_FORM_ID'],
email_address: $_ENV['CONVERTKIT_API_SUBSCRIBER_EMAIL']
email_address: $emailAddress
);
$this->assertInstanceOf('stdClass', $result);
$this->assertArrayHasKey('subscriber', get_object_vars($result));
$this->assertArrayHasKey('id', get_object_vars($result->subscriber));
$this->assertEquals(get_object_vars($result->subscriber)['id'], $_ENV['CONVERTKIT_API_SUBSCRIBER_ID']);
$this->assertEquals(
get_object_vars($result->subscriber)['email_address'],
$emailAddress
);
}

/**
Expand Down Expand Up @@ -2469,14 +2501,22 @@ public function testAddSubscriberToFormByEmailWithInvalidEmailAddress()
*/
public function testAddSubscriberToForm()
{
// Create subscriber.
$subscriber = $this->api->create_subscriber(
email_address: $this->generateEmailAddress()
);

// Set subscriber_id to ensure subscriber is unsubscribed after test.
$this->subscriber_ids[] = $subscriber->subscriber->id;

$result = $this->api->add_subscriber_to_form(
form_id: (int) $_ENV['CONVERTKIT_API_FORM_ID'],
subscriber_id: $_ENV['CONVERTKIT_API_SUBSCRIBER_ID']
subscriber_id: $subscriber->subscriber->id
);
$this->assertInstanceOf('stdClass', $result);
$this->assertArrayHasKey('subscriber', get_object_vars($result));
$this->assertArrayHasKey('id', get_object_vars($result->subscriber));
$this->assertEquals(get_object_vars($result->subscriber)['id'], $_ENV['CONVERTKIT_API_SUBSCRIBER_ID']);
$this->assertEquals(get_object_vars($result->subscriber)['id'], $subscriber->subscriber->id);
}

/**
Expand Down

0 comments on commit 59c50ab

Please sign in to comment.