import pytest from pathlib import Path @pytest.fixture(scope="function") def mock_react_project(tmp_path: Path) -> Path: """ Creates a temporary mock React project structure for testing. """ project_dir = tmp_path / "test-project" project_dir.mkdir() # Create src directory src_dir = project_dir / "src" src_dir.mkdir() # Create components directory components_dir = src_dir / "components" components_dir.mkdir() # Component A (components_dir / "ComponentA.jsx").write_text(""" import React from 'react'; import './ComponentA.css'; const ComponentA = () => { return
Component A
; }; export default ComponentA; """) (components_dir / "ComponentA.css").write_text(""" .component-a { color: blue; } """) # Component B (components_dir / "ComponentB.tsx").write_text(""" import React from 'react'; import ComponentA from './ComponentA'; const ComponentB = () => { return (
); }; export default ComponentB; """) # App.js (src_dir / "App.js").write_text(""" import React from 'react'; import ComponentB from './components/ComponentB'; function App() { return (
); } export default App; """) # package.json (project_dir / "package.json").write_text(""" { "name": "test-project", "version": "0.1.0", "private": true, "dependencies": { "react": "^18.0.0" } } """) return project_dir