feat: 增强环境配置与开发服务,支持局域网访问及币种管理
This commit is contained in:
@@ -1,16 +1,20 @@
|
||||
<?php
|
||||
|
||||
use App\Models\AuditLog;
|
||||
use App\Models\AdminUser;
|
||||
use App\Models\Player;
|
||||
use App\Models\PlayerWallet;
|
||||
use App\Models\AuditLog;
|
||||
use App\Models\AdminRole;
|
||||
use App\Services\AuditLogger;
|
||||
use App\Models\AdminUser;
|
||||
use App\Models\PlayerWallet;
|
||||
use Database\Seeders\CurrencySeeder;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Foundation\Testing\RefreshDatabase;
|
||||
|
||||
uses(RefreshDatabase::class);
|
||||
|
||||
beforeEach(function (): void {
|
||||
$this->seed(CurrencySeeder::class);
|
||||
});
|
||||
|
||||
function playerManageAdminToken(): string
|
||||
{
|
||||
$admin = AdminUser::query()->create([
|
||||
@@ -180,3 +184,34 @@ test('player manage permission gates write and freeze APIs separately from view
|
||||
->getJson('/api/v1/admin/players/'.$player->id.'/ticket-items')
|
||||
->assertOk();
|
||||
});
|
||||
|
||||
test('admin can update player default currency and validation rejects unknown code', function (): void {
|
||||
$player = Player::query()->create([
|
||||
'site_code' => 'main',
|
||||
'site_player_id' => 'currency-1',
|
||||
'username' => 'currency_user',
|
||||
'nickname' => 'Currency',
|
||||
'default_currency' => 'NPR',
|
||||
'status' => 0,
|
||||
]);
|
||||
|
||||
$token = playerManageAdminToken();
|
||||
|
||||
$this->withHeader('Authorization', 'Bearer '.$token)
|
||||
->putJson('/api/v1/admin/players/'.$player->id, [
|
||||
'default_currency' => 'usd',
|
||||
])
|
||||
->assertOk()
|
||||
->assertJsonPath('data.default_currency', 'USD');
|
||||
|
||||
$this->assertDatabaseHas('players', [
|
||||
'id' => $player->id,
|
||||
'default_currency' => 'USD',
|
||||
]);
|
||||
|
||||
$this->withHeader('Authorization', 'Bearer '.$token)
|
||||
->putJson('/api/v1/admin/players/'.$player->id, [
|
||||
'default_currency' => 'ABC',
|
||||
])
|
||||
->assertStatus(422);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user