fixture.json

 1{
 2  "name": "Vite 8 + React + Radix Dialog (portal)",
 3  "config": {
 4    "files": ["index.html"],
 5    "insertBefore": "</body>",
 6    "commentSyntax": "html"
 7  },
 8  "sourceFiles": ["index.html", "src/App.jsx", "src/main.jsx", "src/styles.css", "vite.config.js"],
 9  "generatedFiles": [],
10  "wrapCases": [
11    {
12      "name": "wraps lightbox heading inside Radix portal",
13      "args": { "classes": "hero-title", "tag": "h1" },
14      "expectedFile": "src/App.jsx"
15    }
16  ],
17  "runtime": {
18    "styling": "plain-css",
19    "install": ["npm", "install", "--no-audit", "--no-fund", "--loglevel=error"],
20    "devCommand": ["npx", "vite", "--host", "127.0.0.1"],
21    "readyPattern": "Local:\\s+https?://[^:]+:(\\d+)",
22    "readyTimeoutMs": 120000,
23    "preActions": [
24      { "type": "click", "selector": "[data-testid='open-dialog']" },
25      { "type": "wait",  "selector": "h1.hero-title" }
26    ],
27    "reloadProbe": {
28      "preActions": [
29        { "type": "click", "selector": "[data-testid='open-dialog']" },
30        { "type": "wait",  "selector": "h1.hero-title" }
31      ],
32      "expectSelector": "h1.hero-title"
33    },
34    "probe": {
35      "expectLiveInit": true,
36      "expectConsoleClean": true
37    }
38  }
39}