Changeset View
Changeset View
Standalone View
Standalone View
src/tests/Feature/EntitlementTest.php
Show First 20 Lines • Show All 55 Lines • ▼ Show 20 Lines | public function testUserAddEntitlement(): void | ||||
$domain->assignPackage($package_domain, $owner); | $domain->assignPackage($package_domain, $owner); | ||||
$owner->assignPackage($package_kolab); | $owner->assignPackage($package_kolab); | ||||
$owner->assignPackage($package_kolab, $user); | $owner->assignPackage($package_kolab, $user); | ||||
$wallet = $owner->wallets->first(); | $wallet = $owner->wallets->first(); | ||||
$this->assertCount(4, $owner->entitlements()->get()); | $this->assertCount(4, $owner->entitlements()->get()); | ||||
$this->assertCount(1, $sku_domain->entitlements()->where('owner_id', $owner->id)->get()); | $this->assertCount(1, $sku_domain->entitlements()->where('wallet_id', $wallet->id)->get()); | ||||
$this->assertCount(2, $sku_mailbox->entitlements()->where('owner_id', $owner->id)->get()); | $this->assertCount(2, $sku_mailbox->entitlements()->where('wallet_id', $wallet->id)->get()); | ||||
$this->assertCount(9, $wallet->entitlements); | $this->assertCount(9, $wallet->entitlements); | ||||
$this->backdateEntitlements($owner->entitlements, Carbon::now()->subMonths(1)); | $this->backdateEntitlements($owner->entitlements, Carbon::now()->subMonths(1)); | ||||
$wallet->chargeEntitlements(); | $wallet->chargeEntitlements(); | ||||
$this->assertTrue($wallet->fresh()->balance < 0); | $this->assertTrue($wallet->fresh()->balance < 0); | ||||
} | } | ||||
Show All 12 Lines | public function testEntitlementFunctions(): void | ||||
$user->assignPackage($package); | $user->assignPackage($package); | ||||
$wallet = $user->wallets()->first(); | $wallet = $user->wallets()->first(); | ||||
$this->assertNotNull($wallet); | $this->assertNotNull($wallet); | ||||
$sku = \App\Sku::where('title', 'mailbox')->first(); | $sku = \App\Sku::where('title', 'mailbox')->first(); | ||||
$this->assertNotNull($sku); | $this->assertNotNull($sku); | ||||
$entitlement = Entitlement::where('owner_id', $user->id)->where('sku_id', $sku->id)->first(); | $entitlement = Entitlement::where('wallet_id', $wallet->id)->where('sku_id', $sku->id)->first(); | ||||
$this->assertNotNull($entitlement); | $this->assertNotNull($entitlement); | ||||
$e_sku = $entitlement->sku; | $e_sku = $entitlement->sku; | ||||
$this->assertSame($sku->id, $e_sku->id); | $this->assertSame($sku->id, $e_sku->id); | ||||
$e_wallet = $entitlement->wallet; | $e_wallet = $entitlement->wallet; | ||||
$this->assertSame($wallet->id, $e_wallet->id); | $this->assertSame($wallet->id, $e_wallet->id); | ||||
$e_owner = $entitlement->owner; | |||||
$this->assertEquals($user->id, $e_owner->id); | |||||
$e_entitleable = $entitlement->entitleable; | $e_entitleable = $entitlement->entitleable; | ||||
$this->assertEquals($user->id, $e_entitleable->id); | $this->assertEquals($user->id, $e_entitleable->id); | ||||
$this->assertTrue($e_entitleable instanceof \App\User); | $this->assertTrue($e_entitleable instanceof \App\User); | ||||
} | } | ||||
} | } |