diff --git a/.gitea/workflows/docker.yaml b/.gitea/workflows/docker.yaml index 619750a..41a9811 100644 --- a/.gitea/workflows/docker.yaml +++ b/.gitea/workflows/docker.yaml @@ -14,7 +14,7 @@ jobs: - name: Install dependencies run: cd backend && npm ci - name: Run tests - run: cd backend && npm test + run: cd backend && npm test -- --run --reporter=basic test-frontend: runs-on: ubuntu-latest @@ -23,7 +23,7 @@ jobs: - name: Install dependencies run: cd frontend && npm ci - name: Run tests - run: cd frontend && npm test + run: cd frontend && npm test -- --run --reporter=basic build-backend: needs: [ test-backend, test-frontend ] diff --git a/frontend/src/views/PublicView.jsx b/frontend/src/views/PublicView.jsx index 3fd76d2..a323aff 100644 --- a/frontend/src/views/PublicView.jsx +++ b/frontend/src/views/PublicView.jsx @@ -14,9 +14,11 @@ function PublicView({ screen: screenProp, onScreenChange, }) { - // ponytail: screen state lifted to App.jsx so BottomNav can switch directly. - const screen = screenProp ?? 'home'; - const setScreen = onScreenChange ?? (() => {}); + // ponytail: uncontrolled by default (own state); controlled when App.jsx passes props + // so BottomNav can drive the inner screen directly. No-op fallback breaks tests. + const [internalScreen, setInternalScreen] = useState('home'); + const screen = screenProp ?? internalScreen; + const setScreen = onScreenChange ?? setInternalScreen; const [searchQuery, setSearchQuery] = useState(''); const [medicines, setMedicines] = useState([]);