Server IP : 66.29.132.124 / Your IP : 18.222.91.173 Web Server : LiteSpeed System : Linux business141.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64 User : wavevlvu ( 1524) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/wavevlvu/book24.ng/vendor/bavix/laravel-wallet/tests/ |
Upload File : |
<?php namespace Bavix\Wallet\Test; use Bavix\Wallet\Objects\Operation; use Bavix\Wallet\Test\Common\Models\Transaction; use Bavix\Wallet\Test\Common\Models\TransactionMoney; use Bavix\Wallet\Test\Factories\BuyerFactory; use Bavix\Wallet\Test\Models\Buyer; class WalletExtensionTest extends TestCase { /** * @return void */ public function setUp(): void { parent::setUp(); $this->app->bind(Operation::class, Objects\Operation::class); } /** * @return void */ public function testCustomAttribute(): void { /** * @var Buyer $buyer */ $buyer = BuyerFactory::new()->create(); self::assertFalse($buyer->relationLoaded('wallet')); $transaction = $buyer->deposit(1000, ['bank_method' => 'VietComBank']); self::assertEquals($transaction->amount, $buyer->balance); self::assertInstanceOf(Transaction::class, $transaction); self::assertEquals('VietComBank', $transaction->bank_method); } /** * @return void */ public function testTransactionMoneyAttribute(): void { $this->app['config']->set('wallet.transaction.model', TransactionMoney::class); /** * @var Buyer $buyer * @var TransactionMoney $transaction */ $buyer = BuyerFactory::new()->create(); self::assertFalse($buyer->relationLoaded('wallet')); $transaction = $buyer->deposit(1000, ['currency' => 'EUR']); self::assertEquals($transaction->amount, $buyer->balance); self::assertInstanceOf(TransactionMoney::class, $transaction); self::assertEquals(1000, $transaction->currency->getAmount()); self::assertEquals('EUR', $transaction->currency->getCurrency()->getCode()); } /** * @return void */ public function testNoCustomAttribute(): void { /** * @var Buyer $buyer */ $buyer = BuyerFactory::new()->create(); self::assertFalse($buyer->relationLoaded('wallet')); $transaction = $buyer->deposit(1000); self::assertEquals($transaction->amount, $buyer->balance); self::assertInstanceOf(Transaction::class, $transaction); self::assertNull($transaction->bank_method); } }