feat: clean credits users
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
<?php
|
||||
|
||||
use App\Enums\BillingProductPurpose;
|
||||
use App\Enums\PaymentTransactionStatus;
|
||||
use App\Enums\PaymentTransactionType;
|
||||
use App\Mail\PaymentInvoiceMail;
|
||||
use App\Models\BillingProduct;
|
||||
use App\Models\PaymentTransaction;
|
||||
use App\Models\User;
|
||||
use Illuminate\Foundation\Testing\RefreshDatabase;
|
||||
|
||||
uses(RefreshDatabase::class);
|
||||
|
||||
it('renders invoice emails without the retired credit system', function () {
|
||||
$user = User::factory()->create([
|
||||
'locale' => 'fr',
|
||||
]);
|
||||
$product = BillingProduct::query()->create([
|
||||
'name' => 'Bowli Plus',
|
||||
'purpose' => BillingProductPurpose::SUBSCRIPTION,
|
||||
'amount' => 999,
|
||||
'currency' => 'eur',
|
||||
]);
|
||||
$transaction = PaymentTransaction::query()->create([
|
||||
'user_id' => $user->getKey(),
|
||||
'billing_product_id' => $product->getKey(),
|
||||
'type' => PaymentTransactionType::SUBSCRIPTION_INVOICE,
|
||||
'status' => PaymentTransactionStatus::PAID,
|
||||
'amount' => 999,
|
||||
'currency' => 'eur',
|
||||
'stripe_invoice_id' => 'in_bowli',
|
||||
'invoice_url' => 'https://invoice.stripe.test/in_bowli',
|
||||
]);
|
||||
|
||||
$mail = new PaymentInvoiceMail(
|
||||
$user,
|
||||
$transaction->load('billingProduct'),
|
||||
);
|
||||
|
||||
$mail
|
||||
->assertSeeInHtml('Bowli Plus')
|
||||
->assertSeeInHtml('9,99 EUR')
|
||||
->assertDontSeeInHtml('Crédits')
|
||||
->assertDontSeeInHtml('Credits');
|
||||
});
|
||||
Reference in New Issue
Block a user