From 8a988064800a19d15781df375b5b4eab266c26e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=90=9D=E5=8D=9C?= Date: Tue, 17 Mar 2026 03:51:06 +0800 Subject: [PATCH] tests(platform-orders): add guard for created-at range quick links --- ...eatedAtRangeQuickLinksShouldRenderTest.php | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 tests/Feature/AdminPlatformOrderCreatedAtRangeQuickLinksShouldRenderTest.php diff --git a/tests/Feature/AdminPlatformOrderCreatedAtRangeQuickLinksShouldRenderTest.php b/tests/Feature/AdminPlatformOrderCreatedAtRangeQuickLinksShouldRenderTest.php new file mode 100644 index 0000000..3844c16 --- /dev/null +++ b/tests/Feature/AdminPlatformOrderCreatedAtRangeQuickLinksShouldRenderTest.php @@ -0,0 +1,43 @@ +seed(); + + $this->post('/admin/login', [ + 'email' => 'platform.admin@demo.local', + 'password' => 'Platform@123456', + ])->assertRedirect('/admin'); + } + + public function test_platform_orders_created_at_range_quick_links_should_render_and_keep_safe_back(): void + { + $this->loginAsPlatformAdmin(); + + $res = $this->get('/admin/platform-orders?back=%2Fadmin&payment_status=paid'); + $res->assertOk(); + + $res->assertSee('data-role="platform-orders-created-range-quick-links"', false); + + $res->assertSee('data-role="po-created-range-today"', false); + $res->assertSee('data-role="po-created-range-7d"', false); + $res->assertSee('data-role="po-created-range-30d"', false); + $res->assertSee('data-role="po-created-range-clear"', false); + + // back 必须保留且不应被 escape 成 &back + $res->assertSee('back=%2Fadmin', false); + $res->assertDontSee('&back=', false); + + // 应保留原有筛选上下文(例如 payment_status=paid) + $res->assertSee('payment_status=paid', false); + } +}