From a0e37d1624e98ab4a08e5e9a1d1867836d030498 Mon Sep 17 00:00:00 2001 From: ksvirkou-hubspot Date: Tue, 8 Apr 2025 16:39:53 +0300 Subject: [PATCH 1/3] Add discoveries: CRM Commerce Invoices, Objects Deal Splits, Exports and Marketing Emails --- lib/Discovery/Crm/Commerce/Discovery.php | 10 ++++++ .../Crm/Commerce/Invoices/Discovery.php | 15 +++++++++ lib/Discovery/Crm/Discovery.php | 2 ++ lib/Discovery/Crm/Exports/Discovery.php | 11 +++++++ .../Crm/Objects/DealSplits/Discovery.php | 11 +++++++ lib/Discovery/Crm/Objects/Discovery.php | 29 ++++++++--------- lib/Discovery/Marketing/Discovery.php | 1 + lib/Discovery/Marketing/Emails/Discovery.php | 13 ++++++++ .../Discovery/Crm/Commerce/DiscoverySpec.php | 27 ++++++++++++++++ .../Crm/Commerce/Invoices/DiscoverySpec.php | 31 +++++++++++++++++++ tests/spec/Discovery/Crm/DiscoverySpec.php | 2 ++ .../Discovery/Crm/Exports/DiscoverySpec.php | 27 ++++++++++++++++ .../Crm/Objects/DealSplits/DiscoverySpec.php | 27 ++++++++++++++++ .../Discovery/Crm/Objects/DiscoverySpec.php | 2 ++ .../Discovery/Marketing/DiscoverySpec.php | 1 + .../Marketing/Emails/DiscoverySpec.php | 29 +++++++++++++++++ 16 files changed, 224 insertions(+), 14 deletions(-) create mode 100644 lib/Discovery/Crm/Commerce/Discovery.php create mode 100644 lib/Discovery/Crm/Commerce/Invoices/Discovery.php create mode 100644 lib/Discovery/Crm/Exports/Discovery.php create mode 100644 lib/Discovery/Crm/Objects/DealSplits/Discovery.php create mode 100644 lib/Discovery/Marketing/Emails/Discovery.php create mode 100644 tests/spec/Discovery/Crm/Commerce/DiscoverySpec.php create mode 100644 tests/spec/Discovery/Crm/Commerce/Invoices/DiscoverySpec.php create mode 100644 tests/spec/Discovery/Crm/Exports/DiscoverySpec.php create mode 100644 tests/spec/Discovery/Crm/Objects/DealSplits/DiscoverySpec.php create mode 100644 tests/spec/Discovery/Marketing/Emails/DiscoverySpec.php diff --git a/lib/Discovery/Crm/Commerce/Discovery.php b/lib/Discovery/Crm/Commerce/Discovery.php new file mode 100644 index 000000000..bd72d0f91 --- /dev/null +++ b/lib/Discovery/Crm/Commerce/Discovery.php @@ -0,0 +1,10 @@ +beConstructedWith($client, $config); + } + + public function it_is_initializable() + { + $this->shouldHaveType(Discovery::class); + } + + public function it_creates_clients() + { + $this->invoices()->shouldHaveType(InvoicesDiscovery::class); + } +} diff --git a/tests/spec/Discovery/Crm/Commerce/Invoices/DiscoverySpec.php b/tests/spec/Discovery/Crm/Commerce/Invoices/DiscoverySpec.php new file mode 100644 index 000000000..fc687df9a --- /dev/null +++ b/tests/spec/Discovery/Crm/Commerce/Invoices/DiscoverySpec.php @@ -0,0 +1,31 @@ +beConstructedWith($client, $config); + } + + public function it_is_initializable() + { + $this->shouldHaveType(Discovery::class); + } + + public function it_creates_clients() + { + $this->basicApi()->shouldHaveType(BasicApi::class); + $this->batchApi()->shouldHaveType(BatchApi::class); + $this->searchApi()->shouldHaveType(SearchApi::class); + } +} diff --git a/tests/spec/Discovery/Crm/DiscoverySpec.php b/tests/spec/Discovery/Crm/DiscoverySpec.php index 546f372db..46a219af3 100644 --- a/tests/spec/Discovery/Crm/DiscoverySpec.php +++ b/tests/spec/Discovery/Crm/DiscoverySpec.php @@ -22,9 +22,11 @@ public function it_is_initializable() public function it_creates_clients() { $this->associations()->shouldHaveType(\HubSpot\Discovery\Crm\Associations\Discovery::class); + $this->commerce()->shouldHaveType(\HubSpot\Discovery\Crm\Commerce\Discovery::class); $this->companies()->shouldHaveType(\HubSpot\Discovery\Crm\Companies\Discovery::class); $this->contacts()->shouldHaveType(\HubSpot\Discovery\Crm\Contacts\Discovery::class); $this->deals()->shouldHaveType(\HubSpot\Discovery\Crm\Deals\Discovery::class); + $this->exports()->shouldHaveType(\HubSpot\Discovery\Crm\Exports\Discovery::class); $this->extensions()->shouldHaveType(\HubSpot\Discovery\Crm\Extensions\Discovery::class); $this->imports()->shouldHaveType(\HubSpot\Discovery\Crm\Imports\Discovery::class); $this->lineItems()->shouldHaveType(\HubSpot\Discovery\Crm\LineItems\Discovery::class); diff --git a/tests/spec/Discovery/Crm/Exports/DiscoverySpec.php b/tests/spec/Discovery/Crm/Exports/DiscoverySpec.php new file mode 100644 index 000000000..2226aa60c --- /dev/null +++ b/tests/spec/Discovery/Crm/Exports/DiscoverySpec.php @@ -0,0 +1,27 @@ +beConstructedWith($client, $config); + } + + public function it_is_initializable() + { + $this->shouldHaveType(Discovery::class); + } + + public function it_creates_clients() + { + $this->publicExportsApi()->shouldHaveType(PublicExportsApi::class); + } +} diff --git a/tests/spec/Discovery/Crm/Objects/DealSplits/DiscoverySpec.php b/tests/spec/Discovery/Crm/Objects/DealSplits/DiscoverySpec.php new file mode 100644 index 000000000..af8087484 --- /dev/null +++ b/tests/spec/Discovery/Crm/Objects/DealSplits/DiscoverySpec.php @@ -0,0 +1,27 @@ +beConstructedWith($client, $config); + } + + public function it_is_initializable() + { + $this->shouldHaveType(Discovery::class); + } + + public function it_creates_clients() + { + $this->batchApi()->shouldHaveType(BatchApi::class); + } +} diff --git a/tests/spec/Discovery/Crm/Objects/DiscoverySpec.php b/tests/spec/Discovery/Crm/Objects/DiscoverySpec.php index 9f2dcf033..2c0b216e9 100644 --- a/tests/spec/Discovery/Crm/Objects/DiscoverySpec.php +++ b/tests/spec/Discovery/Crm/Objects/DiscoverySpec.php @@ -9,6 +9,7 @@ use HubSpot\Config; use HubSpot\Discovery\Crm\Objects\Calls\Discovery as CallsDiscovery; use HubSpot\Discovery\Crm\Objects\Communications\Discovery as CommunicationsDiscovery; +use HubSpot\Discovery\Crm\Objects\DealSplits\Discovery as DealSplitsDiscovery; use HubSpot\Discovery\Crm\Objects\Discovery; use HubSpot\Discovery\Crm\Objects\Emails\Discovery as EmailsDiscovery; use HubSpot\Discovery\Crm\Objects\FeedbackSubmissions\Discovery as FeedbackSubmissionsDiscovery; @@ -39,6 +40,7 @@ public function it_creates_clients() $this->batchApi()->shouldHaveType(BatchApi::class); $this->calls()->shouldHaveType(CallsDiscovery::class); $this->communications()->shouldHaveType(CommunicationsDiscovery::class); + $this->dealSplits()->shouldHaveType(DealSplitsDiscovery::class); $this->emails()->shouldHaveType(EmailsDiscovery::class); $this->feedbackSubmissions()->shouldHaveType(FeedbackSubmissionsDiscovery::class); $this->goals()->shouldHaveType(GoalsDiscovery::class); diff --git a/tests/spec/Discovery/Marketing/DiscoverySpec.php b/tests/spec/Discovery/Marketing/DiscoverySpec.php index 0e9282efb..95ac2f5e3 100644 --- a/tests/spec/Discovery/Marketing/DiscoverySpec.php +++ b/tests/spec/Discovery/Marketing/DiscoverySpec.php @@ -21,6 +21,7 @@ public function it_is_initializable() public function it_creates_clients() { + $this->emails()->shouldHaveType(\HubSpot\Discovery\Marketing\Emails\Discovery::class); $this->events()->shouldHaveType(\HubSpot\Discovery\Marketing\Events\Discovery::class); $this->forms()->shouldHaveType(\HubSpot\Discovery\Marketing\Forms\Discovery::class); $this->transactional()->shouldHaveType(\HubSpot\Discovery\Marketing\Transactional\Discovery::class); diff --git a/tests/spec/Discovery/Marketing/Emails/DiscoverySpec.php b/tests/spec/Discovery/Marketing/Emails/DiscoverySpec.php new file mode 100644 index 000000000..d8e754a97 --- /dev/null +++ b/tests/spec/Discovery/Marketing/Emails/DiscoverySpec.php @@ -0,0 +1,29 @@ +beConstructedWith($client, $config); + } + + public function it_is_initializable() + { + $this->shouldHaveType(Discovery::class); + } + + public function it_creates_clients() + { + $this->marketingEmailsApi()->shouldHaveType(MarketingEmailsApi::class); + $this->statisticsApi()->shouldHaveType(StatisticsApi::class); + } +} From a9f7ea7174ed266fe79c1baf05cc9bcacbba3f8e Mon Sep 17 00:00:00 2001 From: ksvirkou-hubspot Date: Tue, 8 Apr 2025 16:45:09 +0300 Subject: [PATCH 2/3] fix CRM Commerce Invoices --- lib/Discovery/Crm/Commerce/Discovery.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/Discovery/Crm/Commerce/Discovery.php b/lib/Discovery/Crm/Commerce/Discovery.php index bd72d0f91..a7ea6e080 100644 --- a/lib/Discovery/Crm/Commerce/Discovery.php +++ b/lib/Discovery/Crm/Commerce/Discovery.php @@ -5,6 +5,6 @@ use HubSpot\Discovery\DiscoveryBase; /** - * @method Commerce\Discovery commerce() + * @method Invoices\Discovery invoices() */ class Discovery extends DiscoveryBase {} From 2578140c10fa42a0b80a4f9185b6c43090f7e202 Mon Sep 17 00:00:00 2001 From: ksvirkou-hubspot Date: Tue, 8 Apr 2025 16:52:34 +0300 Subject: [PATCH 3/3] CS fix --- .../Crm/Commerce/Invoices/Discovery.php | 6 ++-- lib/Discovery/Crm/Objects/Discovery.php | 30 +++++++++---------- lib/Discovery/Marketing/Events/Discovery.php | 12 ++++---- .../Discovery/Crm/Commerce/DiscoverySpec.php | 2 +- 4 files changed, 25 insertions(+), 25 deletions(-) diff --git a/lib/Discovery/Crm/Commerce/Invoices/Discovery.php b/lib/Discovery/Crm/Commerce/Invoices/Discovery.php index 3db3a7d72..bc35da563 100644 --- a/lib/Discovery/Crm/Commerce/Invoices/Discovery.php +++ b/lib/Discovery/Crm/Commerce/Invoices/Discovery.php @@ -8,8 +8,8 @@ use HubSpot\Discovery\DiscoveryBase; /** - * @method BasicApi basicApi() - * @method BatchApi batchApi() - * @method SearchApi searchApi() + * @method BasicApi basicApi() + * @method BatchApi batchApi() + * @method SearchApi searchApi() */ class Discovery extends DiscoveryBase {} diff --git a/lib/Discovery/Crm/Objects/Discovery.php b/lib/Discovery/Crm/Objects/Discovery.php index 6367390f5..30cba445f 100644 --- a/lib/Discovery/Crm/Objects/Discovery.php +++ b/lib/Discovery/Crm/Objects/Discovery.php @@ -8,20 +8,20 @@ use HubSpot\Discovery\DiscoveryBase; /** - * @method BasicApi basicApi() - * @method BatchApi batchApi() - * @method Calls\Discovery calls() - * @method Communications\Discovery communications() - * @method DealSplits\Discovery dealSplits() - * @method Emails\Discovery emails() - * @method FeedbackSubmissions\Discovery feedbackSubmissions() - * @method Goals\Discovery goals() - * @method Leads\Discovery leads() - * @method Meetings\Discovery meetings() - * @method Notes\Discovery notes() - * @method PostalMail\Discovery postalMail() - * @method SearchApi searchApi() - * @method Tasks\Discovery tasks() - * @method Taxes\Discovery taxes() + * @method BasicApi basicApi() + * @method BatchApi batchApi() + * @method Calls\Discovery calls() + * @method Communications\Discovery communications() + * @method DealSplits\Discovery dealSplits() + * @method Emails\Discovery emails() + * @method FeedbackSubmissions\Discovery feedbackSubmissions() + * @method Goals\Discovery goals() + * @method Leads\Discovery leads() + * @method Meetings\Discovery meetings() + * @method Notes\Discovery notes() + * @method PostalMail\Discovery postalMail() + * @method SearchApi searchApi() + * @method Tasks\Discovery tasks() + * @method Taxes\Discovery taxes() */ class Discovery extends DiscoveryBase {} diff --git a/lib/Discovery/Marketing/Events/Discovery.php b/lib/Discovery/Marketing/Events/Discovery.php index b26d43976..d8d533322 100644 --- a/lib/Discovery/Marketing/Events/Discovery.php +++ b/lib/Discovery/Marketing/Events/Discovery.php @@ -11,11 +11,11 @@ use HubSpot\Discovery\DiscoveryBase; /** - * @method AttendanceSubscriberStateChangesApi attendanceSubscriberStateChangesApi() - * @method BasicApi basicApi() - * @method ListAssociationsApi listAssociationsApi() - * @method ParticipantStateApi participantStateApi() - * @method SettingsApi settingsApi() - * @method SubscriberStateChangesApi subscriberStateChangesApi() + * @method AttendanceSubscriberStateChangesApi attendanceSubscriberStateChangesApi() + * @method BasicApi basicApi() + * @method ListAssociationsApi listAssociationsApi() + * @method ParticipantStateApi participantStateApi() + * @method SettingsApi settingsApi() + * @method SubscriberStateChangesApi subscriberStateChangesApi() */ class Discovery extends DiscoveryBase {} diff --git a/tests/spec/Discovery/Crm/Commerce/DiscoverySpec.php b/tests/spec/Discovery/Crm/Commerce/DiscoverySpec.php index 289fe53a0..eb794030b 100644 --- a/tests/spec/Discovery/Crm/Commerce/DiscoverySpec.php +++ b/tests/spec/Discovery/Crm/Commerce/DiscoverySpec.php @@ -4,8 +4,8 @@ use GuzzleHttp\Client; use HubSpot\Config; -use HubSpot\Discovery\Crm\Commerce\Invoices\Discovery as InvoicesDiscovery; use HubSpot\Discovery\Crm\Commerce\Discovery; +use HubSpot\Discovery\Crm\Commerce\Invoices\Discovery as InvoicesDiscovery; use PhpSpec\ObjectBehavior; class DiscoverySpec extends ObjectBehavior