What a mess
This commit is contained in:
43
tests/set_test_user_stamina.py
Normal file
43
tests/set_test_user_stamina.py
Normal file
@@ -0,0 +1,43 @@
|
||||
#!/usr/bin/env python3
|
||||
"""
|
||||
Script to set high stamina for load test users
|
||||
Run this inside the container after creating test users
|
||||
"""
|
||||
import asyncio
|
||||
import sys
|
||||
import os
|
||||
|
||||
# Add parent directory to path
|
||||
sys.path.insert(0, '/app')
|
||||
|
||||
from api import database as db
|
||||
|
||||
async def set_test_user_stamina(stamina: int = 100000):
|
||||
"""Set high stamina for all loadtest users"""
|
||||
async with db.DatabaseSession() as session:
|
||||
from sqlalchemy import select, update
|
||||
|
||||
# Get all loadtest users
|
||||
stmt = select(db.players).where(db.players.c.username.like('loadtest_user_%'))
|
||||
result = await session.execute(stmt)
|
||||
users = result.all()
|
||||
|
||||
print(f"Found {len(users)} loadtest users")
|
||||
|
||||
if not users:
|
||||
print("No loadtest users found!")
|
||||
return
|
||||
|
||||
# Update stamina for all test users
|
||||
stmt = update(db.players).where(
|
||||
db.players.c.username.like('loadtest_user_%')
|
||||
).values(stamina=stamina, max_stamina=stamina)
|
||||
|
||||
await session.execute(stmt)
|
||||
await session.commit()
|
||||
|
||||
print(f"Updated stamina to {stamina} for all loadtest users")
|
||||
|
||||
if __name__ == "__main__":
|
||||
stamina_value = int(sys.argv[1]) if len(sys.argv) > 1 else 100000
|
||||
asyncio.run(set_test_user_stamina(stamina_value))
|
||||
Reference in New Issue
Block a user