'extend_gallery_30d', 'label' => 'Galerie +30 Tage', 'active' => true, 'sort' => 10, 'extra_gallery_days' => 30, 'metadata' => ['price_eur' => 4], ]); PackageAddon::create([ 'key' => 'extend_gallery_90d', 'label' => 'Galerie +90 Tage', 'active' => true, 'sort' => 20, 'extra_gallery_days' => 90, 'variant_id' => 'variant_only', 'metadata' => [], ]); $response = $this->authenticatedRequest('GET', '/api/v1/tenant/addons/catalog'); $response->assertOk(); $response->assertJsonFragment([ 'key' => 'extend_gallery_30d', 'price_id' => 'paypal', ]); $response->assertJsonMissing([ 'key' => 'extend_gallery_90d', ]); } public function test_lemonsqueezy_catalog_only_returns_addons_with_variant(): void { Config::set('package-addons.provider', 'lemonsqueezy'); PackageAddon::create([ 'key' => 'extend_gallery_30d', 'label' => 'Galerie +30 Tage', 'active' => true, 'sort' => 10, 'extra_gallery_days' => 30, 'variant_id' => 'var_30d', 'metadata' => ['price_eur' => 4], ]); PackageAddon::create([ 'key' => 'extend_gallery_90d', 'label' => 'Galerie +90 Tage', 'active' => true, 'sort' => 20, 'extra_gallery_days' => 90, 'metadata' => ['price_eur' => 10], ]); $response = $this->authenticatedRequest('GET', '/api/v1/tenant/addons/catalog'); $response->assertOk(); $response->assertJsonFragment([ 'key' => 'extend_gallery_30d', 'price_id' => 'var_30d', ]); $response->assertJsonMissing([ 'key' => 'extend_gallery_90d', ]); } }