mirror of
https://github.com/anikeen-com/id.git
synced 2026-10-31 20:59:32 +00:00
Check out a running service from its start
AppSubscription::checkout() takes an optional $startsAt (needs id-core
with starts_at support on PUT v1/client/subscriptions/{id}/checkout).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
a1707e9189
commit
c4a42b4ddc
4 files changed
+24
-3
No files matched your search
@@ -76,6 +76,17 @@ class AppSubscriptionsTest extends TestCase
|
||||
$this->assertSame(['refund' => true], $this->sentJson(4));
|
||||
}
|
||||
|
||||
public function test_a_running_service_is_checked_out_from_its_start(): void
|
||||
{
|
||||
$this->respond(201, $this->subscription());
|
||||
$this->respond(200, $this->subscription(['active' => true]));
|
||||
|
||||
$subscription = $this->owner()->appSubscriptions()->create(['name' => '.de TLD', 'unit' => 'year', 'price' => '5.19']);
|
||||
$subscription->checkout(new \DateTimeImmutable('2026-05-19 11:33:58', new \DateTimeZone('UTC')));
|
||||
|
||||
$this->assertSame(['starts_at' => '2026-05-19T11:33:58+00:00'], $this->sentJson(1));
|
||||
}
|
||||
|
||||
public function test_errors_carry_status_and_error_code(): void
|
||||
{
|
||||
$this->respond(409, ['message' => 'Product subscription has already been cancelled.', 'error' => 'already_cancelled']);
|
||||
|
||||
Reference in new issue
Block a user