Skip to content

Feature/pod0 mock data and controller#23

Open
AJ-ing wants to merge 3 commits intodevelopfrom
feature/pod0-mock-data-and-controller
Open

Feature/pod0 mock data and controller#23
AJ-ing wants to merge 3 commits intodevelopfrom
feature/pod0-mock-data-and-controller

Conversation

@AJ-ing
Copy link
Copy Markdown
Owner

@AJ-ing AJ-ing commented Apr 18, 2026

📋 Description

What

Pushes the two remaining POD 0 Week 1 deliverables:

  • src/controller.py — both controllers, interfaces.md compliant
  • src/utils/mock_data.py — shared test fixtures

Unblocks

  • POD 2 (Laural, Dev) — can now write unit tests against real interface
  • POD 3 (Pranav) — can import MOCK_VEHICLES and MOCK_SNAPSHOT
  • POD 5 (Medhansh) — can set up conftest.py with shared fixtures

How to use mock_data in your tests

from src.utils.mock_data import MOCK_VEHICLES, MOCK_QUEUES, MOCK_SIGNAL, MOCK_SNAPSHOT

Interface reminder

controller.tick(dt) # call every frame
signal = controller.get_signal(MOCK_QUEUES) # returns 'N','S','E','W'

🎯 Related Issues

  • Closes #
  • Refs #

🧩 Pod & Component

  • Pod: Pod X - [Component Name]
  • Component: (e.g., Vehicle Engine, Fixed Controller, Metrics Calculator)
  • Owner: @username

✨ Changes Made

🧪 Testing Done

  • Unit tests written and passing
  • Integration tests passing
  • Manual testing completed
  • Performance tested (if applicable)

Test Coverage:

  • Previous coverage: XX%
  • New coverage: XX%
  • Target: 80%+

Test Commands Run:

pytest tests/unit/test_your_module.py -v
pytest --cov=src tests/

📸 Screenshots/Demos

📝 Documentation

  • Docstrings added/updated
  • README updated (if needed)
  • API documentation updated
  • User manual updated (if needed)
  • Code comments added for complex logic

✅ Checklist

Code Quality:

  • Code follows PEP 8 style guide
  • Ran black src/ for formatting
  • Ran pylint src/ and addressed issues
  • No new linting warnings introduced
  • Added type hints where appropriate

Testing:

  • All unit tests pass locally
  • All integration tests pass locally
  • Test coverage is 80%+ for new code
  • No existing tests broken

Integration:

  • Merged latest develop into this branch
  • No merge conflicts
  • CI checks passing
  • Tested integration with dependent components

Requirements:

  • Meets functional requirement(s): FR-XX
  • Meets non-functional requirement(s): NFR-XX
  • Acceptance criteria met

Documentation:

  • All public functions have docstrings
  • Complex logic has comments
  • README updated if needed
  • API changes documented

🔄 Breaking Changes

  • Yes - see details below
  • No

If yes, describe:

🚀 Deployment Notes

👥 Reviewers

@AJ-ing @medhanshgupta2024

Pod Lead Review Required: @[pod-lead-username]

💬 Additional Context


📊 Metrics (Auto-populated by CI)

Code Changes:

  • Files changed:
  • Lines added:
  • Lines deleted:

Performance Impact:

  • Benchmarks run: ⏱️ (if applicable)
  • Memory usage: 🧠 (if applicable)

⚠️ Reviewer Notes

For Reviewers - Please Check:

  1. Code quality and style
  2. Test coverage and quality
  3. Documentation completeness
  4. No obvious bugs or edge cases
  5. Meets requirements and acceptance criteria
  6. Doesn't break existing functionality

Review Turnaround Time: Please review within 24 hours 🙏

AJ-ing added 3 commits March 23, 2026 22:38
- src/controller.py: AdaptiveController + FixedTimeController
  migrated from Dev's prototype with str direction interface
- src/utils/mock_data.py: shared test fixtures for all PODs
  (MOCK_VEHICLES, MOCK_QUEUES, MOCK_SIGNAL, MOCK_SNAPSHOT,
   MOCK_SIM_STATE, config path constants)
- configs/adaptive_params.json: complete param set with all
  12 keys used by controller rules

Unblocks: POD 2 unit tests, POD 3 metrics tests, POD 5 QA
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: 📅 Todo

Development

Successfully merging this pull request may close these issues.

1 participant