switched to paddle inline checkout, removed paypal and most of stripe. added product sync between app and paddle.

This commit is contained in:
Codex Agent
2025-10-27 17:26:39 +01:00
parent ecf5a23b28
commit 5432456ffd
117 changed files with 4114 additions and 3639 deletions

View File

@@ -2,19 +2,17 @@
namespace Tests\Feature;
use App\Mail\Welcome;
use App\Models\Package;
use App\Models\User;
use App\Models\Tenant;
use App\Models\PackagePurchase;
use App\Models\Tenant;
use App\Models\TenantPackage;
use App\Models\User;
use Illuminate\Foundation\Testing\RefreshDatabase;
use Tests\TestCase;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Mail;
use App\Mail\Welcome;
use App\Mail\PurchaseConfirmation;
use Stripe\StripeClient;
use Mockery;
use Tests\TestCase;
class FullUserFlowTest extends TestCase
{
@@ -85,9 +83,9 @@ class FullUserFlowTest extends TestCase
$paidPackage = Package::factory()->reseller()->create(['price' => 10]);
// Mock Stripe für Erfolg
$this->mock(StripeClient::class, function ($mock) use ($user, $tenant, $paidPackage) {
$this->mock(StripeClient::class, function ($mock) {
$mock->shouldReceive('checkout->sessions->create')
->andReturn((object)['url' => 'https://mock-stripe.com']);
->andReturn((object) ['url' => 'https://mock-stripe.com']);
});
// Simuliere Kauf (GET zu buy.packages, aber da es Redirect ist, prüfe Session oder folge)
@@ -108,6 +106,7 @@ class FullUserFlowTest extends TestCase
'tenant_id' => $tenant->id,
'package_id' => $paidPackage->id,
'type' => 'reseller_subscription',
'provider' => 'stripe',
'provider_id' => 'stripe',
'price' => 10,
'purchased_at' => now(),
@@ -120,6 +119,7 @@ class FullUserFlowTest extends TestCase
'tenant_id' => $tenant->id,
'package_id' => $paidPackage->id,
'type' => 'reseller_subscription',
'provider' => 'stripe',
]);
// Überprüfe, dass 2 Purchases existieren (Free + Paid)