平台订单创建页:去订阅管理选择订阅的 back 保持 require_subscription=1 并新增测试

This commit is contained in:
萝卜
2026-03-15 04:33:45 +00:00
parent 90bb9259d8
commit c75e7ad7d6
2 changed files with 51 additions and 1 deletions

View File

@@ -0,0 +1,41 @@
<?php
namespace Tests\Feature;
use Illuminate\Foundation\Testing\RefreshDatabase;
use Tests\TestCase;
class AdminPlatformOrderCreateRequireSubscriptionFlagJumpBackShouldIncludeRequireSubscriptionTest extends TestCase
{
use RefreshDatabase;
protected function loginAsPlatformAdmin(): void
{
$this->seed();
$this->post('/admin/login', [
'email' => 'platform.admin@demo.local',
'password' => 'Platform@123456',
])->assertRedirect('/admin');
}
public function test_jump_to_subscriptions_link_should_carry_back_with_require_subscription_flag_when_no_query(): void
{
$this->loginAsPlatformAdmin();
// 模拟“校验失败回填后”回到 create 页URL 不带 require_subscription query但 old input 仍有 require_subscription=1
// 通过 withSession 注入 old input
$res = $this->withSession([
'_old_input' => [
'require_subscription' => '1',
],
])->get('/admin/platform-orders/create');
$res->assertOk();
// 关键:跳转订阅管理的链接应带 back且 back 中应包含 require_subscription=1
// 这样用户从订阅管理选中订阅再回来,治理口径不会丢。
$res->assertSee('去订阅管理选择订阅', false);
$res->assertSee('back=%2Fadmin%2Fplatform-orders%2Fcreate%3Frequire_subscription%3D1', false);
}
}