feat: Next.js + Socket.IO 3-mode game (Skribbl, Gartic, Color)
This commit is contained in:
@@ -0,0 +1,90 @@
|
||||
{
|
||||
"baseUrl": "http://localhost:3000",
|
||||
"viewports": {
|
||||
"mobile": {"width": 375, "height": 812},
|
||||
"tablet": {"width": 768, "height": 1024},
|
||||
"desktop": {"width": 1440, "height": 900}
|
||||
},
|
||||
"routes": [
|
||||
{
|
||||
"path": "/",
|
||||
"name": "landing",
|
||||
"selectors": [
|
||||
"[data-testid=create-room-cta]",
|
||||
"[data-testid=join-room-cta]",
|
||||
"[data-testid=mode-card-skribbl]",
|
||||
"[data-testid=mode-card-gartic]",
|
||||
"[data-testid=mode-card-color]"
|
||||
],
|
||||
"actions": []
|
||||
},
|
||||
{
|
||||
"path": "/create",
|
||||
"name": "create-room",
|
||||
"selectors": [
|
||||
"[data-testid=nickname-input]",
|
||||
"[data-testid=mode-skribbl]",
|
||||
"[data-testid=mode-gartic]",
|
||||
"[data-testid=mode-color]",
|
||||
"[data-testid=create-submit]"
|
||||
],
|
||||
"actions": [
|
||||
{"type": "fill", "selector": "[data-testid=nickname-input]", "value": "TestUser"},
|
||||
{"type": "click", "selector": "[data-testid=mode-skribbl]"}
|
||||
]
|
||||
},
|
||||
{
|
||||
"path": "/join",
|
||||
"name": "join-room",
|
||||
"selectors": [
|
||||
"[data-testid=room-code-input]",
|
||||
"[data-testid=nickname-input]",
|
||||
"[data-testid=join-submit]"
|
||||
],
|
||||
"actions": [
|
||||
{"type": "fill", "selector": "[data-testid=room-code-input]", "value": "ABC123"},
|
||||
{"type": "fill", "selector": "[data-testid=nickname-input]", "value": "Tester"}
|
||||
]
|
||||
},
|
||||
{
|
||||
"path": "/room/TESTRM",
|
||||
"name": "lobby",
|
||||
"selectors": [
|
||||
"[data-testid=room-pill]",
|
||||
"[data-testid=panel-players]",
|
||||
"[data-testid=room-code]"
|
||||
],
|
||||
"actions": [],
|
||||
"note": "Will redirect to /join?code=TESTRM unless a session exists. Test with a real created room."
|
||||
},
|
||||
{
|
||||
"path": "/room/TESTRM/play",
|
||||
"name": "play",
|
||||
"selectors": [
|
||||
"[data-testid=room-pill]"
|
||||
],
|
||||
"actions": [],
|
||||
"note": "Requires an active game session."
|
||||
},
|
||||
{
|
||||
"path": "/room/TESTRM/results",
|
||||
"name": "results",
|
||||
"selectors": [
|
||||
"[data-testid=scoreboard-final]"
|
||||
],
|
||||
"actions": [],
|
||||
"note": "Visible after a Skribbl/Color game finishes."
|
||||
},
|
||||
{
|
||||
"path": "/api/health",
|
||||
"name": "health-api",
|
||||
"selectors": [],
|
||||
"actions": [],
|
||||
"note": "GET expects {status:'ok', uptime:N}"
|
||||
}
|
||||
],
|
||||
"apiTests": [
|
||||
{"method": "GET", "path": "/api/health", "expectStatus": 200, "expectJsonContains": {"status": "ok"}},
|
||||
{"method": "GET", "path": "/api/room/NOPE/exists", "expectStatus": 200, "expectJsonContains": {"exists": false}}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user