diff --git a/resources/views/admin/plans/index.blade.php b/resources/views/admin/plans/index.blade.php index 790fe2c..a9cf3d8 100644 --- a/resources/views/admin/plans/index.blade.php +++ b/resources/views/admin/plans/index.blade.php @@ -120,7 +120,10 @@

套餐列表

后续将从这里进入套餐详情、授权项与订阅联动。

- 新建套餐 + @php + $createPlanUrl = '/admin/plans/create?' . \Illuminate\Support\Arr::query(['back' => $selfWithoutBack]); + @endphp + 新建套餐 diff --git a/tests/Feature/AdminPlanIndexCreateLinkContainsBackTest.php b/tests/Feature/AdminPlanIndexCreateLinkContainsBackTest.php new file mode 100644 index 0000000..8c598b1 --- /dev/null +++ b/tests/Feature/AdminPlanIndexCreateLinkContainsBackTest.php @@ -0,0 +1,41 @@ +seed(); + + $this->post('/admin/login', [ + 'email' => 'platform.admin@demo.local', + 'password' => 'Platform@123456', + ])->assertRedirect('/admin'); + } + + public function test_create_plan_link_should_carry_back_to_index_self_without_back(): void + { + $this->loginAsPlatformAdmin(); + + $res = $this->get('/admin/plans?status=active&back=' . urlencode('/admin/platform-orders')); + $res->assertOk(); + + $expectedBack = '/admin/plans?' . Arr::query([ + 'status' => 'active', + ]); + + $expectedCreateUrl = '/admin/plans/create?' . Arr::query([ + 'back' => $expectedBack, + ]); + + $res->assertSee($expectedCreateUrl, false); + $res->assertDontSee('back%3D', false); + } +}